10782 lines
4.3 MiB
Plaintext
10782 lines
4.3 MiB
Plaintext
|
|
globalThis.websiteBundle = function() {
|
|
return `
|
|
(function() {
|
|
const exports = {};
|
|
const module = { exports };
|
|
${"var mi=Object.create;var kt=Object.defineProperty,gi=Object.defineProperties,hi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,bi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,yi=Object.getPrototypeOf,Yn=Object.prototype.hasOwnProperty,Hr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?kt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,O=(e,t)=>{for(var n in t||(t={}))Yn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))Hr.call(t,n)&&$r(e,n,t[n]);return e},L=(e,t)=>gi(e,xi(t));var Wn=(e,t)=>{var n={};for(var o in e)Yn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&Hr.call(e,o)&&(n[o]=e[o]);return n};var Ge=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vi=(e,t)=>{for(var n in t)kt(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of bi(t))!Yn.call(e,a)&&a!==n&&kt(e,a,{get:()=>t[a],enumerable:!(o=hi(t,a))||o.enumerable});return e};var K=(e,t,n)=>(n=e!=null?mi(yi(e)):{},qr(t||!e||!e.__esModule?kt(n,\"default\",{value:e,enumerable:!0}):n,e)),wi=e=>qr(kt({},\"__esModule\",{value:!0}),e);var ee=Ge((Gd,zr)=>{zr.exports=window.React});var Xn=Ge((Vd,Gr)=>{Gr.exports=window.ReactDOM});var jr=Ge(Kn=>{\"use strict\";var Vr=Xn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var jd});var Yr=Ge((Yd,Ur)=>{Ur.exports=window.antd});var Xr=Ge((Wd,Wr)=>{Wr.exports=window.axios});var Zr=Ge((Xd,Kr)=>{Kr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o<e.rangeCount;o++)n.push(e.getRangeAt(o));switch(t.tagName.toUpperCase()){case\"INPUT\":case\"TEXTAREA\":t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type===\"Caret\"&&e.removeAllRanges(),e.rangeCount||n.forEach(function(a){e.addRange(a)}),t&&t.focus()}}});var Rr=Ge((Kd,Qr)=>{\"use strict\";var Ci=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Si=\"Copy to clipboard: #{key}, Enter\";function Oi(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function ki(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=Ci(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Oi(\"message\"in t?t.message:Si),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=ki});var lo=Ge((vu,Rt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;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 Rt<\"u\"&&Rt.exports?(t.default=t,Rt.exports=t):typeof define==\"function\"&&typeof define.amd==\"object\"&&define.amd?define(\"classnames\",[],function(){return t}):window.classNames=t})()});var qd={};vi(qd,{renderClient:()=>Hd});module.exports=wi(qd);var r=K(ee(),1),si=K(jr(),1),s=K(Yr(),1),yt=K(Xr(),1),Pr=K(Rr(),1);var eo=K(ee()),Ti=(0,eo.createContext)({}),Zt=Ti;function Z(){return Z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},Z.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 Zn(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function ro(e,t){if(e){if(typeof e==\"string\")return Zn(e,t);var n={}.toString.call(e).slice(8,-1);return n===\"Object\"&&e.constructor&&(n=e.constructor.name),n===\"Map\"||n===\"Set\"?Array.from(e):n===\"Arguments\"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Zn(e,t):void 0}}function oo(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}function Jt(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 oe(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 Qt(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 Ke=K(ee()),ra=K(lo());var ae=Math.round;function Jn(e,t){let n=e.replace(/^[^(]*\\((.*)/,\"$1\").replace(/\\).*/,\"\").match(/\\d*\\.?\\d+%?/g)||[],o=n.map(a=>parseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function Tt(e,t){let n=t||255;return e>n?n:e<0?0:e}var We=class e{constructor(t){oe(this,\"isValid\",!0),oe(this,\"r\",0),oe(this,\"g\",0),oe(this,\"b\",0),oe(this,\"a\",1),oe(this,\"_h\",void 0),oe(this,\"_s\",void 0),oe(this,\"_l\",void 0),oe(this,\"_v\",void 0),oe(this,\"_max\",void 0),oe(this,\"_min\",void 0),oe(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=Tt(t.r),this.g=Tt(t.g),this.b=Tt(t.b),this.a=typeof t.a==\"number\"?Tt(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=ae(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g<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:ae(i(\"r\")),g:ae(i(\"g\")),b:ae(i(\"b\")),a:ae(i(\"a\")*100)/100};return this._c(l)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),o=this.a+n.a*(1-this.a),a=i=>ae((this[i]*this.a+n[i]*n.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=ae(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=ae(this.getSaturation()*100),o=ae(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,o){let a=this.clone();return a[t]=Tt(n,o),a}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=ae(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=ae((i+d)*255),this.g=ae((l+d)*255),this.b=ae((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=ae(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=ae(o*(1-n)*255),m=ae(o*(1-n*c)*255),d=ae(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Jn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Jn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Jn(t,(o,a)=>a.includes(\"%\")?ae(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var en=2,co=.16,Fi=.05,Ei=.05,Ii=.15,go=5,ho=4,Ni=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-en*t:Math.round(e.h)+en*t:o=n?Math.round(e.h)+en*t:Math.round(e.h)-en*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===ho?o=e.s+co:o=e.s+Fi*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Ii*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function tn(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new We(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new We({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=ho;u+=1){var c=new We({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ni.map(function(f){var m=f.index,d=f.amount;return new We(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var xo=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];xo.primary=xo[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var nn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];nn.primary=nn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Fo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Fo.primary=Fo[5];var Eo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Eo.primary=Eo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var No=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];No.primary=No[5];var Do=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Do.primary=Do[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Po=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Po.primary=Po[5];var Mo=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Mo.primary=Mo[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var Ho=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];Ho.primary=Ho[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var zo=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];zo.primary=zo[5];function Go(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function xe(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Go(Object(n),!0).forEach(function(o){oe(e,o,n[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Go(Object(n)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(n,o))})}return e}var ta=K(ee());function Qn(){return!!(typeof window<\"u\"&&window.document&&window.document.createElement)}function Rn(e,t){if(!e)return!1;if(e.contains)return e.contains(t);for(var n=t;n;){if(n===e)return!0;n=n.parentNode}return!1}var Vo=\"data-rc-order\",jo=\"data-rc-priority\",Di=\"rc-util-key\",er=new Map;function Uo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Di}function tr(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Ai(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function nr(e){return Array.from((er.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Yo(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Qn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Ai(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(jo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=tr(t),m=f.firstChild;if(o){if(u){var d=(t.styles||nr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(jo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function _i(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=tr(t);return(t.styles||nr(n)).find(function(o){return o.getAttribute(Uo(t))===e})}function Pi(e,t){var n=er.get(e);if(!n||!Rn(document,n)){var o=Yo(\"\",t),a=o.parentNode;er.set(e,a),e.removeChild(o)}}function Wo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=tr(n),a=nr(o),i=xe(xe({},n),{},{styles:a});Pi(o,i);var l=_i(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Yo(e,i);return m.setAttribute(Uo(i),t),m}function Xo(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Xo(e)instanceof ShadowRoot}function Ko(e){return Mi(e)?Xo(e):null}var rr={},Li=[],Bi=function(t){Li.push(t)};function $i(e,t){if(0)var n}function Hi(e,t){if(0)var n}function qi(){rr={}}function Zo(e,t,n){!t&&!rr[n]&&(e(!1,n),rr[n]=!0)}function rn(e,t){Zo($i,e,t)}function zi(e,t){Zo(Hi,e,t)}rn.preMessage=Bi;rn.resetWarned=qi;rn.noteOnce=zi;var Jo=rn;var Xe=K(ee());function Gi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function or(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Gi(n)]=o}return t},{})}function on(e,t,n){return n?Xe.default.createElement(e.tag,xe(xe({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return on(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Xe.default.createElement(e.tag,xe({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return on(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function ar(e){return tn(e)[0]}function an(e){return e?Array.isArray(e)?e:[e]:[]}var Vi=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",ea=function(t){var n=(0,Xe.useContext)(Zt),o=n.csp,a=n.prefixCls,i=n.layer,l=Vi;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Xe.useEffect)(function(){var u=t.current,c=Ko(u);Wo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var ji=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Ft={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Ft.primaryColor=t,Ft.secondaryColor=n||ar(t),Ft.calculated=!!n}function Yi(){return xe({},Ft)}var sn=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Qt(t,ji),f=ta.useRef(),m=Ft;if(l&&(m={primaryColor:l,secondaryColor:u||ar(l)}),ea(f),Ro(or(n),\"icon should be icon definiton, but got \".concat(n)),!or(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=xe(xe({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),on(d.icon,\"svg-\".concat(d.name),xe(xe({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};sn.displayName=\"IconReact\";sn.getTwoToneColors=Yi;sn.setTwoToneColors=Ui;var Et=sn;function ir(e){var t=an(e),n=Jt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Wi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ir(nn.primary);var ln=Ke.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Qt(e,Wi),m=Ke.useContext(Zt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,w=(0,ra.default)(p,g,oe(oe({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),v=l;v===void 0&&u&&(v=-1);var S=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=an(c),y=Jt(E,2),I=y[0],A=y[1];return Ke.createElement(\"span\",Z({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:v,onClick:u,className:w}),Ke.createElement(Et,{icon:o,primaryColor:I,secondaryColor:A,style:S}))});ln.displayName=\"AntdIcon\";ln.getTwoToneColor=na;ln.setTwoToneColor=ir;var Q=ln;var dn=K(ee());var Xi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},oa=Xi;var Ki=function(t,n){return dn.createElement(Q,Z({},t,{ref:n,icon:oa}))},Zi=dn.forwardRef(Ki),un=Zi;var cn=K(ee());var Ji={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},aa=Ji;var Qi=function(t,n){return cn.createElement(Q,Z({},t,{ref:n,icon:aa}))},Ri=cn.forwardRef(Qi),sr=Ri;var fn=K(ee());var es={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},ia=es;var ts=function(t,n){return fn.createElement(Q,Z({},t,{ref:n,icon:ia}))},ns=fn.forwardRef(ts),ft=ns;var pn=K(ee());var rs={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=rs;var os=function(t,n){return pn.createElement(Q,Z({},t,{ref:n,icon:sa}))},as=pn.forwardRef(os),lr=as;var mn=K(ee());var is={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=is;var ss=function(t,n){return mn.createElement(Q,Z({},t,{ref:n,icon:la}))},ls=mn.forwardRef(ss),dr=ls;var gn=K(ee());var ds={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ds;var us=function(t,n){return gn.createElement(Q,Z({},t,{ref:n,icon:da}))},cs=gn.forwardRef(us),Ze=cs;var hn=K(ee());var fs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},ua=fs;var ps=function(t,n){return hn.createElement(Q,Z({},t,{ref:n,icon:ua}))},ms=hn.forwardRef(ps),ur=ms;var xn=K(ee());var gs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},ca=gs;var hs=function(t,n){return xn.createElement(Q,Z({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(hs),Je=xs;var bn=K(ee());var bs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},fa=bs;var ys=function(t,n){return bn.createElement(Q,Z({},t,{ref:n,icon:fa}))},vs=bn.forwardRef(ys),be=vs;var yn=K(ee());var ws={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},pa=ws;var Cs=function(t,n){return yn.createElement(Q,Z({},t,{ref:n,icon:pa}))},Ss=yn.forwardRef(Cs),vn=Ss;var wn=K(ee());var Os={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},ma=Os;var ks=function(t,n){return wn.createElement(Q,Z({},t,{ref:n,icon:ma}))},Ts=wn.forwardRef(ks),cr=Ts;var h=K(ee()),rt=K(Xn());var te=K(ee());function ha(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,te.useMemo)(()=>o=>{t.forEach(a=>a(o))},t)}var It=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Qe(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function Cn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Qe(e)?e:Cn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Sn(e){let{Document:t}=pe(e);return e instanceof t}function pt(e){return Qe(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Re(e){return e?Qe(e)?e.document:Cn(e)?Sn(e)?e:pt(e)||pr(e)?e.ownerDocument:document:document:document}var ye=It?te.useLayoutEffect:te.useEffect;function On(e){let t=(0,te.useRef)(e);return ye(()=>{t.current=e}),(0,te.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];return t.current==null?void 0:t.current(...o)},[])}function xa(){let e=(0,te.useRef)(null),t=(0,te.useCallback)((o,a)=>{e.current=setInterval(o,a)},[]),n=(0,te.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function mt(e,t){t===void 0&&(t=[e]);let n=(0,te.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function gt(e,t){let n=(0,te.useRef)();return(0,te.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function Nt(e){let t=On(e),n=(0,te.useRef)(null),o=(0,te.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function kn(e){let t=(0,te.useRef)();return(0,te.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function et(e,t){return(0,te.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<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},O({},t))}}var tt=ba(1),ht=ba(-1);function Fs(e){return\"clientX\"in e&&\"clientY\"in e}function Dt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function At(e){if(Es(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Fs(e)?{x:e.clientX,y:e.clientY}:null}var Ve=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var nt=K(ee()),Is={display:\"none\"};function va(e){let{id:t,value:n}=e;return nt.default.createElement(\"div\",{id:t,style:Is},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return nt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,nt.useState)(\"\");return{announce:(0,nt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,h.createContext)(null);function Ns(e){let t=(0,h.useContext)(_a);(0,h.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of <DndContext>\");return t(e)},[e,t])}function Ds(){let[e]=(0,h.useState)(()=>new Set),t=(0,h.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,h.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var As={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},_s={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function Ps(e){let{announcements:t=_s,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=As}=e,{announce:i,announcement:l}=Ca(),u=et(\"DndLiveRegion\"),[c,f]=(0,h.useState)(!1);if((0,h.useEffect)(()=>{f(!0)},[]),Ns((0,h.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=h.default.createElement(h.default.Fragment,null,h.default.createElement(va,{id:o,value:a.draggable}),h.default.createElement(wa,{id:u,announcement:l}));return n?(0,rt.createPortal)(m,n):m}var re;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(re||(re={}));function Fn(){}function Bt(e,t){return(0,h.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,h.useMemo)(()=>[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Pa(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ls(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o<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 Bs=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:o}=e,a=[];for(let i of o){let{id:l}=i,u=n.get(l);if(u){let c=Ls(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function $s(e,t,n){return L(O({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Ma(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function Hs(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;i<o;i++)a[i-1]=arguments[i];return a.reduce((l,u)=>L(O({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),O({},n))}}var qs=Hs(1);function zs(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Gs(e,t,n){let o=zs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var Vs={ignoreTransform:!1};function st(e,t){t===void 0&&(t=Vs);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Gs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return st(e,{ignoreTransform:!0})}function js(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ys(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function Nn(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Sn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!pt(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ys(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=Nn(e,1);return t!=null?t:null}function mr(e){return!It||!e?null:Qe(e)?e:Cn(e)?Sn(e)||e===Re(e).scrollingElement?window:pt(e)?e:null:null}function Ba(e){return Qe(e)?e.scrollX:e.scrollLeft}function $a(e){return Qe(e)?e.scrollY:e.scrollTop}function xr(e){return{x:Ba(e),y:$a(e)}}var ie;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ie||(ie={}));function Ha(e){return!It||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=Ha(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Ws={x:.2,y:.2};function Xs(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Ws);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},w={x:0,y:0},v={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+v.height?(p.y=ie.Backward,w.y=o*Math.abs((t.top+v.height-i)/v.height)):!m&&c>=t.bottom-v.height&&(p.y=ie.Forward,w.y=o*Math.abs((t.bottom-v.height-c)/v.height)),!g&&u>=t.right-v.width?(p.x=ie.Forward,w.x=o*Math.abs((t.right-v.width-u)/v.width)):!d&&l<=t.left+v.width&&(p.x=ie.Backward,w.x=o*Math.abs((t.left+v.width-l)/v.width)),{direction:p,speed:w}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function za(e){return e.reduce((t,n)=>tt(t,xr(n)),Te)}function Zs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Js(e){return e.reduce((t,n)=>t+$a(n),0)}function Qs(e,t){if(t===void 0&&(t=st),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Rs=[[\"x\",[\"left\",\"right\"],Zs],[\"y\",[\"top\",\"bottom\"],Js]],Pt=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let o=Nn(n),a=za(o);this.rect=O({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Rs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},ot=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function el(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Re(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function tl(e){e.stopPropagation()}var W;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(W||(W={}));var Ga={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},nl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return L(O({},n),{x:n.x+25});case W.Left:return L(O({},n),{x:n.x-25});case W.Down:return L(O({},n),{y:n.y+25});case W.Up:return L(O({},n),{y:n.y-25})}},En=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new ot(Re(n)),this.windowListeners=new ot(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Qs(o),n(Te)}handleKeyDown(t){if(Dt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=Ga,coordinateGetter:l=nl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=ht(d,m),p={x:0,y:0},{scrollableAncestors:w}=o.current;for(let v of w){let S=t.code,{isTop:E,isRight:y,isLeft:I,isBottom:A,maxScroll:B,minScroll:V}=qa(v),H=Ks(v),z={x:Math.min(S===W.Right?H.right-H.width/2:H.right,Math.max(S===W.Right?H.left:H.left+H.width/2,d.x)),y:Math.min(S===W.Down?H.bottom-H.height/2:H.bottom,Math.max(S===W.Down?H.top:H.top+H.height/2,d.y))},x=S===W.Right&&!y||S===W.Left&&!I,C=S===W.Down&&!A||S===W.Up&&!E;if(x&&z.x!==d.x){let M=v.scrollLeft+g.x,q=S===W.Right&&M<=B.x||S===W.Left&&M>=V.x;if(q&&!g.y){v.scrollTo({left:M,behavior:u});return}q?p.x=v.scrollLeft-M:p.x=S===W.Right?v.scrollLeft-B.x:v.scrollLeft-V.x,p.x&&v.scrollBy({left:-p.x,behavior:u});break}else if(C&&z.y!==d.y){let M=v.scrollTop+g.y,q=S===W.Down&&M<=B.y||S===W.Up&&M>=V.y;if(q&&!g.x){v.scrollTo({top:M,behavior:u});return}q?p.y=v.scrollTop-M:p.y=S===W.Down?v.scrollTop-B.y:v.scrollTop-V.y,p.y&&v.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,tt(ht(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=Ga,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=el(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Re(l),this.documentListeners=new ot(this.document),this.listeners=new ot(o),this.windowListeners=new ot(pe(l)),this.initialCoordinates=(a=At(i))!=null?a:Te,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:o}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,tl,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=At(t))!=null?n:Te,f=ht(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},rl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},it=class extends Mt{constructor(t){let{event:n}=t,o=Re(n.target);super(t,rl,o)}};it.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var ol={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,ol,Re(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var hr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,hr)}static setup(){return window.addEventListener(hr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(hr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var _t;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(_t||(_t={}));var In;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(In||(In={}));function al(e){let{acceleration:t,activator:n=_t.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=In.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=sl({delta:d,disabled:!i}),[w,v]=xa(),S=(0,h.useRef)({x:0,y:0}),E=(0,h.useRef)({x:0,y:0}),y=(0,h.useMemo)(()=>{switch(n){case _t.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case _t.DraggableRect:return a}},[n,a,c]),I=(0,h.useRef)(null),A=(0,h.useCallback)(()=>{let V=I.current;if(!V)return;let H=S.current.x*E.current.x,z=S.current.y*E.current.y;V.scrollBy(H,z)},[]),B=(0,h.useMemo)(()=>u===In.TreeOrder?[...f].reverse():f,[u,f]);(0,h.useEffect)(()=>{if(!i||!f.length||!y){v();return}for(let V of B){if((o==null?void 0:o(V))===!1)continue;let H=f.indexOf(V),z=m[H];if(!z)continue;let{direction:x,speed:C}=Xs(V,z,y,t,g);for(let M of[\"x\",\"y\"])p[M][x[M]]||(C[M]=0,x[M]=0);if(C.x>0||C.y>0){v(),I.current=V,w(A,l),S.current=C,E.current=x;return}}S.current={x:0,y:0},E.current={x:0,y:0},v()},[t,A,o,v,i,l,JSON.stringify(y),JSON.stringify(p),w,f,B,m,JSON.stringify(g)])}var il={x:{[ie.Backward]:!1,[ie.Forward]:!1},y:{[ie.Backward]:!1,[ie.Forward]:!1}};function sl(e){let{delta:t,disabled:n}=e,o=kn(t);return gt(a=>{if(n||!o||!a)return il;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ie.Backward]:a.x[ie.Backward]||i.x===-1,[ie.Forward]:a.x[ie.Forward]||i.x===1},y:{[ie.Backward]:a.y[ie.Backward]||i.y===-1,[ie.Forward]:a.y[ie.Forward]||i.y===1}}},[n,t,o])}function ll(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return gt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function dl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Lt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Lt||(Lt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Fa=new Map;function ul(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,h.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,h.useRef)(e),d=S(),g=mt(d),p=(0,h.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(y=>y===null?E:y.concat(E.filter(I=>!y.includes(I))))},[g]),w=(0,h.useRef)(null),v=gt(E=>{if(d&&!n)return Fa;if(!E||E===Fa||m.current!==e||i!=null){let y=new Map;for(let I of e){if(!I)continue;if(i&&i.length>0&&!i.includes(I.id)&&I.rect.current){y.set(I.id,I.rect.current);continue}let A=I.node.current,B=A?new Pt(c(A),A):null;I.rect.current=B,B&&y.set(I.id,B)}return y}return E},[e,i,n,d,c]);return(0,h.useEffect)(()=>{m.current=e},[e]),(0,h.useEffect)(()=>{d||p()},[n,d]),(0,h.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,h.useEffect)(()=>{d||typeof u!=\"number\"||w.current!==null||(w.current=setTimeout(()=>{p(),w.current=null},u))},[u,d,p,...o]),{droppableRects:v,measureDroppableContainers:p,measuringScheduled:i!=null};function S(){switch(f){case Lt.Always:return!1;case Lt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return gt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function cl(e,t){return Va(e,t)}function fl(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Dn(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function pl(e){return new Pt(st(e),e)}function Ea(e,t,n){t===void 0&&(t=pl);let[o,a]=(0,h.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=fl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Dn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function ml(e){let t=Va(e);return Ma(e,t)}var Ia=[];function gl(e){let t=(0,h.useRef)(e),n=gt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:Nn(e):Ia,[e]);return(0,h.useEffect)(()=>{t.current=e},[e]),n}function hl(e){let[t,n]=(0,h.useState)(null),o=(0,h.useRef)(e),a=(0,h.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,xr(l)),new Map(u)):null)},[]);return(0,h.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,xr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,h.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>tt(i,l),Te):za(e):Te,[e,t])}function Na(e,t){t===void 0&&(t=[]);let n=(0,h.useRef)(null);return(0,h.useEffect)(()=>{n.current=null},t),(0,h.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?ht(e,n.current):Te}function xl(e){(0,h.useEffect)(()=>{if(!It)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function bl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function ja(e){return(0,h.useMemo)(()=>e?js(e):null,[e])}var Da=[];function yl(e,t){t===void 0&&(t=st);let[n]=e,o=ja(n?pe(n):null),[a,i]=(0,h.useState)(Da);function l(){i(()=>e.length?e.map(c=>Ha(c)?o:new Pt(t(c),c)):Da)}let u=Dn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function vl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return pt(t)?t:e}function wl(e){let{measure:t}=e,[n,o]=(0,h.useState)(null),a=(0,h.useCallback)(f=>{for(let{target:m}of f)if(pt(m)){o(d=>{let g=t(m);return d?L(O({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Dn({callback:a}),l=(0,h.useCallback)(f=>{let m=vl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=Nt(l);return(0,h.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var Cl=[{sensor:it,options:{}},{sensor:En,options:{}}],Sl={current:{}},Tn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Lt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:st}},at=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Ol={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new at,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Fn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Tn,measureDroppableContainers:Fn,windowRect:null,measuringScheduled:!1},kl={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Fn,draggableNodes:new Map,over:null,measureDroppableContainers:Fn},An=(0,h.createContext)(kl),Ua=(0,h.createContext)(Ol);function Tl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new at}}}function Fl(e,t){switch(t.type){case re.DragStart:return L(O({},e),{draggable:L(O({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case re.DragMove:return e.draggable.active==null?e:L(O({},e),{draggable:L(O({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case re.DragEnd:case re.DragCancel:return L(O({},e),{draggable:L(O({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case re.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new at(e.droppable.containers);return a.set(o,n),L(O({},e),{droppable:L(O({},e.droppable),{containers:a})})}case re.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new at(e.droppable.containers);return l.set(n,L(O({},i),{disabled:a})),L(O({},e),{droppable:L(O({},e.droppable),{containers:l})})}case re.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new at(e.droppable.containers);return i.delete(n),L(O({},e),{droppable:L(O({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,h.useContext)(An),i=kn(o),l=kn(n==null?void 0:n.id);return(0,h.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Dt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Il(e,t){let a=t,{transform:n}=a,o=Wn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(O({transform:i},o)),n):n}function Nl(e){return(0,h.useMemo)(()=>({draggable:O(O({},Tn.draggable),e==null?void 0:e.draggable),droppable:O(O({},Tn.droppable),e==null?void 0:e.droppable),dragOverlay:O(O({},Tn.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Dl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,h.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Ma(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ya=(0,h.createContext)(L(O({},Te),{scaleX:1,scaleY:1})),je;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(je||(je={}));var Cr=(0,h.memo)(function(t){var n,o,a,i;let k=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=Cl,collisionDetection:d=Bs,measuring:g,modifiers:p}=k,w=Wn(k,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),v=(0,h.useReducer)(Fl,void 0,Tl),[S,E]=v,[y,I]=Ds(),[A,B]=(0,h.useState)(je.Uninitialized),V=A===je.Initialized,{draggable:{active:H,nodes:z,translate:x},droppable:{containers:C}}=S,M=H!=null?z.get(H):null,q=(0,h.useRef)({initial:null,translated:null}),_=(0,h.useMemo)(()=>{var N;return H!=null?{id:H,data:(N=M==null?void 0:M.data)!=null?N:Sl,rect:q}:null},[H,M]),j=(0,h.useRef)(null),[we,Ce]=(0,h.useState)(null),[R,Fe]=(0,h.useState)(null),ue=mt(w,Object.values(w)),T=et(\"DndDescribedBy\",l),D=(0,h.useMemo)(()=>C.getEnabled(),[C]),$=Nl(g),{droppableRects:Y,measureDroppableContainers:me,measuringScheduled:Se}=ul(D,{dragging:V,dependencies:[x.x,x.y],config:$.droppable}),de=ll(z,H),Me=(0,h.useMemo)(()=>R?At(R):null,[R]),Oe=b(),ge=cl(de,$.draggable.measure);Dl({activeNode:H!=null?z.get(H):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let G=Ea(de,$.draggable.measure,ge),Ue=Ea(de?de.parentElement:null),he=(0,h.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:Y,draggableNodes:z,draggingNode:null,draggingNodeRect:null,droppableContainers:C,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=C.getNodeFor((n=he.current.over)==null?void 0:n.id),ke=wl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=V?(a=ke.rect)!=null?a:G:null,Gt=!!(ke.nodeRef.current&&ke.rect),Vt=ml(Gt?null:G),vt=ja(Be?pe(Be):null),Ee=gl(V?Le!=null?Le:de:null),dt=yl(Ee),ut=Il(p,{transform:{x:x.x-Vt.x,y:x.y-Vt.y,scaleX:1,scaleY:1},activatorEvent:R,active:_,activeNodeRect:G,containerNodeRect:Ue,draggingNodeRect:_e,over:he.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Ee,scrollableAncestorRects:dt,windowRect:vt}),jt=Me?tt(Me,x):null,Ut=hl(Ee),$n=Na(Ut),Hn=Na(Ut,[G]),$e=tt(ut,$n),He=_e?qs(_e,ut):null,Ye=_&&He?d({active:_,collisionRect:He,droppableRects:Y,droppableContainers:D,pointerCoordinates:jt}):null,Yt=Pa(Ye,\"id\"),[Ie,Wt]=(0,h.useState)(null),qn=Gt?ut:tt(ut,Hn),zn=$s(qn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,G),wt=(0,h.useRef)(null),Xt=(0,h.useCallback)((N,P)=>{let{sensor:U,options:fe}=P;if(j.current==null)return;let X=z.get(j.current);if(!X)return;let se=N.nativeEvent,Ne=new U({active:j.current,activeNode:X,event:se,options:fe,context:he,onAbort(le){if(!z.get(le))return;let{onDragAbort:De}=ue.current,Pe={id:le};De==null||De(Pe),y({type:\"onDragAbort\",event:Pe})},onPending(le,qe,De,Pe){if(!z.get(le))return;let{onDragPending:St}=ue.current,ze={id:le,constraint:qe,initialCoordinates:De,offset:Pe};St==null||St(ze),y({type:\"onDragPending\",event:ze})},onStart(le){let qe=j.current;if(qe==null)return;let De=z.get(qe);if(!De)return;let{onDragStart:Pe}=ue.current,Ct={activatorEvent:se,active:{id:qe,data:De.data,rect:q}};(0,rt.unstable_batchedUpdates)(()=>{Pe==null||Pe(Ct),B(je.Initializing),E({type:re.DragStart,initialCoordinates:le,active:qe}),y({type:\"onDragStart\",event:Ct}),Ce(wt.current),Fe(se)})},onMove(le){E({type:re.DragMove,coordinates:le})},onEnd:ct(re.DragEnd),onCancel:ct(re.DragCancel)});wt.current=Ne;function ct(le){return async function(){let{active:De,collisions:Pe,over:Ct,scrollAdjustedTranslate:St}=he.current,ze=null;if(De&&St){let{cancelDrop:Ot}=ue.current;ze={activatorEvent:se,active:De,collisions:Pe,delta:St,over:Ct},le===re.DragEnd&&typeof Ot==\"function\"&&await Promise.resolve(Ot(ze))&&(le=re.DragCancel)}j.current=null,(0,rt.unstable_batchedUpdates)(()=>{E({type:le}),B(je.Uninitialized),Wt(null),Ce(null),Fe(null),wt.current=null;let Ot=le===re.DragEnd?\"onDragEnd\":\"onDragCancel\";if(ze){let Un=ue.current[Ot];Un==null||Un(ze),y({type:Ot,event:ze})}})}}},[z]),Gn=(0,h.useCallback)((N,P)=>(U,fe)=>{let X=U.nativeEvent,se=z.get(fe);if(j.current!==null||!se||X.dndKit||X.defaultPrevented)return;let Ne={active:se};N(U,P.options,Ne)===!0&&(X.dndKit={capturedBy:P.sensor},j.current=fe,Xt(U,P))},[z,Xt]),ce=dl(m,Gn);xl(m),ye(()=>{G&&A===je.Initializing&&B(je.Initialized)},[G,A]),(0,h.useEffect)(()=>{let{onDragMove:N}=ue.current,{active:P,activatorEvent:U,collisions:fe,over:X}=he.current;if(!P||!U)return;let se={active:P,activatorEvent:U,collisions:fe,delta:{x:$e.x,y:$e.y},over:X};(0,rt.unstable_batchedUpdates)(()=>{N==null||N(se),y({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,h.useEffect)(()=>{let{active:N,activatorEvent:P,collisions:U,droppableContainers:fe,scrollAdjustedTranslate:X}=he.current;if(!N||j.current==null||!P||!X)return;let{onDragOver:se}=ue.current,Ne=fe.get(Yt),ct=Ne&&Ne.rect.current?{id:Ne.id,rect:Ne.rect.current,data:Ne.data,disabled:Ne.disabled}:null,le={active:N,activatorEvent:P,collisions:U,delta:{x:X.x,y:X.y},over:ct};(0,rt.unstable_batchedUpdates)(()=>{Wt(ct),se==null||se(le),y({type:\"onDragOver\",event:le})})},[Yt]),ye(()=>{he.current={activatorEvent:R,active:_,activeNode:de,collisionRect:He,collisions:Ye,droppableRects:Y,draggableNodes:z,draggingNode:Be,draggingNodeRect:_e,droppableContainers:C,over:Ie,scrollableAncestors:Ee,scrollAdjustedTranslate:$e},q.current={initial:_e,translated:He}},[_,de,Ye,He,z,Be,_e,Y,C,Ie,Ee,$e]),al(L(O({},Oe),{delta:x,draggingRect:He,pointerCoordinates:jt,scrollableAncestors:Ee,scrollableAncestorRects:dt}));let Vn=(0,h.useMemo)(()=>({active:_,activeNode:de,activeNodeRect:G,activatorEvent:R,collisions:Ye,containerNodeRect:Ue,dragOverlay:ke,draggableNodes:z,droppableContainers:C,droppableRects:Y,over:Ie,measureDroppableContainers:me,scrollableAncestors:Ee,scrollableAncestorRects:dt,measuringConfiguration:$,measuringScheduled:Se,windowRect:vt}),[_,de,G,R,Ye,Ue,ke,z,C,Y,Ie,me,Ee,dt,$,Se,vt]),jn=(0,h.useMemo)(()=>({activatorEvent:R,activators:ce,active:_,activeNodeRect:G,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:z,over:Ie,measureDroppableContainers:me}),[R,ce,_,G,E,T,z,Ie,me]);return h.default.createElement(_a.Provider,{value:I},h.default.createElement(An.Provider,{value:jn},h.default.createElement(Ua.Provider,{value:Vn},h.default.createElement(Ya.Provider,{value:zn},f)),h.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),h.default.createElement(Ps,L(O({},u),{hiddenTextDescribedById:T})));function b(){let N=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,U=V&&!N&&!P;return typeof c==\"object\"?L(O({},c),{enabled:U}):{enabled:U}}}),Al=(0,h.createContext)(null),Aa=\"button\",_l=\"Draggable\";function Wa(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=et(_l),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,h.useContext)(An),{role:p=Aa,roleDescription:w=\"draggable\",tabIndex:v=0}=a!=null?a:{},S=(c==null?void 0:c.id)===t,E=(0,h.useContext)(S?Ya:Al),[y,I]=Nt(),[A,B]=Nt(),V=bl(l,t),H=mt(n);ye(()=>(d.set(t,{id:t,key:i,node:y,activatorNode:A,data:H}),()=>{let x=d.get(t);x&&x.key===i&&d.delete(t)}),[d,t]);let z=(0,h.useMemo)(()=>({role:p,tabIndex:v,\"aria-disabled\":o,\"aria-pressed\":S&&p===Aa?!0:void 0,\"aria-roledescription\":w,\"aria-describedby\":m.draggable}),[o,p,v,S,w,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:z,isDragging:S,listeners:o?void 0:V,node:y,over:g,setNodeRef:I,setActivatorNodeRef:B,transform:E}}function Xa(){return(0,h.useContext)(Ua)}var Pl=\"Droppable\",Ml={timeout:25};function Ka(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=et(Pl),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,h.useContext)(An),m=(0,h.useRef)({disabled:n}),d=(0,h.useRef)(!1),g=(0,h.useRef)(null),p=(0,h.useRef)(null),{disabled:w,updateMeasurementsFor:v,timeout:S}=O(O({},Ml),a),E=mt(v!=null?v:o),y=(0,h.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},S)},[S]),I=Dn({callback:y,disabled:w||!l}),A=(0,h.useCallback)((z,x)=>{I&&(x&&(I.unobserve(x),d.current=!1),z&&I.observe(z))},[I]),[B,V]=Nt(A),H=mt(t);return(0,h.useEffect)(()=>{!I||!B.current||(I.disconnect(),d.current=!1,I.observe(B.current))},[B,I]),(0,h.useEffect)(()=>(u({type:re.RegisterDroppable,element:{id:o,key:i,disabled:n,node:B,rect:g,data:H}}),()=>u({type:re.UnregisterDroppable,key:i,id:o})),[o]),(0,h.useEffect)(()=>{n!==m.current.disabled&&(u({type:re.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:B,over:c,setNodeRef:V}}var Sr=e=>{let{transform:t}=e;return L(O({},t),{x:0})};var ne=K(ee());function $t(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Ll(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function _n(e){return e!==null&&e>=0}function Bl(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function $l(e){return typeof e==\"boolean\"?{draggable:e,droppable:e}:e}var Za=e=>{let{rects:t,activeIndex:n,overIndex:o,index:a}=e,i=$t(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var Pn={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?O({x:0,y:n<l?f.top+f.height-(u.top+u.height):f.top-u.top},Pn):null}let c=Hl(i,a,n);return a>n&&a<=l?O({x:0,y:-u.height-c},Pn):a<n&&a>=l?O({x:0,y:u.height+c},Pn):O({x:0,y:0},Pn)};function Hl(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?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=ne.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}=Xa(),d=et(Ja,n),g=u.rect!==null,p=(0,ne.useMemo)(()=>o.map(V=>typeof V==\"object\"&&\"id\"in V?V.id:V),[o]),w=l!=null,v=l?p.indexOf(l.id):-1,S=f?p.indexOf(f.id):-1,E=(0,ne.useRef)(p),y=!Bl(p,E.current),I=S!==-1&&v===-1||y,A=$l(i);ye(()=>{y&&w&&m(p)},[y,p,w,m]),(0,ne.useEffect)(()=>{E.current=p},[p]);let B=(0,ne.useMemo)(()=>({activeIndex:v,containerId:d,disabled:A,disableTransforms:I,items:p,overIndex:S,useDragOverlay:g,sortedRects:Ll(p,c),strategy:a}),[v,d,A.draggable,A.droppable,I,p,S,c,g,a]);return ne.default.createElement(Qa.Provider,{value:B},t)}var ql=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return $t(n,o,a).indexOf(t)},zl=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Gl={duration:200,easing:\"ease\"},Ra=\"transform\",Vl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),jl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ne.useState)(null),u=(0,ne.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=st(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ne.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=zl,attributes:n,disabled:o,data:a,getNewIndex:i=ql,id:l,strategy:u,resizeObserverConfig:c,transition:f=Gl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:w,sortedRects:v,overIndex:S,useDragOverlay:E,strategy:y}=(0,ne.useContext)(Qa),I=Yl(o,p),A=m.indexOf(l),B=(0,ne.useMemo)(()=>O({sortable:{containerId:d,index:A,items:m}},a),[d,a,A,m]),V=(0,ne.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:H,node:z,isOver:x,setNodeRef:C}=Ka({id:l,data:B,disabled:I.droppable,resizeObserverConfig:O({updateMeasurementsFor:V},c)}),{active:M,activatorEvent:q,activeNodeRect:_,attributes:j,setNodeRef:we,listeners:Ce,isDragging:R,over:Fe,setActivatorNodeRef:ue,transform:T}=Wa({id:l,data:B,attributes:O(O({},jl),n),disabled:I.draggable}),D=ha(C,we),$=!!M,Y=$&&!w&&_n(g)&&_n(S),me=!E&&R,Se=me&&Y?T:null,de=u!=null?u:y,Me=Y?Se!=null?Se:de({rects:v,activeNodeRect:_,activeIndex:g,overIndex:S,index:A}):null,Oe=_n(g)&&_n(S)?i({id:l,items:m,activeIndex:g,overIndex:S}):A,ge=M==null?void 0:M.id,G=(0,ne.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),Ue=m!==G.current.items,he=t({active:M,containerId:d,isDragging:R,isSorting:$,id:l,index:A,items:m,newIndex:G.current.newIndex,previousItems:G.current.items,previousContainerId:G.current.containerId,transition:f,wasDragging:G.current.activeId!=null}),Le=Ul({disabled:!he,index:A,node:z,rect:H});return(0,ne.useEffect)(()=>{$&&G.current.newIndex!==Oe&&(G.current.newIndex=Oe),d!==G.current.containerId&&(G.current.containerId=d),m!==G.current.items&&(G.current.items=m)},[$,Oe,d,m]),(0,ne.useEffect)(()=>{if(ge===G.current.activeId)return;if(ge!=null&&G.current.activeId==null){G.current.activeId=ge;return}let Be=setTimeout(()=>{G.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:M,activeIndex:g,attributes:j,data:B,rect:H,index:A,newIndex:Oe,items:m,isOver:x,isSorting:$,isDragging:R,listeners:Ce,node:z,overIndex:S,over:Fe,setNodeRef:D,setActivatorNodeRef:ue,setDroppableNodeRef:C,setDraggableNodeRef:we,transform:Le!=null?Le:Me,transition:ke()};function ke(){if(Le||Ue&&G.current.newIndex===A)return Vl;if(!(me&&!Dt(q)||!f)&&($||he))return Ve.Transition.toString(L(O({},f),{property:Ra}))}}function Yl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var zf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-buttons__full {\\n grid-column: 1 / -1;\\n}\\n.auth-source-btn {\\n min-height: 48px;\\n}\\n.auth-source-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 22px;\\n height: 22px;\\n object-fit: contain;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn:disabled {\\n cursor: not-allowed;\\n opacity: 0.62;\\n transform: none;\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 18px;\\n height: 18px;\\n opacity: 0.7;\\n}\\n.anticon.btn-icon {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n width: 18px;\\n height: 18px;\\n font-size: 16px;\\n line-height: 1;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var Ht=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var Fr=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var ni=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAGXElEQVR4nO2bfYgVVRTAf4nIYxAREZNlMBP7UCwjRKbNJHgSVEK6hWaIpamTylK2biYSERGylYlp5KSFVKSVRGxmBY0t0tZjETOxpbbQWqZYFgmRGAZZlv6413WVd8+deW/eQvR+sH8s99xzZ849c865Hw/q1KlTp06d/y3XjNRAQRy5wBxgJnA9MBFwdHMM9ANngW7guO+4f43Ec9XMAEEcAcwFlgELgekZVfQAh4EDKIPk+nyXyN0AQRyNBh4BWoBbc1J7EtgOHPQddyAnnUCOBtAz3gS0kX2209IDtALteXlELgYI4qgBCFCuPhK0A77vuH3VKqraAEEcLUB9pxOr1ZWRfmCZ77hHq1EyqprOQRytBb5g5F8eYBLwVRBHq6tRUrEHBHH0NCowpSUBjgGdwGmgF7ig28YBU4BZwF3AfGBMBt0tvuO+lkF+iIoMEMTRKuDtlOIngV3AId9xL9iEtf5xwBKgmfSZxPcd962UskNkNkAQR/OBEBhtEf0NFbE/rTRiD8ssrwDTLOIDwL2+436dZYxMBgjiaCLwI9BgEX0d2Ow7bpJFvzCugzLCeovoOWB2lioyqwE+RLmmiYvASt9xP8iiN8P4K4C9yPHhCHB/Wq9LnQWCOLoH+8svrtXLA/iO+y7woB7LxH3AQ2l1pvKAII5GAT8gB6RH9QPWnCCOlgPvCSJngBm+40qGAtJ7QBPyy++zvbwXJqO8MJnuhckUL6wuNPiO+z6wWxCZBqxIoyutATYKbZGlHS9MGoFfgF+BP4BOL0ymphzbRCsq05jYqLOIiNUAQRyNBRoFkS2+4/5javTCpAH4nCsXSI3AZ16Y2FKpEZ1hWgSRmcjPDaTzgEFUji1HD2AMetrV3wDGl2meBcxLMb5EO3BcaF9mU2A1gO+4sR6oHG2+4w4K3ZuARUL7BNv4EjrV7RREFto+g7QxYB3QNez/QVQQ2m/q4IXJOFQJbGIAefbS8glqS60cU/WfkVQG8B23H7gDuBNYCtzkO26zZfbbkCvG3aVioTfN+JZni4EOQWSO1D91ENIv+10aWS9M5gFrBZHfgefSjp2CTlQBVI6ZUseq9gPK4YXJGNTukKR7XalYMGaOCjgttF0ndczdAMCzyFY/WCoWvsx5TCnSiZs1uRrAC5Obga2CyN/Ak3mOqZH2GQpSx4oLkavxwmQU9pVaS6lY6Dc16jXHeuBxVIo8Bmz1HdcWLCueyDw9YDVyYXMUIW1qtqFS522oLbLlQKfeh5AoV2hdQow1uRhAl7ttgkgC+KWi2RuDOJoLbCrT5CJnFFDGMmH0OMjPA3Yhz8ILpWLBuHDRp0l7heeZYRl/ttB2VupYtQG8MFmEKnlNnAJetajZhLzcPmPpL3163VLHqgyQotwdBNaUigXjeV4QR9OB5wUd54E3hf4TkFd9XUJb1R6wDfWNmthdKhaMD6AXKnuRU9VmyxHYEsyZp1uX8UYqNoDe5HhCEOlFrgkAVgF3C+3fAvtMjTptNgv9TavYISoygC53paAFlnI3iKPJqK1uEwmwxrLgWoJcdR4Q2oDKPeAZy8AHS8XCEYuOncj7AS/5jvuzqVHvVEmpt8t33FOWZ8hugDzK3SCOFiJvsXcDL1seZQdy/t9h6Q9U5gG7kINWq6XcHYvaJjMxiHJ945a2PpuUToW7gY+E9iEyGcALk0nAAkGkA3jHomYb8szt8R3XuO8QxNEi1HJbotUSO4bI6gHSzKcpdz3k870I2CL0fwz4GHkRd8h3XFv8GSLrarAX5V7lAuCLpWKhx9QxiKM0mWNDuSN0fTi6HTntAvQBGywyV5DJA/TsrkRVZ8M5gj1obUJthZs45DvuFXk7iCOCOGoCfsL+8heBpbbC52oquiDhhclk4GHgWuB74HCpWDB+c0Ec3Yg6Vjd9H+dRZ3l9Wn486oAzywWJlb7j7k8pO0TNb4rqau0b1LUXE3u0zC2ohU0j2a7INPuOK50VGhkJA6xGffu1YAB1NcaWeYzU1AB69v8EJtdAfT/qm++oRkktdoWH00BtXr4ddRWmo1pFtTbAOVR9kBc9wGLggTxuicLIxIAdwFNVqjmBqu1zvyyd27a4QCsqWK3n8u8D0tCNqi8OACf+M9flTehqbh5wO3ADl38wMYg63e3j8g8murIWNHXq1KlTp06dzPwLV0HTVxeqgZgAAAAASUVORK5CYII=\";var ri=\"data:image/x-icon;base64,AAABAAQAEBAAAAAAIABcAgAARgAAACAgAAAAACAACQYAAKICAAAwMAAAAAAgAIUKAACrCAAAAAAAAAAAIACt4wAAMBMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAiNJREFUeJxVU01rFEEQfVXTM7NfyRqJX/iBYkA8BD/uCp48KPgHPHmKB8FcPPkf9Cpe8x8E70EQDxHxJC4SEEUNZs3uzs7OdJdU98zubMM0dE3Xq3qvXtPGE0l7/fxlFEcPpbQdAAwAkd/DchI+QDdybKKJLezOaJg+NSv97IXptLdsls8TRIC/43BdVxwBnVTjpEeW0vbibrrVRSZ043lWEDOLOCIQaaXUAHeuMtoJQAQMfgk+fBMfrzoRAosT5wyIjJYkeHRfNY2Bu5sLgLefHN59dWjFVLVFJBAiIm4wBZiAvAAunyRfaTgBRlNgb18QKVJj1SeuiUr1Kcj544TShfO/TPDnSBDP21/cDwCoDhLEU/XPrhEMB/GyGTCZBSrzrAYK+14kXNCqa13g0gmVM4DtHwh+HIoH07sap5oCVR3UP0oLXFwP/GclMC2CDg9uMsY6ZQGsXW7ELHUkgtN99pWdCx2tdgL3VL2QhGQF9npIU8SKxua5wF9BdJy3rjB2vzjcv864doHw6Ha08IOnQEH5aSE++cyxwF85J1Gg8uyewfoKcGqV8OajxeEEvsgSBSKC2mnwW2BdAK3fQWKAn0OgsMDBGDAqaCWkEZFSiLkVO/r8HfR+UM5N0hxxbIJX1Z2GRUR0c84Q5HXUTh6XkxytWIVadlw95qZXnPq/k1A5zl6Zo2F7u4ecuHrOpQjX76LpuDqi+fqci3G+Mxq2t/8DuWnudTgQ75sAAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAXQSURBVHichVdZqFVVGP7+tdfe5xzv4OWmdY00cUoISgmNLDBEqJegCaTAJ18qkIgCISyLIAqKiPtSkE+FEghB+BBRkUgKiQ3ghbp6UStxSr1e73DO2XutP/61h7POPkP/Hfbaa/qn7x82YR8rvE12ze7JytDoypeJaCesWQvmiAEiEBgtovwf5y/ZuPXwKN1EMiA0oYLTzPz5revnPj4zvq4hvN0VD7w+u8zqyqEg0ls4YbBppofJHe2kEmOfXbfl9J1AQQgKCTZOjlGz8ezJdwcv0tZ9XL1p6kfCgermeK4eK7AGERWy59p2Id8IZYblI25OCEiiwWrYnG38vDiobNXTZmF3WKulzIlCsZWvhW9emQtUJ+OcDAuT7vK6M0JA2Jyrx7pW3Ty9sLBbE9MuTmAJCMoWLmtgGZiZy673jJOvLYoIoU6FcFuyi/L3nBQQOJ5Eu2T7ak6aKt9c+C+72X/XivHKYxorlpBjqArNgGbM+OyIwd/XGVFI6fmSNVpjUpw05dLVmpTSEI9zyd85ZwIEqvMNYMMKhZe2a/Sibycspq4yqlFqkX74cYFBStPGN+rCusW0F+oZWGgyNq1SGKoKA0qDhOUiwvQ8Y+IfC6UcdNtCoY8McOoUGyTyevCvJ4wdDwbYtIqQGDhGQtayG38/YfBLAgxUMu2zKO5Gvp7an+wjKCJNeGFbgDsWi+c7KU6Ar3+1zjqOfyZE2arlRKbZyzc98osD22yDsfPTGHeNpgDML5FHIwEmL1oM1ciFoi9412TFJRegH3MHQMaj6xV2Phy0hZSMlQKuzjDeO8wwprXWF38e6eIyb5CHVi5AbIDt9wZ4ZJ2kis40dGuB8eE3BvUEUN5yL6VarBi0YW+d28BSCkMRQNBfDYF7lqm23CAk7jj/L2O2zgiDLoWrmwBedtUF83L8Z1ZoJIzlo4R9T2kMVlKz52ccFgB88oPBj38AlRAwthPQHcUztxCLC/IVz2n+ATH/3UsID63pjn6hkUUWibFp8Sqrnynno78t323cW8/rTwfJtLGMRgysHSOnYXn9+ixw/hq78DNM0KVi1a9EOxf0qrh5gQkD4KPnQ6wbIyTWM78FggA4eNzgzGXGm0+GeOurGEcnLYZrWah64VaYPZtuJSJuLfomk+CXLLeoQlh/J2HpMDmmvgCuCCXA/SsIQ7U0HMUCgoMcwIIZV7jyyuixEAy0u6Atc0mQSAQAy28jDFVbdkqFIOeeS9PsyvBcgzHbAAKCq4Z5dpQz4rqmoUIIX1HdFtUe+qQ+SwJ65xmNx+8LkCSS8ztxoqX4KOC7UwavHoixZkxh/64Ix88Y7PkywYEXQywdIjw9HheJy09m2qu6qX6elLJZ/CnFx3U70raUqJkwSBEu3ABm6sDoACEKgd/+YtQiYOVShaN/WhfONbFMCWxUuMDvQFxrxY7x2AhhuNZZV/zkJUdvzAEVnXVNC4wrM3D5Y77JmGsCUdCqoP45XaTNvLbLj0obkPd3aDyxMXBA6/BfKV9IRBjDCALCFz8ZnDxn8cFzEV47GOPw7wYDFcFMJriX7nXL6injXEUxvzQdl26mlpBmtB/laJfLJi4wbh8mTF1hnL5snWVcBu1yjjo6IndbKof4txaVjvVqifNlC8zHaV0QEq1FgK6mg0SBtQkFgW6DpkCBgWqYAtBNdekXi+7Xk01oIEqLEmeJTCzTFumZ/YW3lLcp0pFlZut6ei9NubDJmlJXLuSZvft/+Zy4SZ4uYjzXFO15MceWgkiKx5Ri5v0qgJK80rd+l1Df1utn0dU212Xs3W9IQ1nhPRLWxpvzCyfCgWrI4Jjc11MX6tVV+IL9H0TctxnH4WA1NPP1EyNBbbz4OOWockhpvcUmIl/c51u3c1yWsZsAEuAqCKFCgmkkxyhJP06VfCLLYOba2W2mEe9ha04xuJFamV1uSDXzy4hcl62lu7Ly0S506ha3Jr8NhjmVNOM9MzfObhOewvs/PZfwfXG3l78AAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAMAAAADAIBgAAAFcC+YcAAApMSURBVHicrVpdrFVHFf7W7L3vOedeEFqsEPtH2lhtKRZoq2CTxtBapSVFU69BbfXBPvAkPkiM2kqbYoPRqn0wYtLEGBvTSoytIYZGawwaBQsFUo1CoICoQKHA5f6de87es8ya/XNm5sw+FxMnkLvP3jNrvrVm/Xxrn0MoxugoR9u3UybXKzZ31zLhEWi9CqwXEZAwFxOJ4A55QDB3y0cs/xhUzi3WliL8wYVw8oWAuiB1Gor+TIyfvv5kssPHSvaNpZvG3puMjHwfoI+pSIHTDKxTdzcagIT69OpD7i8lb7q9zFypCBRHYK1F053ddPJLb2yZd6jETKOjP4+2b/9UtvQrl+5OWq2XVRzPz6antayl3IRU2dgGfzmKeMBFWnWSNTr3i2D5x3InbjVVlqYXudNdt/+bw7sEu4ik5ZvbNwLRXqJonu7OpKRUbAmwBBZK5A96o0aZmkPoW0YDnttrmXUaJc1Y63QMM9kd+7c2jyp5oFPeFg0lBXiKrSXG8rmHW7byd6txEdu6pQQ/gsg71LohzxSpOOu0U4M14m3m/rKvtdeooaFfc3dGkyJlgq8QlZ9c+ckF6VvHib8AmEoxE+CDgXLgniOHWVPcULrTuT8G6UdJEbPKnzlwA+B9gcaqxY00s9XvU898iqM8qIIuQ762niF6YcgUEYP40RhEKznLCAxVhqs9eZC58gNipBnQSYErRvLPxgzlkVgi5UQvTooShMg4LwaeRvmc/BsMxWkmm6wUf18oqTI3dr+f50fmWsC2mCgRK2DL+gQrb6RCKT8hMjSLDwO7/qHxxEupWCuINqSQ7X7FxpSnd70wJlKRY63isrKw/K2JNLGiWPSB2yKsXRbNEsL5WLciwjM7M0zMsDmJPrmzHYkjlaK4b1HID11PqJ6Lgs0EePMs49hZjavmulFc6V1YVlztx7synJ9kjDTy00Ixabay0v+sSDDLH28XwRueHa6QvaGIcW6CkUSEuc1iaRGNpScVycxcT3UYzSSPEbIKnI/NsWmgAJYy4z6gxcRyw8G5mTE5w/jE7RFuX6yQ6QAY8dRisz1HNHYdYhMLeSy6rlqlGLjDB59PNbmop0DvgRW41mn4nEUpYGIa+NBNEb77maR/h8CW6z/AWP2tDsbbeTqFtUfdCdvWr7ihdWxF9u9XokRrW8qfowHMbQ06I3swDp5kjLfzE3DSKzwXtlcFXMfBsezr08J7K5+0BTonEYgFyfkzXWDVexQWziMIYSwDvhJkWfEPh7QJ4EZsHMCxqK1AyGUc0L2KDClkQVpQyQhQoFKJ6Q5w5Qjh9EXGv8/nKMrMYuqZZYRTFxntLjDcLGuF6+/sb+KYvYaKkRcDVTmw/SbgIeICM13G4qsIP/x8gusWzO5GJ84xHt7WxaXC/0slyEJUy0xr3ConeNYEp+qWVduWVlzLoqkOcO8tEa5bUHCCWcb17yQ0h4qM5GU8lC4aoquBYbt7XILu+WMgH5S3itsCYqQB/O7vGnfekBk30oHaWx6kxMaLezL86zxjeIjMels2l2ts41mY6oahjsseaxum4Aeqk9oCQaw148KUZBRCIi5hB6WnjAS6zDEZK2AfCoKrAW0FvGG3Do/3K2BAqAHPbHjQlocS3HptkX38BaUBCDj8H8YzO1N0de5+wT2on0b3uJsrr5ojRNLhLH7ODAwBPjYBfOHDER6+K74s9rX8esKOgxleO8bmFEx/HtqCLEt59ahGTyh2XMUVGYopmRtFwPkJIJstYRdj3zGNQ6clbnLzz5ZlMMtn+2PVvDsObudwD32WAXMawC9ey7DveIa5kteD1pR8zxiKCCffZkx3GDNpfoISyGWAkxewTlGz9g0OIXNVEzjA+V1/zKvv6pvJVN+0hsCVKw+e0BibYsxpEta8P8KZMY19xxkNUYLdAlZWV0Fk4wi5Wql4LN2TzQQDc6sh1pNC9NCdEZ7+ZB8PDCpwYZJxz9YZfPmBGOs/GGF8mrHmOx2MS0OjXEpRkPC+VO72di4lMGTOL2D2Sv92NwVWXHeZFQcwgBsJYc1SKXiEo28B4zO9bETe3nY/0XffAy+jvx+wPzh8hXP22QR+9PsMF6byYubXPTnP0gmE+7y0T+PUBY0nfpliyTUKP/tTZjqzsqlJixSsygRBQDfL6XpwVEyyKMCmkNUlfEsbASVWEwI3FId5unNdKC4tp/yfbANnxxmthNBqlN0ZMH+E0EkZqc4LojRIVw4D013JcuK2A07a1AEbsK9laVMSy5ARftdNCo+vizF/uPTYfgE2xRHakOm8gT98SuOLz3fNyYghPrI0wlfXxjh+TmPj811cmgY+vSrChtUxDpzQ2PRCdyB4N43aJ1NxYrdSCpiN98UB9jlbPOTP77ghwrvekeLQKclKwOaPx1gwR94nyUsWwqJ5wDfWCcMnLLm6R/O9Am8BLSqxu42dlItXKkXKkiz0m79mWDQ/Nu6kQtIDugj1EEG/2p+aNxhzW+LnhL3HNG69RuHZV1KMTTOGEsLe44wFI4ynXk7RyYCRODdcaJjtlj/WrtKug8IJe3EjxkRbmnixGJkgCzUmfZyoVEID5yfzeBDF06KSXTEndye5Fr+XxDDcIJO98iThvU2zkVYx4ON3ToHMqxPx/3uWRLj3FmUsEuzebCX8IV/zRLkisrF5KdAGfvLHFP9sM+6/LTZv9l7YneHwGTbZTgJ7EKWWR5UCVfLwTCgbtTvAzVcr/OBzyawc/X8bZOjFjgMZvvdZgSLvTAmbXuyaU3AKnLWv3Qg5MZDfs7NJmUJhGvH/L/gcyJ6jGteapJCn09/+LTNpOsgTQ0wh9Gau5BnVLemBU8aKxcpkoLItrEc2uEuRP5IETr7N+MubGq0h4O73RXhrjPH6CZ2TPb8j80hmlaFqXy36zi198AybKll9+1jWaEdZ69WEuZEHTM55Sp6TjyTKKbYYRGJM3Ge46JsrTAEctjFi1jpTkYqCk+zJLDQ6d6MevICZy12rQCcPTK/0MfdOY94wgXVefUOn5lveiNE6E1JwBpS8G9zJD622R5F3/D1gAxh0tZtNEv348bNYlnk9eIjIVXKZVZRQprtn5Dux3RSZxky4WtVo9OvRQ+DXLn8DpyWs0bTOAFwnmx2jaIoi0WO3IlbPsZjW+nLLc7OBu85GrM3zclJNq8W+LMsATmz2WAEZzEo9pw483diZdduvRq2m0lqnIfcfjG7QhMHCqC6SvOzjEgWdJsNNlXXarx54qrHT0BmV0Yas0x2LkoYEtffbggHCA752Oafm9CQU2MP2f/ta61QljVh3umMU0waDfXR0u9q/tXUkbbcfZNYXo+FWrLXWXPw4oa+VCxyJn8DKb/cvS1EOKOA0ZMwGC7OOh1uxYNTt9MH9T7aOCPa+H3vErdazpKKPklJgSQ06DQCs3TOolD+nL4uRl7UsxycVQRU/9tA6eyWdmt74xretH3uUU/t+bsN4BKxXMeTnNpQ4ZdDI7u3qd2E+Q+0B9V/+u/Qkf+Tk3S6ITkOp2p/b/BdnsPsVO74VDwAAAABJRU5ErkJggolQTkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAA43RJREFUeJzt/QnYrVlVHorO71t/s/euhqrCAgRpBJQLKBTSiNggnJPYJdFoipOD6cxJ7o03yZMnjT1aKaMY4z05J8fk6jnmHE1imkupsUs0MYgkGgmCFCCliIBAULoCqtl7/81a33efOcd4x3jHmHNtSmOT3OcuqP2v9TWzGXM07xxjzDmn8vv5Wdfp9rvKXL/e9ZJpx7c+9WvXmw+Pz5+yrutTy7I8rZTypLWsj52m8vCyloeVtVwqUzkq0zRPtaiu7FKmqZRF/+IBPFcv1Rvruur3elMerH+mekHfq++v9UWuaFDpRF9quf0duTbVermI2ga9hhtWll9Sku2r3hs2Tas+J0+ha5N0jF4EcbyS+p6RQq+vrQwtqxEjdbY+wXSi9kh52t9JXqzltTetyVqGXuO6hS46RtrAVZ9HuYEwgw93USlEbZi0L3G8fGxSf7Q8K2NtLHZW1nJlmtf71rXcO83Te8pS3l7mw3um7fLL58vhW9/8t6ePcJtuf8W6qX/vur0sSpjflw/z2e/d5451vv3pZWKhf94d643n8/a5ZVteOE3LZyxLedo0rR8/Hx43nqufdanjvJSy7NpfH35nIPusJOCNb6L0Qik05kIF4SMc3QkaBLAJWRZT5Y6+IfqHWZBbI0zdrinXcZv4OVYmqB9lsahAklxOWbJQTJDkXBkI5GVquyAKVLoJS+v+kosNhVq5Ri9+RjQVxDO1DqoIvaXybXzzXyhzVTAdy69DMRiOexvGVYbRrIb0Yap2bJ6rPSr1K+iwnJ1UDvzNeZruWUv5+VLmVx/OB7/w2jun+1kZ3PWWspY7p0q5/99VALffvm7uepp39Nlfsz5se+Hs86Zl+tJS1hfOh0ePmg9KWXelrNulrMt5mdZlqXJfCTyty7ROVVRmGIcoX6wIBpaabQbGUOS1gpCohOW6MnniXy8/MlwruykdfU6Vj3x31OFWWco2ZWSWPwo65IWVQquNrF5QJsHKCSKIMqGKA13LMkC/UUZDKdQ6e3+FAlMaAs2smdrSpobIUCp3EagLdaKdCQ1xA03lr3uQVlSJXocq40nHBcq3QxU9MTrF6exVoYkUbDpzWaepItTNUZkO5jJthLeX87P3lWl6VZmnH5yvPPDvXv/tt9xnhvGeMt11V0TD/+0rgNvXTXmFQ51P++b12ct2+2fKuvzR+ejoMY2RzpeybE/rM2o/1rnZaR49CI7B0dyNOgZgQL5FNsM4jy2YWxSwTK7Nn8ri6cJlSqVDJFF0WvmKIPAkDLTBy7Fhog/jdW8fuuzvp1Z0Bh8WbYAEmrWvSIvoibJMyJleECC/Fgv06YC1k4nXLubfUKQshIQWMGpVoEMbk/D7sFtfJ5tOhE4nAfdrorBDw2yKwtjC+lQY0pWlVlcqTtgczfPRLAjh/Oy90zz/yzIffN8vftP0en1nuv0lZf69UAS/uwrgjrXN72Hxn3XH+ecv6/qXp3X9gs3R0bScVyt/VvF8vV3xU/0kkxnnv2b2jU9oRqcTUZnXQSFH4960vZYdbLe84pZ2XYixxwYyzCqoTQaFrfU+PTCmW/eU3mFPYfhOoHLfVOq5VLlMUxO7RtaTywrlj+bGsV5zKZAe6puvV8UiJsjPyIsFK/3OlegUblhP1Pw+qEQDK2YdT/PysDqvBG7rms2oQIxRrtM0dR2pZujmzfE8Hc9lOTlby7z5ibKu3/mGOw9/ciQ//w0pgHV64R1l8+o7p239dds3nv+BMq1fN20OX1TpsTs9qZe3U6mOkGroCTYmIUEr2WHUQevQi2kPbHYuN1iKwYVTLo+rCgA7z6qliXMBlxNRCMRU2v44n08+h07YIXykUK5J6tjt0FcW1BF82dcGfqjRuwIzhzg9zema+lWMLlC6RHK556iLNXWE6U5YoZu8SbA7Nij0UYUVPqAM2fWdFaCd55O4RgaDpyiZSl0dzLpBn8VxkWY0rVgt/cHmwgXxc+3OX7Uu07fd/bcOf6o+88I71oNX31l2kUP/a1UAVWupxnrmy06fPs3TN0+bwy9tgn9ytXnupmnaBGJC0GjO6N7ZiAbgVSZPDDnkxhJj0L5Cbq6WURoJOBAEnGYB0u0Bt3DkNesfruM7edANJkTgEBgkFh5/G81iXfhS65oV1cSb9DEd43Wyn1CmBqFV4d18IyuAMA3rqIUpRI8YRPDQdmmDDy27AAf0TzbYa3OIHt6dUvDAFLprOLP63TSke81qxhCLIoPyUIPAiCDN89Z13dXqNhcuzA0f7M5/aLes3/TGbzl+S5at/yoVgGiqafu0O9ajo+X0a6dp8zXz4cGl3cnJ0sRvqm4Qr5oJDVjOLLHXuhsDxSHvjOFIwLowViepA67ErQgzeWZPxj88u6f5hnSnPYKd25ahZwauQdbI/KBde63+SLlc4zqh2mEZOUzJMQMrmt7fo5vMSucwIE+GXFnzDIENA1laAldc6WTtTsxGodmRkPAMyZ6JoDWg2GBsEkoIDZSHdrU1VREs2+2Vdbf79rP5+G/fc+d0Bhkr/3UpgHUqd5Spaqdnff3l5yybg+86uHD0nOXktKzLsoPgO4rnkdH5XNKO7RZB/a7hcL4YEZN+zxrBmpowe348v6OWp7GgPsAedjCKfO0tVKdrVCLZAsp1nmrwnGdP/6m9mbli9zNjg34qLF1uQG7LNSoPxZIwotrQZ3q9Y/611GyO+F6aLDBkT+OT6c23udtG2vTguseQ4AJFb4cg0/185DIkxBCGk8LHWUnkz7Iuu3nebDYXjqqP4HXrdvrKN7z86HWCBBql/ounBOJk+C/5NEfF1EJ7t73s8l8pB4c/uzk4es728tVtWVscZCO+YhFagcEgE5G7DQye1EvGuHhW3OQOxRS6hgFZ6b84WIFcFFXAW35Logkez2tuCpuDSlPUDlEB+5SVeMXRpvpenCpI2whegqt1uuNQfQD5gXKYpIaAyPzx80jc4QLpr7UlUTXTU9qYaI12MxIKSteThnx4veGw4lUwkPDTrpjTr5830OumPJgLgAZ9SuQTg1VvRrqKMPO1rMR83KoXixpgIU7hZDMq9oiLHFBOoDP9nqd5U5Zl3V4+2U4HR8+ZjsrP3fZNl/+KTAOm1ZyEv18IoCUwvGTaPeOv/+Z186WHf/fm+PBP7KrVr5qrTBs3IohFw5kTU+tMsOzjVhZoQYhFHmEisr9VyetZcO6AIejffI4EpoNFjNcccuplnYMOiZjgrCv86PkWp5L+smiEs23ItNuHP7lepaUxjr0frXuAv4GZnWG76UbQH+SjIfjBocXOl2bvkwkl/yYo3P6NQ0v+hIhm3I/ibctA/Vqoi/s02ZiwDsv4I9VNL4PM3aAYf6lS6yO2kV4j5BHgUItK7WoAcXPhuCxn59+/feDev/Cm//njL0MGy++1AsBc5Nlfc+Vxy/HhXfPRwfO2V6/WucmmUiqoppCxE9NeQ8KN9Z2URJ4w5usErTrm7nNAO1hqzJhHIEWjTEeN4ODAMnDOmjwOVgUKoKY5bqQ5L5s05jh9LyMOTWnmmHzsMLXbnqx8tc/DzYk/rAQJuZFi4WZyfU6a/dpMyvDMRUxBsh7Mw56HIEeQbYzN3sChl9VF6dyIQbmlMc/TiJGy8I832BzF1B8e5viuV0bKqr6yO7x04WB3tn3tydXz2+/59kvv/i/xC/y2FAAqvO1rHnzmfHz8I9PhweN3V69syzwf8IjkqadbLK2cYGKfRpEpr6XQyHLYRW5rSRFMhEFk8MGDAIMZtHp6dvjJTD+wfLEnhCqmmgyiIbaeKPZxh2ciBSnP9q96nL0tWv8627QmWLHQjRzj5jRipq+0kRVnoM3IscfhXKO5vzXU2SowjUZ75siZ7KIjKXLA+hP32YE79XYlt6mzP1YO3omKjZWvRJ5YyAdqh3wb7vPKDCzTMhnD9uD24OLFg+V8+67l5PSL7/7269/421UCv+U5BCr61K++7/nThaNXls3B45vln2oSr2eyxS7IvF2sXesB4WaEmzBPzgSg70ocFywtqwZGjMckxcLzQTBykYniUKh1ZkbRW83e4ZHBxyz40AcglHA1kLQ/CySIp2U5LSC4+6xrTLcNXyvToCyET9n6kQI2jKI+FqnPkRqctA3b2QIh8u2THwI8EPqlHWhvMIxvSgXlaP6GSl6rQR2rMg4MrKmjmuffmkgKnYY2oDnw0KqsIzS2omj0NFWY+YItNvJWjDWVnxljpeQjqdfHlu9LWf478hCUShuDgypz03zw+OnC8SurLFaZrLJZfjcRAOYbn/r19z3/4ODST5RpvmndnjYvf4Z61g0T9JFqde1mCDegXXqJygmGto26ZJT1MWJCBGl+ineRBejXY2iplYs891AvVxQjCkFZhIw5LSMnJ5lXjN/lXkJ4UkJOSlIygWZuh0JW/4vDnRFayWFL9wWw2o0ffS/NcwOkZagQpoC8uMjMvvUxWGYOy9WLOnUJzVVwyAbFeILpg5atMUmL5xiw3m2tKeVHRL9qhH/uY4jlR55kPnBpScMxpmP7wz6XZTcfHG9KWT56fnblC9788oe95rfqE3joCqAuX3zJtPuUr/vwMw6PbvjpUqaHL9uz3RyEPwpIcOLHNZ70rKeqjacBkXA2R1ZI1IcSUaXZlMTUoUBiTK3XlEWEytaFDFICBITawnw8toVbw1CRGtQPSdA4roZCYlOCqf6e0GOurlHyfEcqj+epLkzuuAyTs6R0XBd6mR4BIFqOoot7VmXyzMheRzsIKncUzPQYKeYRzVeGD9Fy5+8wOFwO5zp4tdGUuf4lHws5g0dNBK+ExVVYcVSVwOHxZl2Xe8vZAy9+w7fd8ibIavkdmwLUcEO1/F99+RMODq7/sWnaPHw5P1PLH+2Cw8hINRi4wAwIcwVhwksOmoxVmb5hEkrTB7KgHgyiClFvV6D8xv/okryN6B8QrdWVJGAalDUNRK81QMnfYozyTsgz79ghKhKfL5NF11VuphfaNCCKOs+pqbkG+022QWITXLesJoNQdkZqihSEvrNHO4Z7ezOUx5JJ4OW4gMXHAxslQ9JbvEn/xRQnPi8rQgbNoKuulEFHUswwdglBBExFysy+6fuudLp1rHJlnjfL+elumjcPXw+v/7Eqo034H2KI8GM/tK7THXXp7h3vvbQ53vzw5vDwcbuzq7syTxsZV4drPCiSHMOsyJkhcILpfIg24GD7QSKnxHNpjLYyL9mNb4ePXjRAEpQK/WXdIV3S+XRSS64JYgHGqLFeowOyQ7QuKKvO+WlwSulqCioiAm5zVCIMIFR42alI1t+/MoJBHn9Szkh8Uj+DDAvhE+t+UqrqqAx7KYSEL1+olcepn4b4CMPym2io30LKZYUVR2o1iJc5Ra6PlitxO+VdN1KBVmQgarQlq4zRTyiI2JqBJjRlXZOo5s3u7GS3OTh83Hy8+eEqq1Vm04YVvy0FML3wb5bNnXdOy3Z7y/ccXDh+9vakOh82G1tRR5rKUnvBccR0EB5RDtAb6hwMiS7sJHE77lZTB9VozNaPuL0pCdLuzMMZGGSPT9Ye9Jedc7ZoRf+in8zLXX1w9ARulDl68zUEiGEPDNQZ+hYvm7Cp1WcLH0okh5Pd7pjPL6ALToq8OYgrZs8hYCUVDCIpNPQXa/+Nkxyp2TuVXWkOrEK4dg47LxfXklq1MmaoU5JZRnshL4HeD6nNuo7blptfg6iswDyvwpUYIlHm0NyHYNgSadJQlc0mo+e3fE+V2Sq7Q9DzUBXAC+9Y24q+Z33D1b98eOnCS7dXT7bTPNUtO0LcRBxpkULiAFEtOmDmyMpxsuaQiDzA5g0FmhDn3TxYBCSM5nFxG/jm0GE4mslD2oyJrALTEJd6wTuAkqMf7BQMipE+rCAsNTcm13WcGF5XR5fprbhaADbTjSDgz6ABTSlDoJCYA+vfk4qNCw2X/tbEL7b61GKLjZCSGCnl0EzWCIjODLIWKZDSWX0rkxyW7UPbTsg4U3wj7NTkXcqKVRQ4aY76IcRoF0x5uIIORYcoQrpHGFEMoaO5Rtd5Oji/fHV7cOnCS6vMamSA1t/0n/3aQVcePfPrT2/bHM3/aV2WTUvwS1iJiQjLmxVETt7p/KIUTw3+UBSZXHphwQddI5uYCI5qYp1574nwGisBFDt4cJRF5hxDhSD3nzknIZ1utRkccHvaYb1DSjTKIXNjy5dhGZMH3uonJ2x7I9XXrtFeg652fbzIHEQXmXnRWT2lSADpcUcT65CtjCds67DALsZrVuSedPupVeOeDRst4kUJ5WE4XJEHpZf+4p6jXqW91Zr8z8aL3tD92Zf8dRgVW8tms0zztFvO1k9/48uP777WKsI9CmCdbn9Fmd/ylrI52p68ZnN84Vm706u7MpUNQmI5ZRM9CW6skNXhFj1qPhCbRrKjLDWX8khlcDzG3QNOT9awAVPmsuL0i3vJ9yz7hBxhIw8drLhuh2J+PGAkRN4m6lJSUt1WX9THMEqdusue5TQejJIoAcWoSSFGu0pbgXExnFDDIbIogPvY39sLCc3LqcMeBvaCOnyZrqgu0YTVUuQNDwuXZKm5PJZQV2QUIbFejbLEYiu8fT5CvIdA4PIk6OioIb1BPT5GyIdYd5vji5vl7OTus82FT3/608vurpfUlId+8dBwClCFv8YSD86vfs3BpQvP2p7WRB9Zw28eZ8AlAulsTT3fn9CAJaWAeQhmUmf7YeTREeGzAUhQlF1OMMT2qzUnCqi0MFomw15Z/yA82LojClXWFZDqQQYKvWdeeDQDHJEUg9GHCcLWQduKGmO4KzKBM5DnZKBKCBi6CM83Jw0FbeWsJf+qQ8tDsv6E+AacdOj3NPDvyA2yv8l/Im0kJaLC3zn6/BWjEI+n1MnIyH0HhZ2mqd8qTDS2RAsK20EmrG/qC0EiFnjAVRI2qiVSKMKSdsp/zhdu5jF+1OGw8EjGZd7sTttU4LaD3dWvqbJcZTrWxjzCH11q+IyvPf2k+XB64zSVw2W3nevehlkenDlppG0zCLL6vAgIjrKUIGFZVS3HI6MCkN2VQlQahn+CSXXtTwzLOBz1UMpv+0NlRUPB+faw/gMQ1RHK3wWEtNKT9zlvpumkpUVEuQpeXkxKZoQYRs3MOteH0lFBBkMyzuILmK7Zb/pGKcRx+2+C7Am+y3vV79LjmIiTerRpnas/q/0zYIepxWxGMTsK8WQfm2eecV7EFMqSs/Z8oDDCoqbkdmKVm3NkujHHG2H8lIGnTd2A53yZlme+6c7jt2HJPren0wp1V9LG1vPyHZujowvrbidb7wfVQ5bb8BoNmTVGfxORLc1TYZYzk7xfN0hyzTIiH88CorXluW/U+LA/bDZTqYEZ5QLp/qDx5bcOCMPl7gt+Ar7ByupDKSWWpdEBgnqYFWkYg7R/4tRGioOVTQyTfnWeHPymobSpEAMouFXzXPhaPpWkPsAyoTFwZA2mLXDJMQsyymEUmdUEKzdbUmyhq5UsZ8BxsYyB1YXVN7KpteddlDoqcCYocmNS7nFvZHtFDvpzRMrQD+9ZvmzL5ujwwnS+fEctSGQ7fqZu2+67pt0zv+7qizbHRz/dkn1Kact68TB0nsM9D9mEEkOarWEVchC5jYud5hpGOpiE3KmvEAzeZ3+OH0vD4UxssFw9/CAwxQ25Fbk8dn9xZzhzEffF+il6CGmoXjhblnjbe+PKly2+XPSinLWzAzQ4JFNmWtcgHsPswuXBGyCAPAZByEzh7Xs6CR42ZmHBxm3isX5RTbTazpcl1OHIh/sfRyLyqY4pDwY7f81f1KM2W5JOgxD4B8UxOhiilIR62u+gznbz4dFm2Z69+I1/6+KrIONDBND27G/v7/7WNKuzL/m0XOPrPIrilRSPcp0aoFsWxxxmck2PX7D2gh7cc+xWCVgyrQKkgQpogeq2uWAw3UhUkYNHvC2uDPLHQ5Se7wDetvaFRSWI1Q+alZx9cdtqF36wX34HCsbtGpXHOoAy3hp8TWFccfbSCrRMjbTAhhN2gBTWQTTUBUQXHaXecbBXLmo5bccgUn4h7NkvqrHyuZ82vfLDPSZEclCOQzwZp7oakYYJVGY/MaCtxe2NFp6uzguZRIYAqgkVEA1NJgZsJ/o4rlKC0YjeA826nOqZGuWbWcY7BdCOKqq7+nzD+X9/eHzpM3enJ3XlyWZkPzHwwXqn1NyIm9An9rarwJiSMXDpbi7euIOoYM90K9t6G30tHGC0Fa6xFzLwA2NaOTxQg4/EuN2xZVgxWFLvx6hNfiE79aI1Yf0RklahLM060pOEUFq5gK1V2DBdszoxx409RJdMMBKDgg5hWhBQT8I0xC8hZ847EQyR21+W2YRyGBmEsKw+sjq2E4XtYwsbh8Qia49BrpjtyCrCajKhVGXAY2VwA8pJiRw1DdXrf62tTHCg2cBATbFv6ma88+HxZ1XZrjKOY8mCAnhaPZqovXL+1TVzh/U+BNMVpWjAtvtOEHR3WATR4WWUPMe1dxPbm4s6x8gURBO8k6QV9ly5yLOdDMSPWkMHOgoHBi4baFhyS9qhuy7jWfsR05MnmROeQgX2zZcBW6w8haVYKKy1AVZycozSauBfsQQda7u5krxv5JWnJ/wB0lTZtvfLXGgXIFIgzOhTN6J9u71y9IIKYEeoRRuorklHGW6xpCOTikoYAL2i8SJawUk3Mjs2rlgKguvsnyPFyUEjPG9KmZCFmVYTLNNmrcIm2yTrVvftt79ic9ddL9k98+sfvG3eHL1+XXdRrMO++bTZoXn4Ge560UyqbjutsO6Xpg2UbEH61j3OWAZrgxq3mBqRO+hp3qzR+WK8y2uytj5Y1vugGu3ZPFmTow+CaFubAipQJsXhJTyL50042nt6Z2B5w/ye6NwhiZBDEemUCZCFNCdgxfWPzKG+4zOjimzkUP9I1OwORWts3MNg5ZWmsRv4Ms10ruMa4/H5WdK2+80yRUS4bUa3Zk7ZP+UEdt8LZCRVwT4qo7SvxchtMqVlLKg8Vc/U28zrul2fXZODIPNNB33gabfKmM8Hf25zfFgNuzkJZK6KhuUUWoT31rFVb5bfV3aYVgVzhGwY0tQQfnGTKqOzZddcAJ0HsfGPAspoxDejbL9Y2jFgTRGMg2cMGtZhSpNOavjQErQfefmmmC2CTMT0WnsDHVGDjAkJnKU9g6FiboJMs8i/woAkK8kEXvKw2/DpjaAcg28jhgdtOoSQMErQrpi1pPGEc83j7c5aNnQ85tRIQxI2zXFh98zJ1RatdcJP8/zuJsrUpQnCixh05XRjY1WRWfjNOMPJRkebQdFqWYicMW8D3WTXgRTlqxFJHe42R4fzNK9/Lsg8Ao1PvmO98brtya/Om8NHrrvzpZ3Aae9G72RoSLTzwSr4d1o9FrwnaLku3gnezJwWSR1F5CEnYQVzre/S+XvsKd0bZwgZGn0WWXwshvK45xFKxKOsxDpQedTubPmg7OzchH3RAvNpDiyVWvuQj8GLs/DWAOpYtRkhcZoxW2/b/NXLjsNN9Ac/hYgLsQV9GdymxvS4gduUxy+gp9X2k4kIzhqQ+RX3ehrjPhK32HszGBEPh3Nns54AL4cx86YRq4/JYxGysswHh/OyPX//8cGFT5bTiddprkd41Wcv7k7/4MHxhUcuu/Oa8uuzk4CduOw8/+d2R/vWns+JKaauvPdhHwF+CFuBGyKINAuVAT3Yu1i1qEDLthXHE8z1Ald9jz7Xn6aBw0DpduHWjjjtcU+vESHkGQTvfKdc4SUnb69aR2qtN4V1X7Zc2rYRnwTblzIR921FpsXFtrbQZuyERUa6VqpwmFLJLQNucbLl7jCNRr3pY+c+FlDSM6x40sXygj8dKlce9OxBR4jGLTYNAc8lfmeeJ8Ura3tcBnzKR1zlgNqe2auKNFFN66jCv9tcuPDIs93pH6z3q+zPj3i68sy6u139MtRjTrJGOq9Da+ZGEhXX/JjTZGuXtEPWgq75/UFjAotZezm8L1vm/QCcEKOrewYGsiV2aamu6QDKwRyawYI4OqVBukjL5pZ4389F4FEKP+IAGnNB8HkTEK+3UcQ5Vy2rih7RFAoPnm2wdwR4bGk89duGEHqY5cbOctTpjskGShxZTXKhsVJns680YVEcq7FIOsvSJKEJYVwK1a6gEWCNKWcIpit12+o6GzP0l5R1DsVx3eAFbhIjFWmzrrDVzruPGtMLFLQfALD8gm1kq8X19vqjyn67/rw7PnTj6fa6X5s3h7euu7N2qHkYEcpgMmAaOJHZIYsJKJT0VDSynRkb2QSxhgjXcC5pLCDa9NiC3JLRbyCuATld++oPeb7vX8fHH6sxa7wRFVRaSTT4sFXIMyln0MhofXITqGyqIFaQyrHnR9uZh3oinorX+bCYftxwK5BpYJgz13V7+KmiFAVIW6WVpHRNqXmB2dHqLR0xiacyx44MKhn8hcJq3+mdgf/QebCbR0S5Fd0mgfNpczwtu7MPHm8uP/m1d37c/U2nnW2Pn7c5unDruj1bmvCzGaUcffZYmgql8Io5kwKTMlN5g/KKN4lBJ0LaXYVroeyIOdzGrWWxi+5QypERqaJnOnHgWIZC7AUtuTVFoW+5QMR+8iXhu8ga9sxQFSHmCG5m7ehtM7XsRiGFKvk5Dg1yQkvdctSnajyEMbrjdLVeUk56sKzkC+L0HlYEoNvIbGTht+txLdWAclqD54gpmJyGm6HUjzuM2QndaySmer4TeQHKyjmDFSiHnZ2WGDtaZYq+MvQHa9i4WMsJuajDGKFOQZ/TujtdNkfHt55tr3tefVMdfUcvnA8bfXSX5DTRsO5l7c6MHa/bkGIAjBjKGAZNtOEk7+xb4KHyeScJZhoHT76R+sJtgrIYHKk7DgH/LyuNdqg7CwiFblnHMEQzGjAUVY7IiRtIcIoSoeW0hRLMlUmB0WS5Hw9c93CaFE0NsId9qgeKUOvSGBCOCAlHpBKpk1AOwqj6DEJxpOfYIcl9YOWR0YJMRfTJTKrks0B/JvO16MYaHHRnJg9vOl+y9RUj4aYjKDNy4g5N15rzMWLdpL9CQzwMyz4TWm0YFGj7tswHlRjzC00BrMv6gnU3Qi60si8IbVYFcsXIGpiKNqWEtkJoD9pOy+htO58Jx584f8rDlJUE6o00RUiIHIYD4jIRLf2S/XIhFKZWjsxnKD1mb4Z8Cm1R7xi08Kevq7C6kmGWCV4ETzSN9LJCFh98O0lptLlvRG5sZ4Ki02c7o6jjFFfHkTLIQxQ6E4YiGBbBKlmxMuyNEZM+goD+FOK/BF7tlCLXRnHaTqtaze/BKsqfg1m2cWZ2o9RpljE2gETNeE/LIY7wng3HWFVUC/LvXtCefOYd601le/LL88HRo9bt6dpW/gEy2MDQQgXvlrUmKlqfKJDD2zQwJzSAGA676Fa2AN0CQdd7oyCLSZyW7XDX62KxkzpgkSlxybL9PJxI7qt+uClextaK3+WPO458f8Re5VEY1d6DAlEBpIUyTJ1ovxOJscHGoMre1dCrfBesqHo9tVZ/cQXwkEdt42qbxtkFDs7F7Nzw8Ru1xByBrEwGrIKPhSUzesi6yRRr9tXQB6tHYTwZeTFvEyqwXtHioeGH2uf8qNVSh5lDienXaXNU/QDvWzcXnjqvy/lTpml6xLo7bxxFywk9rpwsFfWRmInnI6TNzPRVpBHBlI29gwgvmK5xsoP3Cd2DI8d9CG4Fs7BFOAFbxnwMq9yEI1ihCH9ZuH3bbYyKN94tKEFn7TjnSwi93dr6VbU+JPxOAoe6LmNKC0sTdgLbeIE2WPxIqEyM1Yj13PYh0SUgQiTW8JOWYk2cgzMMKc8+pC4RqrGl4d3KuSidTmFupxQwmp7GzxSYj2zcnuc5wrOHRmZ6KXErgyBrFOiTkqqQF8OPpX5gVHnVKvNirxbl8rqc1zF+RJX9g826e/p8dGHenV2tWybM3TZMEJEwP7DUkbDBhjsKqeJq1dpmDIj7ktVhYlC9Dl2iIbeaReNA83g6chDYrFg8vCU/qZMWbqNr7PCjtFF2eAU2NN8FOZGo3TGby7krMJE5XDWEColQaOuk4g0p3NKin259mU2gn5Nw2+QbO2ZENQNL6m2E/0NHmslIfcvja0pU+xK3XYttZDGHgKDfuW1BeTom9iW6iZ9DMlrBdlpOCjQKMfSA2uh0ItK9TkbWfLRCL6MQ5tWImggWgPAjIcidoryDOBKgKWPWemFZ5qOLczk7efrBUspT2669LLmEUzyOnUI9SKdE46w9HKKjAylDLgAPHmlphkVcjFKwvrUg7RXTEquKUiZJMtmngyqAWAKZ2Hjrg7zOG0ojMhDNb2nZbBRr/Y02Dp5oDV7Wds58/bpb1nK2q39hXZNtS65xGyXa4JJf4PdZbZm1QQ+7uD1BBtCH2hBoataulMODqRxt5PpiORfKOQGxBNyUDKM1vkNyzp8DhWH9hxKljEP0m/Lrp1SslMNUymrJqR7wiI09SnDBdKNDrGCKnZR6HmM2soaYfceh0CKLHGCH7hjy5NHSRZBlmZanVX/gk5LJ8A+EcAC5LMkHHVVrVZlYLKazWxieIAGKClB/xmvsNwDxjC9oOSacWMkJNmWfRNcmh2fhqLHQUSRtqCVC2ihlAQfq2EhrAYnJs1KtC4U2VXnMpXzkslz++IdN5fE3lnJ4WMpmM5UKyzy5xknuTBGHrw08c1xYQMnOQxAVXmfgOko4cirpc05cmdJFrX22Xcr771vbf8cHU7l4VMr5jmSWtbNRKQs481U/7+etsOxEZFZQ9N0MlPYbUe7IamvgCAaOCMkl7ZQcvbG5fM34B23gaZ/McZTPafm2j2wQGFupaQo90YXu8dg6w3ofRZbmJ9bTRB9rTn7KngL1wo4kxDb2D2Mh8/j3cVY3Sj4yluing9TezDuQgLJktZxNY3lmVYzRKa3VSERZc9YHzUMAWcMWSJgC4F1CBMEME/EZ+/fmnjmjbKrFX0s5OZvLC54yldufO5dnP2Eut95QyoHuxuD8QzvAIufezU+sg85FUGo400QCkFkiu0chOityYA3N2upj22UtH3pgLb/w9qV8/8/tyt3vXst1F3heCsQXNJmXx12xvQ47DUdjBAaPu/xw7wx1hF2Q+bmAm6wdgc+Zj4IHkzjBZDZaB56j82ORpnzHlZX5kOofy0SkFbg0PyPp1N9otDqJvYMg3mOn21528o55c/iJy+60maOQG5Zk2IUHDOZ/HdJpo0MHlMw+Vj4oacACXCIaDzU2KYiwH0liJLb+1nWDRtY6a5cvnNHe0N78+6IANrRB9ml7KmoyflbLf/lsKo+46aB8/R+eyx98OlNgks1RO4719d7WFoKLSo4oSFxsKs8FjOjtN/uCwrrmOLbWch3cs+1U/u6/2pXvefV5edglbS2IEXgrrgBFxqe1ISmdvWqIlGRkosg75olZ1ZAwYOudYLGOkWEbRATAc8FJR30JWABGk5UMLVMOfW7Iq++fC1ZunNfmPCAZgevu/NcPyro+bF1k9S97/EXx+IINa4gxEYjIUMOhCCyqwXuGZTZQddstt5ScmWdIQAcqC13UxO6ospCTWUsybHAq0FLTIDh2m+27C3+EcZERQCNWeT51IUutefObuZST86k8+uFz+d//zKY86dapbHeiYCsqqGvWA9y2loSOGuro1hik0BP/Zh0vCiV1xAjq4TwvQxmbMneEVZwmyzo1VHO4WcvXfvGmfPR0Lf/yddty40Xxaxg60/qwdkKGiJhbeaIZvtS9qK/QDkRLtMG2mTADb8JCk7bdWSZaG+18JA9ZaRKw9i/7zkA4Q1PRZGB/AMnvoDUUlnOABgwU++DQE6uBl20SXdyswFjXY0/XG+vRaJfaufPtAK84MF5RFAnGO5TeQP8xqdW/SVtbBYZJlsfCJq0zgVPpGykbjyfZdAQHTDjVHCU4PPAMsEAkrtb4Qe/WJVWcRopmaXOEf6ZuzzvJKfAO1oHfLqVcON6U7/wTB034z3drE/yqGHideZqMh3a5M5vHLD5jNA1e906CaGD0qykWFMVOL+q/KRFf4TfPUzncyBuVdn/tCw7KI27clPOtChB5x01JWZuj534cbvMGhyHAtAUaJbe33WSemvx9kzcyZuTEw7TWuZwcw+AfUyjyroswowpW6hy/p/wRSw9m/kyhwDTtswQ0MzR4QcdRm6DvTWJ8y6V6cPyRkYcZJZB4hCeJ8QJHkVUeoBK0kQfMmawvJxo1DuWFYfB5d7MoSj4aQPHAp77xpMiEdRQp82Wnniqqg0PPWn/AuIBwFA+v/9/MU7l8OpWvfPGmPPXj53K+XctBtVbTHmGE84fkPLSvuzK+hoID82SFYXyYoH6ag3M7fRydRurfbBb/ETfsymc+eSr3X63KwYuA5UuQJA1A1mr+9MAT4+gBbdOfVkqy6KuiBjNiWbe5SKf28JhYrv2ARM6tLNKuuwn1QsmQ9c+5N3lq1Ll/cM+MB/8XC1rX9Wgu89y2Pc3pA0a4jtE53joNYJFDEz8VtJZQwQbdpBTGGC/3fG4jDce72YsbtIsKP5OfHZQ0EZcdj3l48CjNPxPNeNjcaiUtzE5HEyBW22LdT8/n8qRHzOV/eJ7M8+fZPfXt+BUoDFWwDRBQe/ZbRPqw3mbXdPD0xg/miRY6MqMF647xwniM0n+d1osm4lS6PuNxsmzCLCXtgCMgLpbN0ZM4Dt7WkZh0eYGDvnZ79U3KZgQ3EvgmfvSyK4i2BibkCNTrssOKgPpCETT7V2UuKpHIA5kabDYzOkDiFgTE7s4mCSntNST0RGvRiBd6Ia0C07ie0HXxplI5IE+WN0ddzYL3iR7CTGGukBIcnPjG6HTP5cGZi5WKBYDC5JDK5LRLK0MkJW9m0o9VxcYy0Xrg6lo+45Pmct1xjZPXOa5LtjAArKlGVaChqP0yXcnzFUU6gXupr8qlpjjxvv5n46BjHBjQUAjlNCSh7TdWFRtQlf+jbp7K8aGGiE2qIx84akvoLfxFhqOPf9yIhfgUC/ihuLRTjuJWsriwKlIO6GWiRegO7c3ZAoZkyaIJwmBk7YzlvMyJQT6mphf0C5ca5AzJcWFMXIKy0hESS7vqFICG2QeQ45K+EYIzqWkjCD7HykOl0QKicVxn9LzSriTaKcAZjn1zJlWwEia/vow2hBaJEKEOu4hRHKAmMFGyBdL1zKo+UOz4rnfr/P+pj8b6g9S25IDwzMCYDShN9evcmGgpXLVZfZgGBI0VGd3bQpYY5SfCMPTlqQ6Ua/0sy1yarzkMrjbUlDXxQGoWUcSpbNpy8LAaC/BBWHNi4zx5P9FWve6crI9ozN7NorXQ2jPQf06rAeIKdLT4GwttmLu47KXdnRx4phwGtihOFqIhb/1lKACgijbKDEgHWtQZ2uGuEojznweC5NWPJIyEhVJIvfEMaSKqlfGnUUj7JXl+dXJIchsTQslDNcqTN+hMtBxpDyiJS8dTeewtakOi7CojQCFFy2rQlV2/Y97Kze8vmVYSAbSVjqjPlIv2P8oWMaxPE207albwSu93fmApp9UJaEzjpbljMDbZKUmKlPRzNF2kdGhMZkIKlmIdqLYmJcKtSIo1rP9mi55eDcrUIvnmjOUWRGQDDpLv3hQ1x+hbmPlqWbQxL8u8S47DQp/ua4QliINKunuYw7g46Sk0xRqFCYlqgjGyIojRyQBzuqYPfRoMqoetjCelgBl1tQuE2piHSJuK90VNOlgMv9q6hhibDyFelE7+BieEKLzNVLPjJAHIGDf10IoiuvB934w0S6U0yBRyFsSsvGju7fQfKDkgHJpekP4py9JCSt7WJKj1hde+cymHB9okPo8qvOD0CK0iD3k34zEe9GkiKOv3pRzE/bGtwtouJzRDJafYV6R/eCMaldi+nubcPnGT0cjT7DNgLwIpnUy2JB8XCM49sOKZl8g+0VDAEowIrc0N6/r7JJUmrixAjIvyhztBmk285kAktUnEzCBe4nubD/JiG+YtahNSnRicsKY17anCwQ4jjgA4h2eGHTAC5qP1b4v/l/Lr96plyA+zR1QlrcMjSWvFY6V0WXFQeEmobVdlOj4rnVzjDlRYGHiVfacZ9oNY+VRNFbTNppS3vX8tr3vnUm68iB1nlNcss7Iz6XYNyWdsTDqKmNHynA1Oaw0WkaDrFE1wLJv8TY50Yl+drs4PA4BoOiyRNJWtHoeE9gS51FRxj3v1AJOmwTQN90b29eEGciwsw4u9/sagNm/D/JJLZdUiDhVXErlS+iSh1tHRsnixh9SFAW19pxExvgmjlBABXeub0TOuyyCxRCeoHW1jvwKdXRjrQp/z86X8zC8vA2ursbPUvj0qNC0XXffPy0PHuu7Kak3QKbSb+kqoyIXdFU11ZmatjvDld/7Urlw+XctGox1gLN9qjo2LCxfv0GP6DfaeZpiB5LkLeI7bTw+sA4zpCXFEQ0IX+IIt1MKYpNK6oIvN3mYKTGluPoXubKpt6b6g3Z4oTrrWtyPlxuigErthAclAYI2CA6nOTMNk25fEQYjHQ00M1voesqa0C8GB6UKfho7KpV/GPTHeHRnCrUGgJ/wIeeoKfUOkkSqwAGct210p119cy6t/ZS13v6fm+0/NKeiwmhKIeOnt4IzAcdz5Gp89SrCWv1QtEB+O7xFR445P0Yda21R1QVV0dS3DP/65XflXb1zK9cc1+SnyEKZ5rQzXKVosvPtu1eVS8uvsYTIZY2208WXq/0oGwipwhUQGldpVX7Hg2YCUPo2B07rVnJAGQw9rFfEh6Cz8gHLWPhsz9ztEtLR/ltbOsqP2Jqc42BNm4WjuhymCeVjBADEOycUMrgYI53old4a9/S7UVq9esCUvyFxD2i0JiDmAkqJEn4KlI5U9tO7a6OGMj5i3nSqrTkcbcP1+cCDx/2/6oW350INry5qrqbN16Wz9rwpPTaCp7WvLaRd1C9X7VbjqKQ/1Ht5px9tN/h1/VRBbOfS8lE9lqLXGe+Fe+09/t/bpu9rW9p7ex/Wa6FSF//t+dlv+9o9vy4013GlKwkfATpQCtA4MyohvoLigm9WKeVSKbptDIN0k4Zg4Xm9j6EqhWcgAM53XWv5G1inmO3Clbygm5eZIZCHO+5lv2YKqGqFrjH0M3riKcGhlhi6SUVHUbS87Ef0w0iahS9EM+lqz+BTalX/7qymTnsacEwvhyMLclB51r3VGHDrmHhmLsJSNeGtW2xRH2z9U9R0x9l/nS8x32g7LYVAIXRmr+gI+6ZGb8jc+fy6f+ckoLFeUK8hwZPT86F1u+KhMfrejVI8xOyK4UP3aB0r5+z+1K//6Tbtyw7EoB38slUMLucwQIy7edorGgaXZiZv8VHSPeQ/TQGT74X5AoStbZVpkRfH5ngLj8Unczd0M8oh6Y/v9IssHYvzug+GzHWiKSAaKoLWjIF5diUef9bKTVGM/rLT62gu1EYt1c1+GtEqrARP1SIEYBohizKFcllf7ru+QxfHTg2NlthusVe65y2GwGaKGjg6EwhhYmFeYi9CSIdOaL7+Wk9O6LXspz3vipnzOU6fyhI+r1zmJJpImjtVgJSC1K6YH4HBKJzAGPi5g4jLIitL4ERyzek/PS3nnh9byunes5bXvWMv9V9Zy03WLIBv4ELLH3YSP2kVIjWnMUQfXEHEBlwNOIjQEhfIlgsBMIf8n8KRb5IGzlnKpAm0yI4TbrsjkXR8B5nsd2RhBsFWqTkfbnCb3g4xt33ilL1571jeepLUK0QrKg5QlxsJg5nuQKx4UJDeCU4lpVLOKHVDdB5iQDawqlt4CPRoxI34JMdR9xo7JZd5bsgpRS40/sGCcjZoEUv6uZbdby5XTutuRLDZqy4DrcuG6WUhb0Qb4FlRwT5h9Wb40tWGXYmwTKQ1awwEac969BjTkOfFS6RRgaV7lugnIwaZOFVhT9MhEaJt2WCLFY0ZHB9P0TWZ0ZgqUofN7Bw++5DAkvE2yKhXw2XJhMiEHvz0EnBbRRYBjv0V2vXzx+jv26D6Bv+hwW4YTJoOQhcTkib554OuGIJGQpl2EOdFoOGxiCANppbzuj1fdRZqY4wJW0eTI8YWhAyKoRd+sTz6YAu/q10VCbZriSCDH/g06pV3InE4EdbrGcgzHYZ4/cBZAYWDgmVHYMuv8un7qUtm6BBj5843vbR9FL4fnut269wxbyPPrqxHjg8brKgRRVtkeVfq61a+bR9efy7Kz9sKj3JYDm0/RF0k71nCUFkOaCZ6CZxTF8UpNKPe5TWBZK7iAY4iln4MQ4uS852MrjJL3SBjZMSsjOUWt+KAklI5h6iptH8V5IAtcru3WEZQ2KUvmBbB2jjJZ5UKNg6Rk7OY0IWIbYQz/7e3z2BxGrygdsGE8maGOQyQcbhiVr6dFhhLaGmf5FWBtU1zKStlqBOzXC5IjjB7VVOH18gZLH23NN5VlAhcFcFffrXjZYuOUs5+JY+oWDjL/bX2pDWtDGB1cvtEl6wpgSL0mp58QyKEEMVSh5yfC0VnLqKfKWn5AsuSMPRxJMc8wKqBIFXWdhw16RABISrdJSgIFA22IEJFU03Jq7FEBS22GzXJTprEiyCg4MZLZDV7t3JogPGsGcNBdKF3wNis4ueWJUP4CjSc279FrbNzqnoBRolkg+Iii1B7YVVs3nu7wL6eNQzOhWdqHrBtw1dnG03ScMqEGh9pMwqS49umnvX1zgRl9rHkGUfKksLe29qf1W7Yzl0em4ZzemKaLObA111LY1KAIlIP0V8q+9CgOKz1XSlZN/Q8n6Fr1vK0aTqGhMQ0S0tOP+ae7R8LPNHFU7w49e4LzQ2jwouFw2E0dLh0DsAU15ed7Jtpw5zfzvDwIJB5RWbFptEdAQjR6SBA0K/TI7lvXlQiePh4eDmXJYiDczAkGvXJOYQQfREAZIxytuOq3m+JFRrrwh+cvVIePpadSDcWRxrRfLALjThoR425y6YtR9ipxBgnq1JIxJOgJ+A5NG5ScM0UzoEgp3gPRUJX9oiWiHutNYkSY0xiXaMJdQmn2nVBAe4eTHvFWSnywSI3Szc5v7MxAHDf3HzAzc7k8RKyUPDMS4FkvZR0b4vF5POQSiZspL45E0I5B5Dxcr5GXkv0Z1tfQsJDIH5BPZAVaj+EE6MvW+3rGX6jMgueaB+B7U3h7DrwnBE8Jq6B+LLs0wXZQQfM7h4j2PQhe3VV37LWsmVGYDwf6UBKFuyJJuwEdaKeAWMTHkAaWjTJZKUMIrvajMuwUowsLv5rgS1MITclpI5zuEgasi7FhPR3OOQV6K5O+E/ryTSSYOxQlkYW2sQTCo/EI0SNoASgpWolohJ4ZUmupiiR8sw/iKSUsfDhxetmrdjgJ3ZoTXabZt0zrhiaiHmgzqVb3CZNCimlz4gMO32JfMZ6W8mDUdRB5QxS2tui184i3mUBX4Gso/GGc81pOSJMpVQpAA4GRvd763gE2YYSDDqQAU7XrNeHDFNcABnDMsTJUnUMynY2vaWeUtKQRAx5HlNyDScrCvJZCfXG64szDIyE8EhsXnE8Mi5NlYBVlSgUIxhQCBC86tWRQpD1XTtcWOps3MlDVyTZXpjblg8Hb8wlIqZ8idKTsXsMUwFe3+XyU33CmtXRYii5VJHPpuHr+xfHHGYs6Mv7NOK/jomt0Uusm/QaF2mtIvc+ok+nkmt74ac0GR3mIVVdsrDMFIztiRzOQIJ3kMgCRyHwKG4HGrg6UICGhGIankezQQURTPA64i2YfRJH3t2x3FFgCY/rImO6Qh7X1ORNDpkxcVwroT+qEGWM62AF/g3db2NbjowgZRSvK2j2gvzZIY1+s2SwuhGLGrl+Z28hOhmnQ1Lb92q6lPHillMfcMpfPfsqmPPNxU3n4DVJgVQ7wpI8FP3K89zFDlf3iFQ1L3rvB34eiDnXG/Jny4Gkpb/2NpfyHty7lV35jLceHdXej6IPIiid4qocfCtepryT2ueyx1n4j7uvo1ptJY6xd2JTGOtiS808wRVIf9C7KUyvIiIMQNI+Jo7BencszEf7xL5NF4ghHK3EDVyANA0Y1DyCAQ9VU0kd0nHfCidqOWYTCryYorQnmLY/Ntvg8Kbakhzp4ykojNgLOImVgTu+kwofiARTQkZ1DUP7XHmyLW8irnN82zSWbfT5wWspjb5nL//1z5/L5nzq31XGZJvEz/Rau52sj89iN2J7n95jWUI9/Trdrues12/L/+te7pozr+oZcurwpAxnDf1wq+7f9HUGnya9IMmuXU2oJGCe4oWhx0Lqnq6GapAQ+hn71RrTproaJc+ndNvZkMBIi6VxoQWHk5CbifXYcwnfG+REq4y0MiJddS2POR/BtD0qRtugTIBbt0R0rdoEYpTAG5J1DJtM1CMG2xiexlATiWiYDDbzCNpx7J5oy3o117RMU17bV8j9wMpWnPfagfOeXb8on3Fzz+pdyfi4nDflUQTFPSGWmvrIyZWtm2XSEqFRouHnwQjiDsWWX2F+GyUMVY8ezyf2aufgnPuuwPPqWufyVf7oVRAazYbM3LHel/Hteak12jZudQ5ZAfyMraWjUxpyVTYSkLvyTru0ghIm+c+OS8sEuVr0xwThoglHXJ0cTkB0XUEIqKIrRAbVF2jvIMjP+8Hlr9E14e+q/zU8Q9+4zSgdisfCb3TIBjQ6uQIQAC7yhPHz2ribxdFzAQgfoku6HRWK8wIv65OFEKjfRhseamQJ1mEbBARZEtz6CMDVH34MnpTz5UXP5v/6sCH/dArwOeT32qyKDWZVERc/1sBD5q//Neq1NEerW4bqBu2413p6t7zZFIr/r93ZNk3PasyirJvDgOfyn1+UdX1wzhzbgeW1Ly1Qsrd31U4//evHTNuUrX3RQrp7JKkdTS5qPYCPJuyzz+Iygb9KzMj7KaQTGjCeTTOQsvRDVqB8IskWvkvmHpdUKsFlrDjK6TET0gk/oWXB+ey5JNwnNjlm+hQqta3qBp+4uWKEVjM9qIlUuOv2WOVhORe00D/WuD4UkzdE03miwY06ADRhgkg7AUPtHbRGqy1KNsKPNg0zlx97b98B8fCdypsfPeevtqRwdzuVb/9im3HypCooIO3hKNDW1HporOCkHzqa0DXVHZ+pEt2EpbTvWLynV6A94BDSnTV1tnIgKVd5rFOePP38uH/+wuZzvkBTkiA80zDU6SialwPCDfXp85HaUN6KhK/MwTHbMuAr+yvUjQ5XHsk/EQp84lBaMWght9r3ie3APWNiThdGCMPsSBGIFoVbig34fAGzuIhcbAoj0Z7Pqa5EFKRCjmmZCBJLcbslB61o+OgchoCaohQU8SR3kAtHrTt4ppTfdD/Jq1rsPR3Zt5o/RNC4fCiDQFJa0pRL3gZNS/vgLNuWZj5X9/+vS31gu954KylCk0Zf30gKjDrhjxDDBUtBljn6gzFQA5wzEd2MFddPPW64v5SmPKuXBq3VdQFqBp2OTdw/u2oA6LXRHO/eSYQ6ecKV7An3X9JAX4ylO7PDVw1ZlsHrG5e53SuMC5Qy9nXeoSJ3vL9OjODGaZ9BuGLgr7PaWgqKxXofIprqx/NPSO7mr8RAJfta1HQ0syqe4ahZwUSpgJwiS11O9vrKRY9RcHNoZIQAy7dYm6AJGBGwJYv8i+axUIrg3iXMgYBFjenL9WTf6ODoo5Ys/rYqCLPTJa899M05aqmlJIFE/2D1+x4myRxlw5+sQL3ssv69L6MiqGXTJUEcITFl2j7qpngtI82rrLPGvMqCl3Q5iKWI4sMeh0seQjz7BSpIUixsdfowUfxaoEu1E7F36ME9YEB1AjZRSxAaDQtwqR2GNRi+0KSYOUF0ZU1O7Av6Kadq23wE3xh+NvzORLOeeGzKAiLFv7NShIKT30JfvEqOF0F/EsyghEoAsGe+ZF5CbSpdPl/qwVRgMpgQ1IUR09dkq7Ge7qTzhEZvy5FtFhfspDK79fU+5XCytgKNoAhQoLB63J9AlwT6jODuEkvCIwqT0bLS1i6j04yACIH257kj8A3jfE7zAhrTTUQpmZk94TAECmysUp9Orp1F3m08plsc/VtduZsvM34BzLfbxndKKlQcctzxNhSxMH+uEJi0ku8sM+QQNkXwVneGKN9uvtNUcbidMSbn2lBzDVpwFJQuv8Q1BlIGhsQGNPIrG6sILUHToticBt7jqgMga/7Rdctvedzz/1uL0ehK/QFkDFsGj6orQlBTu6fbPT3zEVI422DOPumBeWnvBGmfOqJSgBAERyxotSPdxjrQLgeGC1EBJBrhhfRoqlvyh63X778PmHSSq5rwQXBvk9XftIwni+bp8IyZPgtFIQA68zCGThngj7zATJyPS2Vg2RHA4En+ZkhmNUy+yuctBPxsi4ihHUsCDsq1MfdkUqT4i24KT9ZWHWful2Cw89RZ/XD2ZLLSm11SezeRaEfVZg2s2HDXf5j6hnBSBszBYtIgmtXieaa4MHzamzB8+UBTko98+r+2hHgbo+gu6nReEV5XRCIJj6xyHxS6Yrfn8XljYMlB+g7mlJb0YVOZpE34TffbBuD2fWfc2uOc3qgKg+ThJROg2oRavjcK3A8sb5+UOz+wJ1Zy8WiJvZ8n9mJw43U1RtLT1eRo3Vo4Yf4/pO2OILvZ2uY/Ad2Q2KqgSAaKSFbHUQ0xFie+YC5yO0cj6VJOp3bwXlCqbUKFZywBpVDDsfL0UoB8YNrQkL9SRUhVNmFrzhhgReGxSuA8C5SvixkzLgowoAASAm+kD5G2BC8w84dpWi0kP6q2lVgpVJ+AeUfJndaC7BF4aNGh/6tIQltt7JSnh4KB0aYSFNESic+6hP4EsInNefbTqrpoFePe71nL3u5dyfOg5C+ueWH0sF4qdsjrRXtL+OaIhfYtRFPYpGbHwd9CtCeOovM4WkuUgQN1UlBsHV0iIMPm6fLdmtnkNj1ccNl++rDyXg0FAF74FnZ9QLCaReUeVC92pZcx+0knXHSKwVUcaBdtao5NkeXOn9sFGEi7bKSVBOLfuRD4oGt2MROKyWLtAz3AOO41m4qnwAfO4soRGVjqBHsxftp6CrN0qW37d85+X8uHLSxMO2Quwz2hyG5gO9cCgMQrSjmSSht8YGBXkNGsJ4+vK1K3QKMTYVcQJkeRJ+oc/syunZxAkvBM7QP5cGx9rtg48LFZY+GU60c8KkG6ycMQ5d3BecsVZZ09+DQYpKG5N6zXDoeU1/0ZS4GbYzHtP2XkWpneko1aV3qT1ZmwADEn6844clH55L0ByGKOj3M62K7ALOTkyzCr7aq+hJEMYiepB44MQAbClDplZj2zpvoYEMehXSB7yDpihdhtOTMtpymCiYeTQ682hx70mHVmO9VCMaS1v+42l/Os3yuBv6xZZATaS05GgIE8tcI8gyrjyTgOoUNu4svjnad2giD0f7ErDs4iW27Ap5Ud/cSn/7p6l3HSJNgLVavI48AA4rFdli2ukaL0+l1yOMDhYMhPldM3CPiLhSn8GtkvyD/rMozgkqgRiE+yLe+Wj0mttV+udmuNVYe5PUwpTltgtSaFuQIdmkNy4KWxNB4PQtkIe9iEHGvU6ME/+kJRD0/lcjt8KyyEIa+nI4h1oQKESLe907hkdRsKjHBS9dtKqA8ORNbbnmRt54LsBhgX1s1ab93sp5boLa/mHP7OU936k5gCIsOx2i1kORXGhzXutb2pWoPk1XoGCD+vaKUpif4PRpmO27Fm1Hlp/Xf1X9wGs/aoLgl7+Y0u54aJLhEU4dH9/NNTxZFRokjpLfUpeeCWz8A7pLleihmHoRFsWgGtoucmRIdqdzU43LWKlRD6zUCw76nQPCHtELTmQbvulg+Nt4fH2RCaeUfAGI169IxhfkYj2OvEsChBW89UB05ztkCIMCtLipnivJw5fN3SbrFgM3URcxgkgXdm6zJLWJhqUddtKEIrCakY/TnCiNfuBqWxOjReo39R/TBPM8zuXct3Fqdx3spS/+E925U3/uSqBtR2XVVN6J1oebMpKpwpOG71uw+AJJvaMrifgT3acNUaY63JjYYs2JRnWge8U3TGhkmfqu5vNWg4P6mk/U/nen92Vv/B923K6lamOLDHvQ1WBNrSbVGg3mCto4hgitEIhJKbACCuy8xqWDf3qsH/87EseAm7Th6LzevCe8BE/M+B5pEbTOxxN4OfxE/tGNsOnN8zRGXwAaEPcel1kV9+77RuuGiB2/ezMbgq4VcLxM8rUsudZo3uNYWAIzvBrGM8MR61lmEe15aYGpGjOyJiQsQUtSmH4xKjBucaUig0KKzfmlYzRTENLRT4frTn2S3nw6tQOBPkfn78pf/hZU3nirVNLEnKiXNOIx4qJoX87H2eua0MH0Efy1Z2hquV//32l/Kd3LOWu16zldb9eT/5Z2k7A1fUZo0ehtPYR0iSFxRxovOTlwOC43Jj0W5+kWDJkQaml1oRp62qcAks+dNIZn4znFfGKr5DZ66zlIkf3wqIwXxbNyoHp0slUQq+DgCcrALAvY4/6x1N3ZGD6PHBTsq3CvIFcvek7zgZ5S2VAkjNpDf6ocDpl3PmRZdS82hBqUzSufQJbuE4hwkLBDNzW7PSjznjcVxjMEEd1t66lXDmT0GDNlqsbaQBq8wIcbpLptax8EAoazZlbgf4skVamHiQsvoqQY+tMz2rl5dl6rNn5MpXttpQPPziV93+0HVvUdjSubalTHkYRNg4ZXRAFpdm8px0bDN5tgXb50X6lIePhjjKb5D/qzykRloiV+cPKSuZ5pEeJP5M1C5ECbuxICeQ27NP72dEres3303R6Rek7GJeGyviVPljO/cEA24AlrePrn9k6QGE4tB4pCK7PGJUeik7ENBp0YnD7ZlwqCUdGuDSw6DlsQ9dpqErbTMSdkZ3jTZtchfumi3Xz36W854MiUFKv1tSCsgFQ9EyROXrN7WcryWKcnKVWlj3sf8i6QCnVFOLdTmJGNcfnwlHN+5ddgLZ1N2Pd1sxsOVsppXfSDUZhIEBjg+xyUWLk9ptSUZRiaFQl3LJUDfqR1YcSXd0YgI4NATIv4KuhPK8nAkjZA4D9aeHjmtpRh3nop34PAZUV47M90s8rHmGjsc1cfQUTU0NZQPNtW3BzDggj21DZIga1YDyn1AbZnns6OFIMPJPEzEwoZlKF9YjmBWIkxQ3U5ciQhLcBJIeorCiwOWbYo5D6yP2zpctQZhbiycyYVQ2t5w7nATqb43O+lefq/LmdAJTMOyu/Dill/RaYNDFyUCR6xDRvbd2+6Xp1DmGjH/S3ArhWvpkLoUld62DjQFLhjlCiT6OjKjpV2p7k5A2QdkYzbmoYApEU1wAc9dPE4OFMNC0s5Fi4ROjRFBkucXnki+A2hwk8o+tIQyDFUIG1k2jBzkTi6yntS9iKMUThxheD5IvxpD2+LbhZErdoViC7JIdQJW7uEaEZ7SYEKEKIAQtyZJ5OedlZODGY+kybaJDFdRBFU5De5HRtByphu+/xFsaSnj7B/A5LzUITLDdox/HZFj9m6MGs2qfGQifhpIZwkw/e84yQSHfUD+SCvtBGnqgjwmftlO12zM51UowUXrXmhWkyppOkOGlaJs95PyCwgYaowLqvbR+cmgylF/Z6IETn41x8uO1B3yORhc6BHwki7wlBwzKy1pzJxzTi9oX3rS5HmiNvgikk7nuuwCyXOwzhn/C1AKTGeSGDNMQxUE+IuDrNxd7LABToQldks4PjCJXAApNWC8Lte3PToCUKdQTu1ReIbn0HTGOpQPmaiMJoIJAhaf+68w9klKGdFCuJQS2Rpn13rc6blhozWPeUbj1B7V3pgkRISGZUlmCl4HNwBAP+tHq6/RdYUeOI9J7orAztLg5ugaPDBIC2U0ff0AiEpFGWoYvUf4yTKWIy7fqAoaEw7sWMG1HQaJoMOf1Qyzrc3DZHGnIJAx7MS5mzAtG+AcK7cuTSrxFCZu3rvVMEEIRaLYcmJ/jcR6rg4wO4yS4QnsnEEB22LYmxTztySMX+cY2aLa+5LIEI5OF+BxVAIpt/kWEOlpzqwT3W2LGFUWKsY1HTQpHURyR7mpifrKQpDmu/9ihDvzrFbOMjsI9yEEk5cD1ReDP1BbLrsjBYE0NqrmwxfUAeAH7FfdxiPaxssoZhWI4pnYcIY0tlvkr8M3KG0RJge3d0joTBHP2JugfeQ8hB0KDwN3R9Rnm+r2bJ2YrqyG4lYxoERFZXiya+tvLYr6bM6aPt8ho2OYF8jiIWKlvVUNjRYM7DzjhRi7l1isxPYTh9HxrMqrU5nyAsn/PHBENGKqEpo0Hkx9gx6GbY3TXsVaLu+Nfg5UlzMxkSOFXi65RSqC96Npbsm18HdbedytVt3RHYs1GkSblMRyEuAJJyvQ6jDDFVNqoCgrJgFMO6Rm3tG0ucb8Dph5eI4+/4cCrHB/I8zv6zUBcGlc20raFAhCjHqxza49QcX447oHXiU0QFnO9d6NoTtkMx1UcrXideIWmCRcMZGoA8CHc2ytFwvs9D/TSahelgva7bvVvWKsYs8qW1m5gCyVHGK0G/OwdlhejHoSdPJY1N5enm1sk2wrfO5oEiC2ACF+fIXrF+z0mnpG3MMZvSchneOK8CkSRC8WCxgrNjuT2vvIdGHPTkiSBXDKkjQdWOwE1gdCCzVOurG//sdlPbOvvi8VSe/PGl3Hp9RQGy/z87l0y4k7+nDlD1vneQkMJGwtMUZaFHnbddYWO/BrPgLXuRowfMzJK5iLH8wP1ree+9a9kua7l4WJ2AhAXhPeemOhgaKDvf3gtTCOlnPMqbeYCv8cYpgRXJccdGqbcAWlfKEAy8ZRGJZBxI+G0KQVV5P/msRB4YokFGSamZ3VLswMcpYSicqJyMNTeQwE5DAP3O6w65fC9+CEostFutFxqIkAMhRRWajhkwqMgjQDJOiMFQPB/EzqGygUfK5TnmBITr+JW1Dxxq4VBJgU/2M9yv2XClfPhyKY982Fz+zOfO5fM+ZSpPePjULGivvpK0dJ/8DHV++N7oN7/Tqdc9dfZtfOBkLW9611K+999vy6vuWcr1F1mx6vhAIbWxpmQYGIhsYYEAXBWHFnvtbEqilDCoMMbnSmDVuhILQX2GHY4SOIsu16nVJdKRAaT8ckduagH12VBIApToNYsyo41uuODmVIJI//wsRWSRgu6tJbe9TM4F6OaRNLAI07iV5WdRIE0RpjRkuqd+aGYKd0AlIVU1DLeYCxpMG7nQhhALzdqT6+rma4mwzKyDQerhqD9yeFDKvQ9O5QVP2ZRv/qOb8vhbvIE7s5g+uBUNeAJyau8+nTC6n+SabFYImfJA2utkLkMyWL2lce16qa1kVJp8x4+dl3/wyqU8/EbMuoj5eNHPngYHFWVjT5wV/A8OqQNaWzODD0nhFDflHbfiTlHD9gFdsl9igCPsM/bT203+E5Qif1jlxrroOPpUbjCI5idxJRRDl15n/UWRXVcCThFudLQkXbonZ9vxnu8hBwCym/a/Q32B4PRbEUlHHf3uCsjVUlyOmlV2L1mWTJTQiXOeWzh4rIMoVzi1KeXy2VRe+pkH5W9+8aadWVTj/rKxo85zCa6LQCGiQEgDVpHyKbi+4NMxveRp0WFM1dnjGYucoIF3FzqzERCR4K2+Wue3EtFYy1f/kU350OWp/OjdsgCoJgnFzb3g/EyRlRIhNHXBWQHOZ/CatgF9YeH3nH+p05Va5D0zCJT8s5pLgsaBoqmy003vpzEFFRy0SWGR9uGl8iEc2H3cydrrkRSaDxutKr9DESupeeVkRBJwPoYtwWB5IaQoGQyDAXQrkKMwBn4YgwkW9J/aMNdkVA9GJfx24mQ0GzykVJVPH9LcPtepjMnOGI5Bw847qokZYtSyxpgfuVzKc580N+Gvz1WLfzDL2QDw9vKGE6bs1EMMpcqiomA6fDMeYmHHOFGbbPjIcoNuVg7uJ6WSDQ0WB7UIXkspnstf/6KD8uibpib8RpsUrq2BvxGvA02gXWFknCwEmwGpoRWhMHEbz8QysxzxdHyiJbTwM1ndzCfwJbI6SPyJPRSaYud8bvhcwI/7Pom3g++MaUMv+D4XpGAzdGB2te54SbQaEDcdq7DsMfGsQQzB7QbHyFOHeXquBcZ042gOfJegvlO4H/fGo01GaQlr9+kUAYRC9+MbADARUBYS0urV4bdM5fhoKl/3hdXyyzZptk/GwE9hIm3cmEy3TaMiXRM5hx8RoliprR83tNO/vW8XoHhPzv+rDsJH3jiVT3/yXB485RWZhKaSUJpdYOFkZx858PhcgqyNzLHGjk9DsEFtXxtaTzquWnfEKDQOUNJhyjmmlTStvxd4eYCqPRci9XPPxxANpQo3HknGy5S5iXVEKrwBn3UBjGkpmijOrFYnjb5vGSBka1SN+WkloDxrFaTo6jyFSePFe6oqZxG499V3nZU2+igl1JlUobzHYXLjOfKUC5eZK4tYC5Iti2WunJfyJc/dlE965NT2/28xf4KFQQiCDszqGszNFoDYxe5dQ1gTDAak58p7H0wUyF4aiL4afqz/e+LHTeXkjJEiYRXzGxACgfIh30orEUpQDYdFfALiYuSmVSDDsb0uG5Fmh2PYRgzfUU+hiFGmI2AI0GZYTq7t7TTG+GNUwLi2Hw7A5WSnaJBQH6MabxujUUdFYZcN7SeTNouDJQJleMHa2whBA0viEkTTM7UcWrJ2s8HWh1wbA96VLOqMv2iuK99cNJDa6szh93w/fstHMCKTDekMvzMftCzaz/qszour9f+iZ1SH3shf6PPdsL8B/B4cUrJNSmnzVQwCIYMwTCm6EW5PAwdYUh7tucHUZvSBQ6kq9VpSXQnoQGYgRPwjMXhXv/5y9Dh2TMpdjKUnB2GqiTm3kwdCTC0yQ7USDek2tY2NN9YvtM09CC37YbH9+6jP+hUiW3jQndquG1W2CLIYK2Raa99tOmQImNgYDAFxaU0G9UJOgpurloaAEFeyCi46HBHIqaORIOFlS1n1PIPwdDJ0NkcjJ6PPcdkC9TVbmIlTPvkY9DBaI8cmrGrMXKyv11V9D79uLp/8SAFUPL/tUEhwnGibrHzKAAswhvoS3ieLOmo+IyOrXoWDBO5ji31qstUmCuVA1gvHLtIUJEPisDKUSuPh7nRJcGjxFjAErUziUQb4VpJeIIA2qhPTEjaErGyo3scpw3lrwnDGmnkhe5nj81k35NFh5WB3TAZqlICQAxyCrMSsXKFiSyxly4sCw+oyciRFsc8Dp1oopAZHng3amohrlprhHh1N5qU6ngEcy5X0UzBnHBn3LGYRMgZWDCEouqXwr96r8/+aGHPpcAnvhhyJPfNr9XFzMykiEp/0dFV+YeCxG1YEB2SsKmrM0frjKMDZ0r/9A9RfkQ5jLxS5D19CqGhk41N6sEfciCaWwg5ErzJrdM80hImy5yaa7NmOxGP6oWehaKop2StF5VmhoMdxWkgzKKsPktwZe9IQeRxtVmIo2OuDwWDqpPNCsPUSQZHaBlvNor3CiSvZ2to8xKuJQ8ExQbH6AXl1iRA018c+gHEH0KT6nRZxOBgChgYJjScJb2F6YOyoxdp6dlqM4cVr4m3L2lMIGk2Hzxd1YM1bzuaOwk+tPizxNIXTWyvvh0LFXDmp/9q2MP0AE2FMGUVZ09e4ESj+0yPkTrdr+Y+/tpTjjZZPW/oxqYXJvC2sGMErblaikpX9HqPDj7sGRCaFuQ9BlINwNLseuJBZlSd8SPVQOl1skTkqfsgS8NQ2NoyvxekH61v3MUq+BuTPQ+xyHoGV0xzMSA/m+pqg+nNoVwAcccFRpVzbFZgb7NCCs7o8RgzILXvZk653tQ6pooaZpEXBNJXnjkcYV5I+KSWd7BG0flpTELsYnu5GVVCZxsq1ARK6UpVlDrPeRqGAuq7//itrufdB8QFYG3mqsvbRBItSan9NKJwIpLl5goCy1OFlloS2VycLAqhujGuoaX+32ls0tahNEL9mTQUWp1XNBvyV9y5tZ6NlccddQIYWXuP1DfiXPe/Y2TdPRx0l2eIqnhcH0+vRBfAlb+2WQ7irtUC+I8dBO2+CycorKO0uRTwjPQottqplTQCftYhTsLKPw42oU40RMPwAYXqVfWt2y/0kqhr1X5sC8EPRcltTwaRd4bzWn96135xZQUShwZPnXVNHeSUrT0wExjEtOFLZNl4MR+nlYO14Q5Fe2LgAEWx/7+CglI9cXst/fJtY7SW/TS4OU2TZKkUSOe0z4ucynY0SLR1t9ALOUIgJ0HUzfojTW9TjtJTv/LeyDyBeMkEOENWVvSs2p7LTfOBUpwZ5ibFxcAKCrBBnq4V4jVdAMH9PBpt9YVSYgMGoWXze6xyF77zD3AMIPAuINmw086KpqitIQnE5ksPGymbJkeH9af+um1DJRZFZxwzB+59amMNanZFlc8btsPtCEmsaJUlwWrI3dG+SpWm2vo3Z3Pf9sDa1+V+v/HJX8A470VoU4HAt3/vv13Lf1YoIptLW0NgpNdQvaPuMR8GFNKcdhajGsfoYkgq9HiqW4FPztu0tX16G5a95AN/247vyax9Yyg0XJCcg6CZW/MFCxfZEtoAHfzBme5OE4tZjYDXugUx9qCwVrCnzzeoYi3kJ0xWoM58eUusN+UbCc0SqvUenb+dPcJyPSAY+6OYcYK612xwHkRI4/GxlhmuhdoQ7ES7FaJVoTIJsTIOIpMHrPeAqaAhMhnJiMonrar2fAgWuJGJLbFDxTGi2C2BnFFUrs66UhSAxNTnQHi1Y6g6/a3nbB3blZT+wa4JSt8uuc+W2j17bP18URf1blwWLz0D21Kv/4V79Xqusv+t77S/24G/fReDaO0u8h7K29F6dFXId/B/qQ7koc9fap2XtZM+/mtNRrX096uxrX3FefvD1S7npenkXWXDuXwfcQZydFEFSUmbdMA75Xj2Tz0KoejU70s015MzMQtAbI82im4hzGt/XugaAjFN4OUePWC9PcOQ9Rno+xQ3PGMVSxY0QNUnbHRIRbZANZ/FrtIB2ZwUc0hn9ndu+4YRS9zwFyzc9gPeYRq77Wf+lo7Pspq0/JdjH+mWNg4/BoX0K/d9e+AKKAmwLydzxDQam0RSNhRsKNyijtDkhvMZy0EcpV07m8sKnzuWv/MFNefpj+ppzm6gRfaf2Y570Hpef38nl7Cv3Ws8t5eS8lJ/5lbX8bz+5lF/5zboIqB58QtO59gp4JnAQ+amo/ICAvC6R8Ti3jdeyX8cjDnGaEPvi8N/zPabRk8yzNEWDC2vEvyjyWp+gGPeQPJaN1mZYRyssRz0wuUGehKe2c/gVG5SIAuC3eWBMdilJhgmT2No7kZmS7+odXiOso2EOEVtSmYfWdyTKlVuXCQ+CcRxGXSvZhYYo6RCPzSpO6c4nEOrWn9UhWDf/OD6Yy6d8wlye96RSPuFm2VAj98Z9CcScZCk9I9OFOzheU9uzP8jDRSoyxByis90KomVgwqbO17q4qZS3va+UX3znWn75vXUvg6Vcd0FQhr8BOukGr3BQBb41MxZGzGZlpFdhjSO/+KlOqItpad+zUPEZD0AlgxkYPiY08sM3irUP7cAbExrDJyY6pelBQpTdh9LYuzh+K5zkgxcAWdlUVNAq0GauoNtyYH8zWR8VRnvZhDY13ijhgt8qoBVfwZuKrCWtw2O5BLTQBNSJJA1bZdiNtAmIyVQYkBwu1zYy45ECs9VxNIDZ69rZXBW66iTbbdfy4MlUds1ppnaJMjeZpr5Tqz8THmHkQuFXKAxrh32JJ+iG1o5D/e0aziaoP+pmHxptansVHm3WcunIpycWaMiogfQL85PILluqNHlPCGzUxmDNGnP7UuARsrEQYN5OTuubmKRkFc3Lbp2RcmVzFvBitNiZ56w8umH+NescuSXNRLvlNnwchDwt7zZgSqcqk6LDM15O1Jp0LgCZ9CAtWHG30hr24JuPYSWyoiMhhOBKiaLl82B7uq5kcMm7KgJrXEPgEzkVpgEeY4Xht+h01lA3h7+IvUPKbrQ+seS637/07oZL4mQJ6i1wCpBPxDsG71jnWh9IwgY74tr7jf54mSxaaotlBmarVefDZN3q17YNGO0kPNxOh8GibZ+lvhpLYa1WmXdvxhN9DikLqbcc9WlkqO2pEEGqNUcVuV3vthUvyu4RZfGSZlRl9KFZrQdc0glY/B4537ynmfnI6KqScTlSxdcEnzNRYYx5zw3nTVaspkCSs5IUANjYoXYcBAhijqfSioXk2LPbDEftb1QY4LIcBzYNCcJRCrCPEZSSo49WMikyj/f6fba8bKukWZQySoZgMGQ+uJQj3lRbdao5BWm8fH7sVoHo06FDxkdIjPF5SmDOgN7geALi4vaj9UkaOIccY9DhS59TZhwkXRm0yyxSzOt3Go6VCCMWzmQMBshGPm7IwfSyHii84vBgsfoinb13MD7RqnLaYKdIk5FgGRpO4Dqt5IbVoyq578jBQR9JgUMxxBGLGpVPB07V+zX9Euw0WUhArFH4qLfGntXFy46VgqFsEr/YARo4MIhMN9BYEmra5BH9CZbG+ta3vFcN0djltkMxGk0gSFqRrAdHW5e4J4JoEPtr2lsLijTw9pHCD6GdKdM1HKBKijYLuoXF+nkClCILKtVGwMYTxyJDOtNmB19gHRwUhX9pcHoO0wiE7UU49sZxKM8QMoXpVmO9kSRoK1vyWyCs8nOsR8jHsrK3xH6aNnoQMbhuCuscbT/RybCLNmiDtrBl13MBWO+5jFFa4h6tVR9oC18om83GjPgrihPK9UxDtI79uRRssdbttUxGB2yVrW1mLWyWjSyQho+Mbu1pP1baI6eEBIw1ffsyW8lHziF9SO9bg40+3i8VGWRZ0qPoC3IgOMjGC6DqVzllOAbiRnylkyf5H7fZGkwIAnUanZxTvK1IDqPNYAIi8f406rYNUffnlEiMnlN6e7mwEUFkq5567EMTZEMUrazRcBpKpZPN9dEPKPBkzUVjxtZkn0VS6GBt1qVQrq4s8700XlpAo7XyXphtY2CA9hDztyiarNqUR0dEr7sCd3DT7S7Pa/OHlUS36yd7SODAQJMp7bHB5KgsbR5fY+uAkiBY3EOfL4YSXE5pI0/3KSBTytEE9248CyUlgKsKAd1qeFrrAsXI5i3BB0cjUHeONtxDDe5EbiGeYlrGEZH3SWFxv3EUWPPjEIrFtMusTN3VWNJW21HUbTwkRi6OUx8XtjTRnPt0RhxU7nOQJjlqdGfxCMoGndRZ3pCuHMaLyBd8G6QcV0aIFChU+tlUMZWBd32wvG31nZZKrvtguDD3q2/M+Qg05wVRpJn4lOegGjWLexu6f4CNLdLc5VgWbkxVACTjcdeYKP4YiGiZ40CRA5J0gtpuaPTWay1DHUrYZiqEXLJSsvfZICdcktNm6cw/VgrMpxwOau21o7a0EKhyK5NfEGrULcArcKhHgF/dypbgF49K2Wz0XD3ygltxYa5tdoT+JcXH90xhOzrJTqyYk8Fa1hmGrRPoUbcAr57/NiZl15KZLh1KFOAc40/CHD6EboRETjPjJHPgpqXKNKW0cSW926tfElny6Fu5FtlBlMWVVp5KTqCuRVec6wP5LPTG/JX6T8pMZl7xGHpzhtpv+WI7b2cjg9729tcE0n0sMYkvIjDQnJWlXHMnIM3ZgtbK/TQV5QNmmXUE25wJNDZP8f0QEaSEIxDS+4L3HSKJtsShEIPUXiYGBJ00GPeRELBbZNMOMT5oDBbCllU4lnLf1alcOJzL5zxtU17w5Kk86ZGl3Hi8Pztkz+VhV7Kv1a4RDbmAURn76mbrWv82oFyzA9epvO+jS3nt27bl3/7SWj58eS3XX5TMRRtn0yI0JuFWmrK5mVKUhHlqfA7e9OxojqtA9GqYvui14BF3nontcl5dTa9zrh9pRRIYvyvcwpcCAklK2lAiCEQ0Mf4jg+aKLObfILTussMKyZeLd/w14BVLqmrbgucHmMG0HbyLayg0x4pwzYQuWjcfMRZEakBuC5WJUEZ4xBhl3bvktPsY9k2eXRtJ7qfnVEs3XdPXw30/8GApz3vypnz1F87luZ84j/u795PNSL63rxxYedrT1X4/FBWQoeC+ukt5628u5WWvOC+v//W13Hx9XQmoKEY3OkULPd7NQjOoJcTuqYudZnIZ64GrPhbG2Seawg6Js7L85tyPicoPh9vETMNsObCHJDz1lpFKtJT3Eq0ZfVm+jbffrHTIpYmnPXWjRrskdwBNN2i1abTK5nTbN1wVG54UgDF9gDFeNGtY62jIuiK93VNYH0iQygY2htzIgMdpxpAM8qAEOGKSiPdpHw2zIuoRQPs+l3J0MJUHr5Ty0s/alL/xBZtyONctwLFzLvb6T0VzXxmy74N4hO4C3Esw1vEkv6BMm/a27ywBrI21Ta2VCljN/79yOpX/x/duy8+/bVtuvIRwa2+lxA/gUyyx8EmYeJrHEMSs2h6Bp8QaJl/XrWS8Al9lW766AQrKLPzr90NxWXfa2gL21uhvagvQEmidQ7QRzcjV0cEko0/n1NR2RdRD1BA/hUBdDo1JPxSiBUtqrmFlAHiTY5fhSRWiVQdSrNiZdyAknKjh7gI7RooF8hqkSJrQScJy0pdBczQeEeU69KuK90evlPLln70pX/dFBw0JVOFvW4Br9mItp363/+o5gXUlne7F3vbV0+flmj6vPhH+b1PDNXxNbb2szOPreE6yEWWjSb1mz8ayatvbCcX636a1y++fnpe23v/lt2/K9Remcr7U9x2qdspFJVO2xnZ863v3cXIV/Wfj35Nf2CKmSfHoscEZcJU/V/k1wfA1/bXv5HuJaoyeC83wzUihMLIzs7fNFDXrPt7QvfYqv2FhYzI/e5CwIA3hP7OOCfkqIQbwJ+rRiPXsgd66u9MpaBFvET8MHQzB26vRx3DHnrAR7pnDY9qJDQji8aXa7iocVfif/KhS/urnbfQwyLovnmpzU+5uUdBKC6V5zhTRLltG7lDqYY53w4NuzsC4U7I1ov03UHvk5ATqg9auSKeuCHzsw6fyxZ82tUVBlWlC+aPjqaGw7Rjt2Owsvt51t778ROa/gBimgZXmIU2WjzfQnFoT9fBOfVH+UCwPUaOssLQ4kRM+ZNUtPPfNFFBgd4+bJ2+IVuV8FMcrSFEah47I4TdLzcxWMdDJXk4x5Qx9uNnKYEI3VMNOC73SzoknlzHN63NIsl2z7LnYtraF0+DTHPkdWugyKfwOSaPZNtZfYGB943Q3l6980UHbCqvBKGWQucWjPfU0MBO6muLH9qF3WJFgfGrZez+WNKSaBYedED/WKRuXm0gQ6GXOJAiwVvFZT9mU4xrZ0GegFN26DcrFj07yY5TJ0kFaAwJkDMvHZRgHyifTNQmiz7h0jHgt1+rJIIJ4nSdDVfoMkr1s6qR1yZ4SSTen9nl784TEp1ay9D3tpBSMMyV2MWnIP2Xt5U84+0A601w5San66VEhi4GaCqKxdUNyCMIlvPGmeohJ+apgxISfYJzYD4DBZeWTvKZR00dnHkcdiBadNoaw2tp2M1naxllW+j3z8XN58VPnttZf8t1TVh9oZ/RK80I8z++ZlfGz69iqdUyfwYvFrvvHGsMQY4b2crsSk/E41DY9+ua5XDiSfQNCMxLK8sYRyuNxS6YLc3vAUhZm67udgkMmXtmsE/qgWbwPeM/Xl5QOUfh1XuDGz/BZElqOKRJSHKCHCair987iUszfu5YQK83tQ4NCKNen8aGd5Kg32dbn7PAa/rBS5I7nZ0BrIa6H89pghgQd9KBCebP12qYYG0/jZq/GxvlfIzTVk31lXpgzFjqedE6CIApHtX/11sl2Ks99Ug37YUESrRo02GhECY3vSGLM3uFU4n7tpwkkluJZEd7mrCM4JszPhMMxBiQmJRTaX30d51JuneO7IcDiJbJmpBlEATOzxlWMnEPAdVnb7ZrQdMCO+j6YItG+W9G7B61MSd7zOQrILaD5ve3wxutKUu6GjJ9XxoqMBZbb0gXXDAARc1sWoFcqOFEa5ctLSJmxXNvJQElAci5OVoSAiLxwx+y4WUCQQOP44dSSXIHrR3yHddeuxPFi5sdTDF/sN+0zOBgoaolLGjdRzI8nMRU57+8xN7siGeZ/O6GsUotrG7zGTjnUB6KBpQe3+YV2CXvCWRZPlOC8XLn7yHFFvrlmXj2WKCKC7HssvO+jdUcgzSJ0fkpWLzSJlsSSCyyFAS1xZqQKFQnZd1q+CxkILcc/sZBodXnNw7SfXIZOtVJHSg4rRAci1BdIqkgY5bB1li8m97ZGhHxWWYkEER24JIf9JeWXDZv+nJ0J2ewn+JE/yOZC2KH9B6KA/i7k2BqO7H6oTzYHwVZhedUXBVTYiFkZuiEda1Sy5u6TGsdHE2WTCo8Kq7bv8EDWxXM3WFNGSxM0VVdlSIIxck17oXhe6xYUtlVFLwNKW0Zx8sSxVsx0MDJMZWkbHJbyS/95aclAkuaslnCA4KzdmCYG0NInW3NyizWbnKjctBAN4pkmlRMW7dCaCuYxGea5swahdabkKH2cl1DjfEqg30bfxBdhapcUbaOlyxNQJsZM/DaMrEBHWn/CQ2mmMjkwgNSsf0Kk+s1XZrDwJBoEkJp4muw8jRSBCmwtQxl/077VVniSoBcjXLOMoSKCYsaIFO5h4Ui1umJ0tSu0SnNzshx1Z5/7rhB/kAKVqpx4ZmUyy6d2Gf3rXnwdbdCvpBi4HlJyiapKG7I+5sSiZ7MiozYKelvLydlSfuqX1nLdMcbVIwXurAEf0JQA0xC7QzIyaC941d9jZR/70O4PkIiTRhk9QVqcJ7gys+pfscSRHuxvZxLB+Rv0Fw23tA1puFpf0HU8DYosbUZOaeFWnPEEcxuNh5XJOSBY4BWZzhZfZsdhUB5eXufngYTCcWbNgWDVzTFjq4g6rtVBGNk4wgffh4Cp2jOtD4BhqjBatioqpfc3VtX5LE3nk5VUGtXc6Xkqb3wXWWWChmGuHfg7uGoJKYXhCysZ7b2sP4xJksnN1p+ehdPLaVHDXsEWdcoDv3Y7OfrrX75+LW9+z9pOQGpOQPVUu5IhYbWinFnCHJgnuAlngQ6uv4fRc98glBQjWI4dfpFR8YCP39ST0d41NKZGBdNLVM1yAfqzkTSrbsUOUhtlgAgtYRMVe4OMJm0UQ2Unk0MO+rRILzwr33xtUnKMcNuCzkAfhgls3JQoDI10rZ/YQ7rPvbbASBA+5HUzRsyWncMbfataHXmQWLAdelB5ngmJWupCmYuHa/mPb11aauzBZinbrZfbCSA0DaMREFH/duGrIPBRkXU9s3cHI4GlrVQd0yyuyad2YGzqmYfL2qY87753Lf/glXULcBV+6htCYsz5vhpRoa/ygnWFdpQaTWr6GW60RpJ8Zh0lRZdnW0Qfy26NSLaYNHEL9Hsc/qC0zbIaAolTG+ZYdwUNMjKta1pBQghyj9AOIwUyBghd2iDCqELwWnF5RcPazjONhaFK4shOoet3/ilMNFtSBnckpiywevQOsBhkWyRhxEhioERzaKEmrUqUOGt717CjmDHSMKz/2exoH6oSuHK2lG/8oV35yOWpHB0tbfFMfdOTY8iCJecWA6juHhiFLAE/21C3jm3b717vYfkp12scC5RCTCrLQqe+/LpleV0RqNuEHx5M5Z0fXMtf+N5tO/nouMJ/zMM1/6HR3PbSS0PLDNnZY88f6EhNoa2AK+1iXPnGQIDTes1iaoEecnaNugaJZB+Wl+vtioqoS9vhqDEjh6xs8D49B0frtNf/43yMOoxnoIHtCD8YUjigyVlCf9pTt71M1wJQu8Xp4fPhGIoBcfywSVZMId8+jKlwr825GUdBaMMutREuWTu8AWHAAuMBbdD23fs+QSN2oS/PFgFd4Ez8yOW5POeJB+V//fKpPPaWnKSzzxYEbsoUHbQqv5+/53c6URo8dw0KGNyT/rzynrV864/uym9+eFeuvyhnAPgU0GP3KCZb8wx4PBxI+e0DdHOtXoTnqOmSj8Fh1a53rtwTTSYYHkikNo6VldSHdtM2dty4hF7AU9wAd8IxMou80I84hfSs3NSxgQy4JkUWalZebTXgVQMGVjCtvBuNRhjcNEBctwmUQUInkigYVwpdKmdHClh0rvUanxEXdUWErUqIRXigSC2awpPnznZTefQtNUV2Uz77KVN57M11PUANFeqUpPoWrtFEJstDEms4gTrlmlRMJPeeyvUxZP7W70spH3pwLXe/q5R//eZS3vDrSzmYl7au4HxLc2JTyNna5UZw49IKrzQ+IzWYaYTfnX+K+uKh4SQZQcEnIk36u30nSUqNGm9Jr2hqsGYgRG2s3VmteAkGOczpp3KR5tse1ycym1uJ5xCxJVJ9HIfpWbYteHwny49rnrShA0H+KKzjUfVtuGnfMl7ySC92oY4sLaDqyPmlK2MDo2bUQHPo6puIMX3aDow8n/7aVI4OBXXV7b8PD0t52MWpbIosma1bgdczAlqkKQERq9Xa5VpJEB1v++XdKd0Blslw8/73KpT18I76qQt4pB0tsOchPj2BCLHsB06m8pEHq59mLTdeBMmJKa0DjoraX+NREr40NlGxop2OPgds2H/CGKkBURpbUhYUjtEyR1AMjpRQN1Atmt7VTR2l7chdnjCHj9LTWe892i/ugcAaDaUPViRSH4eBbrSHw6o0pTjgeW8/AEQeMCgaRb89PkpvYy2A+SOwQmoAjVLmmBA0hlc4P5350I+P4GkCW3PPOjP+QGoyllrqykcJk5MC8gZqM3VjT+17XSRTv99wvJbtdi0fuU8EqeXbaDlYAhu0NpUbyRynNPzb6Jh5JLKaFxksIT3fDvKjpd6GVISRN5u67l+PE2vbm0eai5HysQvIQwbBVbgJFGe8s6c8KX1aupqF0uWaZ+3OdxjnDiLQ38i6vGbDWwIh54lCtPpOT0mI0nYTsoWBNHRCFtyTsAK0M0Vi/QuG1lFykxVKOPIt9rylUam5V8T3T/B8gwO3GbTDTsI5YdMF08D6Wx8b6B4vgRtpTgwlGeaE6r0Lgw8a2d7v7JAkwbLRtV47dCdrJeMbCQCtbddSu5ybMV1x5YDtvtrcuBJzI1lybct7Y2ymY9S+zgMDQeUhdSQ3oC8GnRWKv4D3DfryrruW5+9VNEcgYtfYrbBOaUZRjgEac55WjmGUpdOobl8DQmbZ+RoOGrUx7GnkeQGsLFxZBZY2tLWaYMh4p7Ig0MbrbLQY0nMdKh/YOg0lYkpsdfqUBC7ujFTYn+FVeWiP9ZHIGX7wOLEZc3mEuByYYNODWZBt0FKHqaU6nw/NDU9Ff4C3BOIkdVQsJxYqlz+MR3JThjH0VJ9tWOrnzHFbQ/wVGlbflaJ0mBCVAGwjpms7J6EUDbLaMw5VHOWY8h3Kt9ZPeRBhUD124XfjYpVgLdAXq9Ud6mA2i0PTlDi3awirm5KIgmZwmvPp07i5wcaFQf+Zt+L6rDG9DGU6uxI2cq95oed5n4JwKlQsmw03A7WA+AYNBXoJ2is40fM2JBGHGrHSx9GMmxImZQAtdkiKK9TZLDK00ED2oCWt3ZqAELynIaOYIJERKSXhW40OncwkWd1evu/Vxx3nHylrUBsf0xuwl6BPRxhAWV+sp/53ZP04oaXuAjTV5cCab+/EQtWU4IRYpX7nboxQVCAaMVVLyQXrMAN79wm8qM8BmR9I4QbygjPQMgW1kLppCRb+aIcsn8Paz6gQvdDNYHBD/4NSyJQPqMDi5UnKwWchTJjpxALXF2k8R97PlUQO+fvyGqHAYCCZD5HiSzRA7rUiAInC0fQuTZ3MtqpR6PqF1ZwxihiiCG0csnyFnCdKttPK6v22K7Dv3eMbckoBSCZA/rSTKehAglD1Mo4OC1hjMJd0LUg7+Kjn3Kwr0INyNM+lbUhwDDXTnutpfxXC46LpG9dcpk3JOnSe4zqHhlCQ0EGmWWtL0lPMceg+7RxCYtQR+EFjglVLJsrozyySUUPME5CNPTR/oR5fDqXBTtpKIxxsSmFaG/d2vzo9Kddd8xQ8MTWl41oOAYQhe+fxHNacuG8m20cnAfMkQ4wocHYH0H7iqS8SLaxhWmf0xLOQmgM8KDW1tHlLuVZEl43AgaYxEiQLb4ovGDpvb3Azsb+Mpw1UaTsXgNKqgh8gxP/hLBvZKXL2+DjAaUdMR4SygYfopngpfzJB+FDIDI65CNP0ZHFZwLUwGUaDwg7hMK1xtbe2kFhNlrl8LuG+tk5GBxbzadAXHvvs/R+3NveU2pnAkYM9f974d29Mvp4toB5/vXi4mdoGH0cHzqx1iwhP6nGnlkxzmKGVHlrN2XYqZ9u1hQt3ZW0p09cfT+VoIxmFzuCYPqX5riHG6CBDmnhwVbNPwwpwM8qqwfbfo/INlUyCXlgAOQcGhA0Y0ZQDD0ZfB1t4xU3Wdk9eo+B3AnldWDz4KJifjCA+Faf+dcoEikjp0hCAsx+v8Q6q3uciOUfACg1c3hGx++DxYQtRBAmn3VNNR0zIbWHhF6XFCs1DfO17oiZbe1vhpTdrGK1uAPKhB9ZydDiXp3x8KU959EF5+A0RzEBIWMu3CIMyff2NWcISts5CdEJZly0+jwYJR6A/hMr2OnDPb/3Iib6y778sM5bY/rs+UOP+u/Lg6Vpualt/u28ADsMoUlJ13eOwfvvIg2u5eDSVZzx+Kk96xFwuHU/l8tlSfvPetbz1N9e2cKruKXgOxZPWNBZSTh0DOPeHO7bylG+zVCRrA+61iBCZ3jW8M+B/mG7Em/Ryy6ak1NqgGAAKcnTcwrBad4arnXGM4x5BlPdFlomrauOFREYGT24KdK2bvko/UKQ7ydyCOwu4YPocMSsCa2DWIaOLexQDBB7zND+qW9MtbeAwj8vWLjuvnPUCXUzj67QlWChHQNW7f3I6ta3Avuz5U3npC6byKY+eyvEhbwM++gzgzO/rp29P9fq/6T1L+Qc/tS2vestSbrjoyK1+ZNyF+ZuTVjcevXou1vPLnjeV258/l2c9VhYNcT2//sGlfNdP7coPv35XLl3EeFZie/So+U8YxWHwrX6Pt5vitvDtqI/x6GxW4sIz0VquBvkZufq7OBTENyJg5ezX2aq61XcgFZYtN/oquuQZBOm9PGqmW5xQ1D7syK2+rWQgONXNSKBfpmd944karZje6LCDnDY8RTLrzZo2ahdOYXSFSnFJpjuVmXcLtxwAhOcYOdR7c/Vl+v57tlKM4voM+6x/1jT1IyQGqJ+aD3++K+UxN8/l67/4oHzGE+uNpa2SExi7X8BjXnqosPvEyPNDURzxmU4P622b59pN2TbGu7qWTcPxU/n2Hz0v/+CV5+XWGystZtWvCmB1c5K6HPqBq6XcfONcvuXL5vK5T6n7Cq9tzwDbxw47Fqt1+Jp/sS3//Od35dYb6zoDt6zmHTGecs7lqV0MlynvmCGI6b9GR7PodAR9Fp5Cz3qhJIhp9Oi4cymdA7o0EOEd5AlEM9/xBisI8Dul7KKoiLqJjwf5IW6wo2/AwppTnQJYllpMTZSlnoCjJMysrZRoQZCNs0irkxLofdWRe4faz77nPIVCqXbYecjhE1YRBjGhZBNF3rFOgpC1rJrl97hb5/LdX3FQHnOTJP+0BbXNCcgtS3NXXRwUQt5afnAsRgxpD0Fhxew2Ijw7pbS9InD6SDTGzrgJldXr1adR6/maP3JQ3n7vWl51z1Juuk6mPIXGtAKe7W4un/yYufyvX74pj79lLWfnO9vevK0ua85AqaT6SOp73/glc3n9u5by/vtK20qtXd8zxsKsyc0c5vtMDIfTSaMbk5rXig77YEQ7AW3YwaDO92JwyIEWltZqxCB1Iiw20ymns0V2YsZu5VRjV2kqk8ngMsIhsWO/u0ORbGi1jW2ZPPON87RM2ixGzIUZQRK0CeTF8dUe/rJBhuakMFWkxH4tipVo/oiSyY6ZIsgU0i8VDZj2irDIpxNSVmXkmkZbq3757XN5zE1ydl7d/nujp9EKWYgNiBHhRe8tArQ6j2PuMHjYNW7nJafG52rYWQetTBgtvFsfqB58fL72iw7LLdfNzVfQHjMCrm1L8JuuK+XvNeGf5CyESg87mTiOd/1dMwqvv1DK7c/dNCSFFYRAne1f9M3yLWJr/a9eH4Ijt6yBvIR7TSjwmeWCwWHwiGuQgBoSsA/3DQskYbIng6PQ34kyl50GozyM2HkrdgA0uTiOwEkfcTBINqh7KuJ2iWUdMCQ0rVIa+QJMT3lIBagjbiYR9wJlOrLQbtgAauOM8qzxWJtKO2koKf6NZytjX91O5c+/aNPmt2fn1eONeDvWKbAaytBEf9n6+ZDHONysZBwKk9K7qUSmqfXDnYoo0zYq4Y1bQnKMiEEV+ic+opRnPX4ql09zMvxU7j8p5S/+gU153C0VCVVlqFbNFKu0VJhPRqdOL+ohap/6CXNbGyGKRSmxjvceDOvmcxcR20ZcH5p4TI6ohMnaGBdNrjoyHHQUAicb+cISeTDd8UZGlQGHoylJykVhXJLUT1hH0IW/CRWYDr0G3fyHr1loCmDPO+058XZGb73Q3KEVNy6yMDt3iKBJcCz0aCOStC8UihIJBHAriWw8ZKMhYyKOqOQayFvcFkcInvBycraWR940lZc+f1PWddZ5sj6/DgTLO019QxMon4KSYqCmg8WGZOA6dIEd4RJH05hFD7ewJCNY0+BbiB+QiAxw++/Jj6yhO6WS5ik8eFrKUz9hU/7QbXOb2lR/X1yerXQkGoCe9dKlQ0kpriHBOP48Gt59Tpxi1ZmnbzooQq9OevRtBkQ2Vi6hQQwRebLvSndTxOpAYb+0WdqkVW1MY/8MrWZ+oaQ852+uq8NxxNN5ZAlJpTYxq8mmoLnNxoRxIYNLTb9hBkMdQ412R67kQyEh0E68jAQiR9HQdFlkXhZxMxQG8BATJEAif7Z+qqzdd1LK0x87lVtvEOuE/d+M4/PUpvO0uNaHknAdRwn4VKYLFOVUaMvaIh5DYhFOwtpyFiPQl+0HiDu8u23ov0dBbrhIShhHhO3m8oefNZXD2UOJLFTtzeyFouF88GxqkQMaGOs7lIDF/G3log/kMFxMSM6EMrFQ6qk3i5+ZUBPMrXKlKiukydWnluZUdFqGMcCUOCuChA7QBu4Ty4D4Gvp1MbFDvhAviz8esg1qbMx7WRdXUXdvoJGDYEXN3H5pZlwmfnARUpYMW51AKIujUsqmvo4/QQgY3tEXC+fxvTjqHVGRvFPfrHPXJ90qC5BklaBDZ2fe9OEsIM2B5wqAMoZbd4/ayJh0UF/eW4+VkDv8BgwSSWoXASevnEZDWqP0N103lRc8SXed18NQRnjTVJBOeWqYscb5685Cp1ukoyczHbLUokRDoLNiH7JsRgAZSaLXbMGL9ztSRZGdbhwMS2xold1JHNFAg3nKh/6Qf4Ob7M3zw3U70nL/qC+s0I32quG8HDqcx4oTfo5b2QDqB01O2jEYJXf8GMrtvVFopk4XcrZanE4EXZFi++aljarJzDl8NxD/OCdHbHkwzrEW+16z4x55A7K00i66MDUs8EyvQaiRn5P1AoP68S55kYNZy7szscAHhegdHagpbyoQkkF1EYa3vFcy/OB5qNGAR9wwlU+4WfIeMFa8PXZHRSJJLff171xaBEDCibZZgyIHftwnedZ/FcYucJKNDC18srvEBmMrOJGgUAhQ/RocYIjbz6W4W/ch5WMzpcxHfX+QzBP6yI0gBGNTPu4vvul1z+qE0RMaQBy6PWskr8HjxpZjb9YEDhxobmK0RBCEWFpYRyNXOCQkNDkcaRRaE9cBQPRtjzt0JQq3DbRBYzxAyeqdUBMB2ym5sh6enVrRiTftGUFWXDIIfoYhzXaz+cJqyNwWLVNkpU4FEnSyuSyZiDTV6roYmMk1cvVzvPODS3nt25dyoaUHK/5fSznarO0/QP2QJzkQBNlfQcp8xwfm8vNvrxuMyLWIFH0ckKlnYJzCWQyXxS/FCi55fHNzktzHnXdL2FoMFgqHgcSRcPRmoCHUBfqztXdeG8mIl6zSlaY+oCVHSmDQAMKgBEIgP/klzDcGZKVj3w4HDUTTh2XjSJ+qtqignrrptHYHhLSL5qksNAO0bso9yUIMWHlapQyaC6hWoIzCJ7MSUzgFSRG40mhXO5guxK7z3F/+DawwhNWK1i4OX/9B37uwH7Ib7UEMSkIZ/Avt3AMesNEnejKaGTKSwIOgW9vGbJrKD/zCUj784NI8/HXuU8s5OJjK6XlN8dVewakJCJoPRKGG1Wb//X+3LR+5LMeKg/ECkzMf0HjAIWtKwHS4o6TeplNZUJqQSVKawZm40FK7ZH4RXCbbGvL0mZzu12Fmd0fxPuH3ZeHuWF0pnwKGELXbuRfBXx6jZaBMnGpzUp887+xk8+7IPhhkdIrtIAiYNRYE0z3SgyGi/JYI6VyzO5xEDbRSyxxlDmfMEIbW4SfgPEFGetIJJXP+OgV49a9UYZCz7qMnNQLWh/LpnK3BgbhHh3AXstOke57y0hKj+Z4FJEVURl0TUMOeb3//Uu56zVJuuU52B26CvbRdY8qHL6/lHR+U6qt/xIRxz0EvNYpQlcj/5zVL+ZHX78r1F6pfZUm7HXcmgbqOFXXjBS2hNrb+5DcA1GLE5TrQE3ScpGz1xzy7h/ho9B40BAQb345Lz9k5KBrL96xIFpTTgKlJIYOWxiYYIEQ7tdgwBTBBUs3Jttgp5dgj0F1dCi74pHD0t23fBTrrApEgs8TgsKAyT6WH0FM6K641WVedmQrRnrL2c22tbR4IVH3mwmEpv/nRpXzfz+5k2eziuy6bV58E1OenEdZ42ijN1T4WR3tLHM9c43hw1897GFOtYHhYPTNVUOve/++/by1/7Z8v5XSpyk88X6Bb9SZfPVnK9/9cdQeKYqjfIrMLapJMSdkP8cffuCvf8iPbdp4AHyLElssHjIJZ0x6eBEcm+nFUx/d7oFlROhZb5bGYI5OVmPlf+HRoyd03NNs5+SkPIjVOlE+tB5jaR9WOfI/y6bjajF3kJ/hsXOB99M0FFSJ1BEvSO2FPwPq8ZAbJJpmtenM0YL8AWixCGmyYy15DpgQVzV+Bx/S+wzUnIs/3W3288oqXSrqbmIhJudQhvVsWorRvPNcKjjtp625ay8NvmMr3//xSHv9xS/my52h7FjkbQJhhKrtdEwXTyIEsaik7eecBHQIkFFSxeZ9i1NExfx9+CNPpGonKf0cHU3P6/dV/dl7e9YGl3HipJvnooaRaaHUCHh+s5cdfvy23fcJB+fMvVoUeDk4tLVFqs5Glwf/Hq5byXT+9LYfz0pJkhEpG4QTQMjoC38pDnl4rz9V2O+uNkuApWYyMWYDuaiwmRJ1MEWidbImgBFA+A5Z+7hn4E78wbgGpE9owSG/KLCdixWFkmTG/BBrY/k+IgyAQqGj0uO0brtKKWXTESvYS/K0+zNkPoWpNvVMFxqGFp8laD6hOo43vCpwJF6ftkQG6RRaWKKHwHzvI2sAwhpEPdHVl3LoY6OrpVL7wmXP5sy/clE9+5LjHsYR90vix7u/77KvvWs9c6x1Zp1BDcz/yhgrTd+XBq0u5eLSI8LuJtPbWr/Vo8Mtnc/nzL96UP/eiTXnkDbHUex9cy8/+amlI4e53LeX6iwLxLIxqwwAFTe0zGYp5J+CVEEq/FhlsapjQZl4i56roY6Ov9k90xNnmHoy+rK59ZaJocm5TdaKr+gKGC4ei3dIxQpIT7WkRQVpP29tsW3AsaKn/1lNgeQ4RCwF8Agqw5cR5gcpgIK0hcZ2Tt44rZGKgjABjEqTlkFgK00HY7ZYBQrUExFyop60J0BvVF/Cw6zbltidM5YkfJxax0QjHq1IsmPcU8FxOh8xQg2j+YBYSBKUqoloWGJajIKz/sGrafVqscHxb8AevlvL2D0zll9+7lPuvLs0736IeLfEly4m3Dv062dYFUpvylEdP5aZLdROQenT4VN79obX8xofrWQKlXDxeW+4/90tW7pHSh1UCrOYpI1k3Dwc+lI93IIwxXTPk1z78lELrCn5pZzf+ADnapp8BdychA3JOKM+gvl70HbT0k53dudyB4QpgMIWLcwEIeTYex3Jgf8QFkacH0k9vGOY2cT94f8d2fOG8Dryu/7iVd8EWODTIPjRZZ5zNhSKLisaCdl8Jgq4rzjr28H+8140hauqrzHFPtrNsma0+AbFObnViYua1kAK3vxtCgp7RUrkljFY0ADzbWAQjI0yIg5rr1ZrKe+GwOv9kiS7oEWLOJKRiTSR6Uef39UzEK2dTS5mutKjXrrtQyvGhDE31LbBmg1PP+YsYGEux9Z7IXl7SxqIa6STvs+qmKIXpE4fZQqI4pQw1QAlwGJpjkoS/jcdsuuI82jJIyYHMdilP+7oEMX2QFaBn/rWVG0OlaKPO4NrKV6cb1XXADTLtG0pj6OGOBo7nB+WEhCB0IjknJBlC56EkmJJ70G89DaaUppDDiOY+oS5mLP3XroBmqmB4J1jssBICxIRk6tZfVVPX47EhXtGSsC+FdzzI2pxjwsyRWpbpBI/HIKcxpx5Y/UHDIkzFbfP7TLLap50eHOJCEAU3Nl+YebuVG9cdLeVSFXh69nzn2he7KFtXKYakRj9EbQzh4An4d4jPnCfIMCB2T/ME3tDEF0hpOcm+lJA3KnsfCquRJ55QCI4ha09gExCaFkR/Eg2Bdqc3CbTBjvUNdXFuBCIjUDa9pY/98vdtM5agHOuOQKzcmFjJy+spiu7M8/32Imw2mplmR9zR5yQ2twtZGP2GIMJcuuOJ9qrtIGM9tMmTEdf4gDQ1K+/GC7aRKSYHTmQXaQwO9kOIa9mDl5Wcil4eozb+7a4mr0l91xxizEiGtqu29yi7K3JCVMKBNtx2Jpg5XH08u9h1c+lQ+q45VOIcX1YXEjpiIdXnoThomPQEIxY4Usp0ZkNQcsGqxe3eYP2Yn+QaoUVtiCvaqOJ9cGVu0C++gepIwcMwjVCF0RBB9D5NSlPLTbDcEc9XiMqQVSF3DEqep9shUcGjV/q2xyEgHMnDhyoQ/sHbfJ1Xc/FNUjiuKFQphLCYamfkIQTyqkrENkqBHynkB34RrZsHXIczywilF6MtnjBimoraqD1mB4wRk8NPuSKpPDTdLJJbf99lmLEFbaVt+RW6ClPhpkYlw7uAgVZSWBNOW73BanWHwI4tC56ljidjQVloUKoWpwV3+ypB+08ZU4Q/KrS4KUrM/bCAdlKAEddgcEl5g3lWfZ+yA5Fsw5YI5qFTtrSQiJEQ6G9t0DBgXgkJZugtOU3Jgua2UYgzAF71PIiKkIWn1+quwBjWQD8nqulAgoK8FLbTNoPv7GAz7cZaGXMbUxKDUBeFNsi9QNDS/QKs1QGluUqKCxipkUkFvMArF2uKLsm/a3ObBrGF6o1mK1HDanHmiVOEOGZLO9kSLd35qW23/f2p7hribHN5bUeLeDBCg2Az0gEmoSkdVhLStNDOTqxHn7W8AhUYHQw873qBfDosn/BZJCNjtDChFJGSIh3F2AjNjDiXtujIsuhAL13K7KxIKCUo8NXDxQlhueKLzsNoJx3B5W28fNedqKJMHwYj5TIldZATEW8ASVphuE7SSg5k4zmb9pIta7sCc0tIGMVzrkRQN603khWyM1DUUj66gIkgcN7mygU/ztWoPxE0E6Tx/AOILutowgdJA3r1/q+Jp1rLyo/Vk11hv5+nIQLq4SlWHA3I6QgwIiJRwyYpTCaag3kOBFua+tsPL40cINl6sf9unXOeRZ7gBDYKawhIWdn0C1STttXZUN0NqG793XIn+LZZeAwyx7h5pHTjGDeHYfRAD+ELoV07c0B9F5XmbW+CjeRncIjNdTPzG9W+etjN97eUmVZ9t+Y/1N2M21EQ89K2Ua85CG1fw8Dj2NLF7Q7nLvRTBuopaELjY2RkB2+HatE5IBkqlKfJpMk5+oUXDsKoYEDIeccsAuEDgXm8A1MhroM2gXFTIhIpYP3Ngx9LJx0bNSlgfyuTYqHhAdIkbkMDvzn9JJnl6mkpD1yRLLlbrp/KpQvIe1dGtMVJIgjCOLNteWXrw7WjvlPSgBFG8zraYbZ+PAuRR0QuGPjQ+F8YYhsSOrgD97UvMZ4cCGvWEihG5vZV2IVnrp6t5YETOU2gbv+9xbNcB9od2MzHV5QUIhpRMaHtdUyunEzlwZO1XDgqbbOW6y5O5crVXctirJGIdppxTTpqzt5ohXn82YrbRwWlnmdwcj61ftUU6BrZuHS9NPz+y0u5fFLK9RfrCVCiCHz3IpUPIA25RIaydB+AHYy06SduUrum8ojolYlX7wj09GH8RlSkzxOtTx64NiTLoC2RAzj2VMKhA1O3JE17mF24ACfUOnHcodhra2cStwKGTrRuCxGZO5bFAAoIHlBYl9jsFvOfKpOV8pRHzuXFnzKXT3/SVB5389yOAmdtPhayfCMT3EU2kIghdGJMZoCu2KwUyPJKtMXRz2jwmY51xWKcGmGsiXzper1Vtw57y3/elR//xV35mV9e2zHpNSMQMfWg5EMvgq0LeRGsEOt+hTWkeP/lUp7yqKl83jM35TOePJXH3TKX48Mahjwov/qbS/mh1+3KT9+zNoUtJx7paPXzMQe9kxuT2vuKYD58uZRPetRcvvCZU3n+E6fy6JtF+dcU5/fdt5RX/tKu/IufX8rVrayQbAfDAtVx0poOaJe3kgbN2C+C4oDTQDMxJtHpjamO5xxEYwLlajUSo7W6ayZgDEz23DKSJcIp3oPRc5lx6JrlASRA3u9SBCbh4gdcSQwsegDWlEN7McMN16rwn+3qyrdN+Yv//Vxe+vy5XGxCnwdvr2aL+HcwhNd+57d6D/djP+Lvh/rhNmY08rHK8r790C9syx0/WM9MX1oGJS/zNYVNIb04JeASxVFcFcnVswrvZUz+5Avmct3R/jb9xN1r+aYf3JZd89bDakId7h+FzVzK2XmdZM3lf/rcg/IVnz2VGy80SKVP8BbLpfziO5fyF//xUh442cmpSmHkmS9J0Zli46JcY+/rVfSxkREzfw3xc+ikhyp5DFgBt/FoCgDVdy72tjFcHOouLMQxRCon4MpsN+OQBLSWzhmEjompGr5dNqdkyvPTQG/qd96Yke5V4a/x64sX6nbXh03z1wKr1rdMv1TWQ5INfS5sW5X0AyeAQI8ypDQLkuBrKCx2OY3PoO3XaGvo01CfJAum5ws2ODkv5SfftJa/9s+2La24zZUTHHcrRI4rikuDZWoCzWndhfj6qfzdlx6W5z5BrtfzGBS/EeAUGh4ezOX//Pe78q0/clZuuU7n6mgkh96oX/Nctzav04m5/M8vPdBdjyS7sa2XsKXDWOxUpyBT+elfXstf/kfn5cKx8p5vn2zKTqqiJCeG4YHfITY+PmYI4chre0H0w51Z0Ay86QVy6BrxfSR1aYw66cKKLN2Isv1fT8AZ4ROo8DTBNQeMUdzXT6MCgz/0X2Y074TPuREybE3STnmGlMNa7+5g1Ze2oBFdT/X9uy/dlOc/UZbHNgfXHMNscA5ZCGt6CP+BlhSm43dlcH364PfE256fR7TEv9M7SuX212Lgg7/0H6ZU+T4OE8E1EQRlUv1ehbQ+UBVo/Vqt6Oc/Yy5f/Oy5nadQ04vZqYtDRuF7iKEAMTZQAtvt2hTyd/+Zg/LcJ9QtyAXWV1+AjYMWXacJ9VSi6hz848+fyyfeWufwTq/IEVqvOpyXpe7+NJfv/JMi/HXr92o561Jm2e7cx6zWWx2etS0vfupUXvBJc8uG5MNwvUe0cQpNxUYf8CFjMBcikrG0MeJoU9G8O5PJPPkKDY1hRyB4+aOdJguULTh59hP30foBf9ZhBzS+D0jQyHiPLxoXxvLD2QSpU737klZKpet1UCuzfuV/pwywlbRfVNHDtlQAEf+hfEZz0vzhrbZc8XFnRi9ZDfozPhTSq+1JLRuW1BxaPcOCkZvVJETlxsDTXr/0OZvmMzFkQxZJ1jQ4qvPjwn1Oi01Iv/GPbMrTH12FXzYocasIPiCEqeVfd1TKc56waesVWt4U7z8QsvDkPIT63Nd/8aY8pykZWcegsMLJqbRpbG5HpU/l2Z8o28XHUgnN2ZQn0iGYboqiWUoD+tQNMCsJX/AkrI3sUoIBKpsSJSLrTUEMOf8pzA2i7OG3HXWsVIwphiP9l6N5PC1A2m0y/0x0yweh50mTU2DBLJ8kC8WYawCsxjxO+8unS3n0zWv58s+Q7arqxhi++oxSZ7vkBPYm9kpHXnHOeygKQp6JsWepLe/4G8uHULAFaBablLBZPkNWSZNA2bW4eWqreSchp36fR6WGyGoRT3nUXB5x49w2AW0kI35iIRQLSUytqOeBq1N50dM25Q/fVoVSPPNDpWesoZuP6nTgibf6fgZAkCbA+lJFLfdfWcvznrwpX/rsTXM0VsRnio6E0QLi5o2XG4+8MVow0ML2DrA1+R6HD20PdPA9M12S6dF80rYlICH6QFaSK8jrVdBQnTbNe8yZE8GKI6kxIkHgGChlBiIPaYAkpJFMirgNDp2R1AB5Y3L74hX1eOouNp4fQG1rGFSRjkL6B05K+eynzOX6YzkoM2fDeeYbjTXKsLwFF0Amoc/vTWLj3/RhBxmPoVg4pz8LjCM4nx4QdWJogY2Ati0jBVbuMSwxTGKXoQzTq3os+FpuvjiVLaUH96+PfsnmI1UY/8fPUEHVacawYkYx+m791tACfEShhz729drZrpQ/0erBNEhT04OF5mkXVgnJzRrylEQjKF5AHUrGwn9tOjlGf+AQ5y+WD7c5hn4SC9mThFhNkUHwdJzQMiiVblPQTvuwdSYJZETNbCttp8aD5y1DPPWKyBTCHJYY3AEfbY68E/bWA5oh5ggNp0NMUGa1+J/+RAmBsaV2onKbE66wPG0eTEdDjG7BQIEhWchoAGLCD1syqocvJGMe2pqnMIxgAm1TGaTY7d6AfwPCsoxSidvLicuDMBgpRfPhqDI9OSvlsR83lWc9zlfTUQVdxUEB6rX33w/jpPeh8HRcqtWrsf4nPaKOvWQSGhvlvwO7iNONfv0D8EewZaXk46YLIo8wvWEHZQERynEFBdJl8pn8RZH0Rib+tcaQscIzOtt1dggFsPdafxuMAn8YbB1rN7OCBENJVehDlI9v8EsFnDpmawWYAKRRLLElpJCiuLibLVTLzddN5fEPbzPPoNS43+748mnMHOZdZIEJKbEDjHvsvp0kZDzOpFyR8+/j4suooVZxuAUzRVcm18m5ElBEjLTztGVPO9F/KUKoXvcPrMk5dT5tG2EF9AmkiP98P/yaefeMx1ZEJlMyVtZmBUPdjhArhD/fLeUN717KUduvwb2w0j1vS0UZz/7Eudxwoe7q1J/VEKdd5HDVPSLOznbl598mvomQT0IlAB2JmLQ4gqEUzkEwwgBFNDDMO3NLeyARpnR1xaL94OUL5ECm7a/coujXGctnI2hJmhDzp+RJhLXn5UCmKyh0B3hoGo6sMhSKxBlodSGfspqym7gy164K2CkqyQ40FigwbH2xeXv12C9jJh4Mq5MTyP2OPTaywvyu/U2ckqFeHD8aXIW0XdIHVjk7bOd0bm57RhbhgzECuuAFKnt9GGTNNPmmXnrr+5by7g8t5QDLVqlzI0PBPFt56RNu8R2YwzSF2AeJToa6K+zeTOXud63l7l/fyYYtcH4ZbCZEuU7tyPf6y8/64TaN2lmVkvDLz799Km9499r2jpQszfg8pq5xiqWOSfB362SQWjdAJmuE1AhpZAcsfod1VEHJeCavVVURFq+c22PE0w0PWUBDhdeSafalj+k4MRNgtR6AQEAg7GS0cmOoz3OlidTmVc2YWeWA5+qTxJrrltVMN1oGBPqOVHyIfpiRojZZxfhmcIzbFdeC+2XHSanSAKGNVtb35OXEO9eIPkQWddqHUWeYS1o+RJH0nR9+fd1azPdskMVNCc8GdJXm59jcQwUrzOKx2Yn5kFXJaFu+9z+sbUznoMATXfTOti1ecMvKC9wElTN65bpK+Z5Xy1SCzUEIVdshGNSE7Adp9ZGYEzz38aAlwZKNYO+6nHcv2fjEOUOejolC6l4OnlC7hsa7Vs7bEBMt7AW296yekJ8cCWyqk5JnZB0+w3N8H047LPURQwOFQt51XVZcf189XcvPvrXeW9rOP8wIKM9qoXaaZQpwiBUQHnbrjTHoSD68hikH0XMgQLGuPSCE0YQ938N7Az76lFnuIDhYfBQMVkuJrYk4r3vHWn74dUu5+ZJc80JgECI9wQ34VvPv3/4+2bmmQm333Ps7ceXoatua/5s3LeWn37Irt1wvDjqzeDxNVeapvXvbB4pHTHSdPs5CaG8QT6+aGFanGf/0NWt53Tt35abr6hoEtrGQMUeU5HLzboIm3QEu2id9zqiSjvnaN8RhVMO8BLgH2YF+Ww97o0HWOK85fpMlsup1kUFn0GhIXZAwV2UtTIklgUcYdpPlTrsKZ33DV5jOVjvDRtXUdT524WBte9e/98OVgQUO+lTFE47aW0FSKYeVBZPgWGCCFD4bDWCkoz4/EHhYPFxczCqwrKa6yIrlxFjQKD/X/hqSS62jetpR4XMp95+s5eU/tmspvPNmL37xkDI90sZjKW086slE7/qwOADbSULaX0R3zFLras2jg6X8wjt35Y4f2cqOTSy42lYXDMkQrGnev/COtfzGRyWhqSmrzMPKRPVE43pKVOWPf/uWpfwvP7ktN15MfBo1rI47+aKYJ4jQdSv7ILRq/BJwSCiNUHJGiwZuKSMRfpZI8vbxdYwMVbkycia4UDmkyK9DLdh69azjMt2Y8QimGCRqfgIwoWtNWGEmZvyWwCN7DqFp2152a/ng/bvyTT9UxWiWxSc7WV1WD7KoCr5tA94Yx+edEMB2H8/Y9ET+yoIUXb6qJqVd0z34YJykDPmN8tr2bfa8Ptf2IQQIxOpELYuMnfDR7GVxCof2heuWPsX2uOHUNtiKRPm924r1q89UP0p1+v2lf7Itv9a2Foell8M180eE2P+yYpw3a9uo9Lt+WpY/b6alJeigD7tV6237NE5tQdCPv2EtX/G/b8vlq4sqHt5IlSEo+LgKcykfvbyU735Vradm/cmZBtInHT/VqHW/w4ODUv7xz+3K3/jn57JvdNvYBvWAxZLyV0b2bFhiP+PjqPqhMBhYKvPTMy74ZmhZpiDsSJPG1GSwHFU2BSU57KRIiQeG93XxI6u1Dg/3NNeL4g6zzPrFtufKJXMl9nAZx6dH76M9yRo7AhMfdQsLbefyB55xUL76C+fymJv4pdH2sAMCfcyP45G+DH5mVP61nr9WWzItxkq5b9e1+svvy2q4n76nlO/48aW85yO7cmPdJfhclNfwnWA4oNghQTKWNYR4+WQqf/wFB+Wvf35pEYF4Jpq8958/XMo/+tml/JP/sGvrEI6O3FcOQSCbEtmkCOKrZxj8yc/alK98UV38xZDO63rTe9byv/2bpfy7X9qVm68XdLNgx2N1gkdxVevekRJx/OQPc/0kTymPu5d/zGN5NK0VJB52b8/0cLrtG098qLikHkfbvf1NcmF3wczDPXwpynyoc7A9UIhPk2KwR6iAPAikNNzbXXfIncqVs7Vcf3Eqn/XJB+WzP2ktn/hxczs4g20UZktZN0GLxuy71E1X58N0ZWsiFn9Qnbn+cbk9WUGfFKoOJOMKAvmoAjhCgQc/9OBS7n53KT/15qX80rvXcny4tq3AsVuyDyg1joW/uYB4hac3AlO+ey9P5WmP3ZQ/9rxN+bTHlXLDcc3cLOVX3reW//jWtfzCOytaWMsNx55AJFWoAGodmYYNH81zg/7ztJQPPTCVJz9yLn/k0+byaU+o9UzlgdO1/Or7Svm5X13LL/zaWh5o26frSVRmzNAbKB7fzIWWoBFqhjW1xsXRYsaiaI9psfTx3IYYHhX2pu3zyEZC2doU41n1XACjjnaCT14hQe5UqJLUnVX+YDDSFCbseJX66ZewjRS9wTHrbOXYYUdoxUe+L8NXWnmMdy5L8yA/cCKLS66/WFe49Xvwd30K24eFITKmsNRQPSUljHUre/KAXi6DkulRN84ccO9KQkhhm2nOmnfaBOvIYVs8i8MjNQHO1vhPNYd+bQ7UGuq7dCxlBjZhgeax0b7atI5EBn2Er6amFlcLvSt1GbAsxKnr8O+/Klu114zDqniWdR7mCPS7/3q7LGV8lcGtiuV8kbX/F49kdWjdFKQK+nWH0vaq3KSfijMaOGQDwb2HZ9/n9CJ7yZixRcW7YX8Mvx4umUCrIuDwL8usJWdFE4N/RQEQwYIFDh/WRpGwkvHl211bVToVGO2EE55jDkHj89PKpc5kSmTdxXZISxp6VqwMYYwUk+ST1ylOy2lvc968V6IX6012LguM3OmeqEi5WNOrsMJBf7lC7VPiszJObenAkSgNYSKwMcOuQUcD6vGS6vxbYv/iIHMFJfCRU7TZvkvV2Mef6VYGe0QKb7UNRqrfQWkgi47E4sPX0FtCpCdn/KR3aXAmPW4MG4m0ZB/dw7HtfqRwP/AONX4a7V6NY8b4cB2O94al897eTi+QQOaNeUTwfbB4aTmDDCAuHm605SBaIWdi3uwRkMLETksHQyC7Seb3Dm0MgoUTVKR3jHDMYuQYEU7DYe1oBY+AiR5aCQiUeNnKsQvUQTvHr279rS0ITBxLC6jMBo1gnX43IB9Ss2mxEbwM/lhgVfSRVApxX9aUbn3Y6qNypp0zpueXRyvDSSzSArm8lrodn8TQ9TqaxRrKBCMKuo0xA7fUaTs0s6XdwumpOY9wUga1RiiLBsd4OWpo4WM9I6OYcNWdh/C+TGWMmjauJFyBXRFiI17U+3FncEpOBxwnS80+MuYZS9FLcz/nezfAdt0EzGkbbKK+rDNcWCjvDt41eJA/6Vgkh3BRYzFjhvcocQcLlZwWSALSeWLd502XkmKwmGGDUFfFZOcNJKnaY6eNcaD0qCvMqPJMhkdeuGnWBh9EHTmk46mOxtK545m8CcGYor1WW9ShCuq68pZnbYEMhCDXqQ8Ha8XDTUrMlBcnHeVpa0JBUo4ISxfbR1sZlcHsEB/xZjFp3kgVsmEgE03WMrw3xa1SLQGIhQyCxhtsqPr2CUA0O16Ow3o4u6NiRDJcEnBTkG7hqZGukAYQG+Nld3SK6b4ludPWAqBDrqkQAnKtbbsFYJBpEYM5mlgJ2DwUDfDlgLCe5pAgYYNWtGQe7MAbxg6j6fsU2HAZc6oCCTKi7/nrtJzZQyd41BNOmING2jAWHQjppIi5DMYnabNQY1QjSFRYfmnYFiM9XcO+iZ0rJPJR+tAqz+YDSPmRspJMC3InTp6ncn2mXFNOhoUgE0TltfxATpEulOqdRMrtjGk8eQo8ZitZZ8oTATuPs79s2hKmmmRkzB/gisB9DYkm6HteE8BICRhrcG5AIEMqgZWpiVE6SgzFEQIYOyfgZLA6g0+KoBU5/tzUuffDoJht+RW31LY4fRByNztM8GghKEsq7fgj1VkFNl90K6/pnMag2O03C0lUDlmnkb31ZvfmVfsIMwc0M4DC1vwxc4RzEbppAT/De8yn8juP0jUUQehEutvtcuEFcVfZwnrvaIxCoYjS4B3PBuXcDkdu3kdTjDYNxHjS+QQ6PkuIWJBwkwLPRoH/GlImUmZBFdRGVo/pSsbTC+79TkRsYzqe7w8fZX5UARL/BOfurNUHkPfXIy2h1yiQEfphPrvQDhc4QxBUR8Roflosu/ecaagsm1MzfNJfNgD+m62Nt9cRR7VeV07rAZdonzBJXn9uaaFrfy5AhvVGE7KS8nwUHfVU0O+0UCfTk1EEFFgYJCcHO3AZOtOoepkMBknjWRGMUhI9MKYYD+7N8GN+JEZTWmKiIYx2y/ybZZefS8eS2GRRA0vBZdPdB+Vq6m6dz18+rTF/nOhcMxfXFlW4eKR+BRaaYfNdqUm2aAQJ1hvWGJwPo9ctew8DZeaaaNspCx+H+J2VR/oQ6jK6UNgVr7ZtwXmQYgFRvZkFNsnH6ah+SjA2ysjt9jAVc5igCLbowZBopZbDTGGkYP+oV6Yv/GV9VOqtOeMn5/Ws+6k8/ta5PPtJc/nkR5ZyqSaBWGpy3gbdFQvUFdMpbnnlLfMV6EGCXaFaKI8tKVtnZeUggAxZxsuwI6JI79rfuKzU+8o2GlbHVQYE1vsux6FIG30k5TVm7J4ncKft6aC3LWuybdgxlXd9cC1veNeu/Nr715aT0TL22nQkjgEjVjS7Fnv/ST0vYFM+56lT+dRPWMut10t24vvvq6nAu/K6X1/L4by2bD9Xy1GwovKWclFx4AdM8xKiyKc04YaNA3g8ILWE70gOw0pPiI0hcoKpSZbk8N2obOvmzUY8D6eB4UXLwElhVi2HXqAg1FdQL1pkIDCYamaUoRDIHTsu0L73myoJDQU5dIo2jYfIvb4aEVBmrCmrH75Syid9/Fy+8nM35cVPr+vBx6XEIb/W/YfyuYam/m2Vxe3ZV/boeg83x8/+TvT5oXw6izOs++T8oPzbN+/K//KTS/nA/bsW+7cDMiyt2M8CqFZ/u5vKtszlJZ+xKX/qM+fySY/gOgXLrutB+Tdv3pVv/eFt+cjVtRwd+sQ5GC0mDzUTDmr2UwGau5CyL8zXlvBa/70WX9k8HyoDX5IvDMR0ICvF6GTundFTmW572YnI72AsLB5rtiin8UYLlD2e8Vqy8Lnjaa7ofYjpwyC8d4pizgwuWANWTXewlvtPpvL5tx2UO7/koDzsgsR4u6y1NBg59ophG9reoSzSNIZHAs/H6gxZXUv2zItvipqmN0AY+dzGUHaquPPc5fTqHLKlhih/1YNFFj0/0FdyDpSMZallgWdC+HvNkut2Wr/83qX8qe85Lw9c2ZWLR/J8i0JQHopsKDqVh103l2/9Ywflc58igbgayxcvPORCYv31+Te9eyl//v/alrMW8Kf281gl2nUZnx3jxc8+9RbIHEjBiNB5J+Koj/HBRivIzzHkri2o/7/tZVfjoUGBD/psJNN1gC1Gh6QILJTnyRAh9rw3RYNklzLf+FomLIfemV7t5yJLRR88m8qXffqmfMsflfNQ6/bP1f+LLaeCv0EFaKRIRlOUfaNrcPBahrTjCEdk3TN7BZvowesq9rSN6Wp1UlKJ+WtSFTQzCY1bO8vHVoLqYdqZPtBpwr7+aAi4Lgg6Pizlx9+4lr/0fWfl5utqXbOG6LDB5VpOt1O58bq5/J//00H5vz1KNhUVQadsATqmftsWhE3lu161K3/v32xbdqHqAWt7FD9VTEy+MPlJ7e/J36HzbipmFyptcDBFDGlBye/L8bcBI0XKRYPdsQkyvcMwgjuEir1AYTQPxcDCm7XXAeT4pXvlPXPQlIJNOaTxIGpAYGFffHdcBsONOU7bU07mgU959Fy+4Q9txOFTfQE184t3Q+C5EhRVoAVRKrxGSMdyPr0cH4gwMk4LJQBvUuIhMqqFdnUdggxTftPH5D4Pbcb+QpgQRm3vUXyY5/7+n2+VhnJosFyZ8btSsG4Wsl/4ja710I8K67dT+aJnbMpnfPJcrp7Jtt7iLGRemct3/A9V+Ose/7J+H+c1QifxsMyKbD7v6XN52MWKYsBYPMLrWPgDP8c+dKRPOtnC6ETK8IIMptEq7Blug0XkHTCFRB+EL3mCwJLsKVdU9v44hFfoGpH+Y18An8piJbPlijFQybiybIPhoQeB05lsndJyJbGqlv+rn1fXgMtS0j64BiHwHPVcxV5yaH8kIWb8sPg8UqKFKUppf9jblKGaxYNJ8w+UU4g+BCait5JV52QXfONt2Yyzkgxf69Ntr2VIwMeuWm70Ewor9y8UASuv3z//Uw90XoB8j6ro6yGlpfzpz5nLC54slr+mEHeNJgfaZPy6lFtvKOXmi6WcnmEsOBzndaOF7Gzk6BKT3aZoRHrjfk38wfqAgJyYtfUfVyDa9kSmMHttbZI92rPJ8Hib8q19ZavV47zQMxZaDw4qwWyrbBWqpoB8ZxdRlh7TRdW2RxrVazuqmuJwhpF2RLJiatIYQ4l29Xwqz33ypnzWk+d22kw7AJSrYdVIBs9yBvhj05ohWaJuogmzRQkSXrPeK8y1BrASsPHQopUTx4khvk16aKJtUCr1hfBf2O/PaekoTj38I/+MD4QLciaOx08JWXlSCpCW5St08w4fHxHMtXzyo+RgUGv1XB2Fa7n1YVP5M5+1kTUdekZBLk+ExBHPpE2sB322U3/aaZ++yWqIUVG+AeTVdj0GGqCKMAVsddE+FtwWTwb10Lj12xZfkeCzMooRYGtUG4NGUzmuHv1kZQBA0WjKgkdNHmp9EnfvKAutgQuFeZRS3KUnepTdeuQ605trjMrkw5FW+p3rRPnVKtdjrF/4lLlsNnWGmAWnh/TWv4F8xf3vYxGgfzQNELeYj+5aPCcIXAN5obJrwGVwi42nmYXwEK27UO4KpovHkjhgLyLzJ6V9UH40Z4Wjjt9HeVCOI8vfbXwh1w+mpaxNUKW6epJTXSH4GU+eW5hPdhFKcGdQ+qp9lR2BpnJSz4Lk47zC68k082XbkClBAJdjcqEn6x5CpLlsoL3cdg8ZMhkxbab4mzybjA7kqfW9fQd2MCjgTIwOWGVWNnoBh1LEnQH26MoqhAizdeLGRVUCAfIVha6JvX5HFLEcwLBP/DiFOwFn80hkKY4EAzMb+sgAiaxcviZOQCizDMgcVcSNPf2e/eI+54+13xFVhojd51qKREux1rJQh3ar+TVY7eFcDIigHv/PokJoKXw4g/ZYyEyTs9Ciex+UvRssh6C+P896voNP55w8PTFC4vA0lY9ckWXGdaegYVoTywArJdBnMHxeP0oapAWHvb+rUyKhxCS8WJiUr8fvrGzdiRlApo6fbwnmnEYPtk2RfPqWGo9sJs/pd00WHHNBPpJyweo4awQ4hwULTIOQH+3qkwy6oAyKDe8kgUQ0YXaZjjz0cUCGYmJbLsGJByEmDiClFBEDEhOi0INxg/VsSTGEKMhp2gtj7Jvvm8fqcPyx3W0teqO0AZwk7o7CpIM7YMbAVmhLRhu2TwLoMmgcppJ1K7K2THMpb3zP0qC6t7mUGy7M5YmPmAlRpmaGn35h0Tpf/+tL+fDlep4AkcHag/EgwzJQ5rJlnCOTQdWBSiRygZzsSwN/0WXjgTCqwbCmRWOohBPkdFjnwFQdebiTBIt07zMGA8LTSfDNInAdvhR2RBzZLditiJXHc2MimMBZaoihBdnptV568MQXB9VYNUcilFzJwqV8AGJcn6v2nyasAUKTUwx6BfSzrMaQBN3Vl0O0IisDNGBRGarO/BiUjWgP5HYmEM40haId+UWo3U4yRmjUREwbrAl6+AUUp70SDQmKqfvx19N4X3nP0jb1bEt2tcjDQ7HeYpCi1c9txgYuq81Y1nLXa3e8e54bbF7rABRA3av8FHmH9gj0oYnCnr2F/DAbPgtF00I8Wk2LVHdlqejcDvytlDQd60k3FgbMCA9tgjGIu/ci+YJaPZhuhmW2TAZGBDzoSlnuNA+jaV/LaQby8EKNl6iqt75PB7YlfyDwQcSxHHvDrXFQMlEM4rJwctpmfDzQQq8iShIF09GPwbTQBlZIgdAO9eDZd63igpva6+9L1CZ6ot2HYYqWOTkAA6cdzgCQflkqJw02mRfzghONkGWqTAllXYW9TuF+4o11q66lXKpnOapzss3ht6uc76CMHLcOj0MIj9Gy1iPMpvJjb1jKa35tLddfkE1BBa2ANCOF58MRsk6TSYf/B5xppI32Jxg6bjfLH6MPvJSGmEwsak0GgUvQfmkmhdzMzCpFIGZNr6sF99I9851b7kkw0GiRjLglvA7Gd03iBsNX9mBKyR1z3iILrvDuwkEp/+bNkgXYdpLBfJP6LZlpeXRTBbD8cRQieZOe89scw8+Wuz8L0GT1IZ4qbDzIkylcaygoOV7IQlp2HJurESEo5u1AKbbPPNmpXZ1JDI+QQgjKQf5WIT+r247rzsP/71fuysMuRh9j/ed8W8rP/qrsIG0u19HcX1+qoeGDTSnvuncp3/5jS7nQ0ou9X44siaeyX9UsdYqm2xxdo2BcioNi41shK+04DTqirhFP9l+5pX30wxzlNBYyBSCKx3u246krKmca2C/7H859p5ZYGNAUQUTWsDDoZB8Lz25OfX6gtGC5WdtWBVDPqf+19+0a4yDpA9tco9wuE3LqJ8iuaLI31K0EC+DQ88qx5ZFMoI88JoPyYmP9nYCoCGWl+Em0Mslhtq98Q4EElFh5CaymgSXrG2YsEXjENf/cfv2vnttXz/l7/31L+X/+4235wANLOVaoj37U7bzrgp5XvKYuGpKpQN3fD+f44rm2nbnSqWb/vfODS/nKf7QtH71ajxIjQ4SIFM+ZlRc7SrEVA6qrf+hQU0Z5NqKaCCS08Tl5lSOTod5WBGUSdXWKvNA7Uj21n4cVewLu5YHcX7Nmnj5qewISm9Xc8KYUUkdyeqzAPnSLG+Ga3BQOLyKi58JoEIXA/PVzdr4pf/0LN+XPfrYOUt3rjcNFJJB7bW7KjObFV1FXxVLiY2llXFpByD03fwM2aQ0k8lKFRrSYwkYZXJVXWQ646xp9ju8ytXnWyf31fkQENypbhU3fBG3acY16r+4+/FX/Ylfe8cFtueWSLPRx3Sh1VOGuiUDPfsJh+e6vmMst18m7SOvFOQH4/OSb1/LyH96Wey/X6UTdXxAFcof7/oLgkNv2k5QWKN9+t4HVNYbkVbRu76MvDZvQJu4QHUiIZ5KPquxbw0PlrEMFEBYQpcU+bo8Sw2bRjR208si3Zjxpz+ULdHkvr+buaMWWJIRLUkBlkM/+5Ln86c+ey22PncqNFx+iEPz/P7/Hn6lt9119Nz/6i0v5V3fX8/7WcvFosTk6DAKmJnW0K6TfrlN58qPm8qc+c1Ne8KRSbrlUp37CR/deLuV171zLD71uKT/31qUdClPRQj1sxJEWiQOvj8B9pPDSblb8uZZqZfQaphIDZZD1QXsMUS69GxK4xApYHsNINg0hkhz6YqBBq8OLoXC+SzDedA5562GYzB3gC1qC4yz1XlKDM/R3pGPEj/Eaa7lZH9q6uf4rsd65POERU3ncLbLVtNWsp/8IvNR5EymkbiGSuoTbxhUUCmeYhy6jizJV8n5zF+KUUo4u46mRL0bL6wUS4oChohWpAZ23Y7ho3QbtNyApzVjwFeEoAwueQtk9Ql48LA55/b71PUxv5KHT86m896NredeH1nL1ZC03XbdYUhcQYSwPYzaVo6OK9mRr91tvnMqTPq6UW64r5SNXS3nHB0v54H2yaOi6Y0QCFJMFhyEbEyzf9X0b7IBSIrbbMdoBaB+UJL4AT/cWlL7jEimAtOuA8Dd24A6b9Oai/Eqj/7NedlVAucEpOihxoIXkGlfNQaAeBjpzaKMNXRAY7gigsGUvEZPlTx7t+FQU4Lo4pH7qfvNnO9kWKg4MNLtjnMDsUJ8RxftAjqSBP06Wvckchpqsa66I5Pc1uMUnfSPCxXEMG2iMFOk1APE+5k599Zb2m4Jkxys3oc7Jq/+mCqtv/w2rzJMsTCld6LDV3Nm2WncPJ9ddgKrVb7ptSStCEvI1nN8Ur0e5sA09Kw3tqg6/52vso4kZgrbSj3aY4pHNPGb191MCM3ZGgmSijc542o1v2xHItCoElMxGngrIHRz97I4+nhLkljei5ZgmiEqpl2itTxlGM584p7BdTtnctOJ89xNDKM2KyGN1B5jDtik6y1D9R9a0h/ryhyEInznPgo93rQsjVU+8Zl47VpKsq6nvgEHTHjPB7YxSnvqbG5Lb3YHQYHFyC00/YvMWqsOxof8aU8TRTZ2/L+as9IQhc0Gp4gr7Mba9/KWrdfkw4D/qXupcf6S8JjdQeN+UNY0h2IR1pUsGGa+U/m3mDvwSfDbgIOcXZ+d4bB4nIHmSOaedJ+G38eSzGPyuLI6HBbCOUFjPoD9bOQgVuu6dtrIC4wcWkW6BW4hTLG/NYHdve6weHSGHRrTZBHrCEDSxM+C1jz+lG5tC4xRg9ocwXGQko28ZemIJoIkdcb3RWN8DA3p/3Rh5EkiK8wNOVAbVd21/RxZkYy4oRFjUgJNcNNEPU3RsFBC3lrfklEW51tqfnKRwwPn4+WCwcdmrGMJGJiAOKSR2ftlms37GA9rTg8UVhLBrQ1noQFfeM4Ftb48AfOVlH3NprDhFZ6FYe0xRXH32tOFf6IePldgkzrp1A15/tW3BWc4mXSHsBtlRQGAcao2FhxBjjzQxwcRFZMNhya7TnzEjUAhabq2IrMEMbvAKWpU1njNZXJSRLbJDTPSfHuZKqdREEC5a/0NrfCFQGP1gxIVNfK+A2FSvEQIIS8hMMVry7F2KmY1ZYcqyKbA+3VAuaqn5RmMXYnnWyWXtMz5JGi0ZpG4BjwmD5sjb644ojW1CbgeWubHgcclxqW8heuVUZ8uT2CNvQLBuEFPCFPGwz1LCYEtRtmrOx9313QAPsryBfuYgZL71N3n6bWMd1r+bBfVrzsOWMd4WEOTkktHuT95azyIyRW500QEII6TWjLUD5nIMYzG4ZvZABLJOLEDKZOasUweQKXPK54+HmvhqNBqC/mMWkwdArs2UJm07LdtGFkhGIoDX2kfjYNLlDM1WOgyY0owVTmRr/+aLQUgICFbyegVZ96NCyang2LQGtLL3OHbep+hGuhlrsuqJ463LwfNxc9YOkj0WtKCaA8lWNwmm/Mhqof4x8aztYYMVG2CSSv3LyBA2mvVQ5LhU18gOsR2kMwvan5yAVP/B4an0YM0TGzSAbQmed0Gh9B9/imsbJkzo8+oA8Y5CGqlZsE6sLfWC8wp1eERJDMKA38yRpn9THqMrD/3g9BufNQyeNQsU1H8IHxEpzEqBOR2us7uAxiFxhAsYqaSBLoBV6u1BHLI4Yg72XVYcqYTUXwII1p6As73TsRVkwe095b1O2VFPRFMHIGFc0iEK7ycZysTh8hHlC2svvGPPjPR98uDC8OD5qLiooEFZnAbDmwBx1XzS1WiznJhRGVSbFVJ9jvHFapgMm6oFCMKUkAxtXsBZb6ZBtWa7bp1Qi2TGJk4VXDurhtTJ2sRHT8V2G9OIwtVwXCYQWYS4dyG5K+uhoAa7osXyvsUV1vYvKXpqklshFnpLROFGRab0PwNv/iAfgmko+oGmaAOK+a+BVvTBNWUUD35xpNCl/5KVZToxEnBDmAQ/W1zuM/l4ololGui/I78t7hlYJAXhsauJXuMBY5sSvRR4wJUQfEUkPwTlA4FoHK3NC22PRq/JmKLmEKaINLBUZDc23rZJwtRB1Uvp9bl6+LWvjrInHPaGwVd1X+GspTAaVCItBk8nnDFwALHvR5eaMmFbY5WQvIOKK1PeBCSWA/q2Uiiuzc4Qgf+Mc5hTomt3ZDF9HNVJQ7naDeK72vX2Wf4ChfIMSvimHAK585oEWkNg26Jz/31eKdfIWRumoko3s1RUBXcsjWOQB7TN2ksIg3MEXJuntnJsHDkIRF4gNtOcXLmG7oAuMiQ3wY7zb9DCt6cLxSWXJ1t0ijhogoaw+0DLWFkRwS2dw9L7LikY5DSnzJA8ReJ8A4s0paIhb6FpYND2rrc1+itkOfDCWjlEGG2A4iIPJxqxmHaOT0ZBbACdq5s2eEWw1s41bjGcZvYLoRR2KplzUVehgZEspIIWyBLg1l6d9HjLKC2njRwISh7dsK6eoxTMB5FGXrLOfZmk5vyMFschK09PfMz5FZcdZ3rxadCYU4pxa70qkQDru49D8FAHtSGbYiSoZMtL5HFi1ct0+q9t6DGyltwm4ytSigGp9pLh5CV0ZdNYHR3dm4GIEhSJR4DS7tNk6ELDOWLDzVFDSEDAyOGzVWFuP4+Dmy/XYsQG/fSpmOUL0FLwXtui3HWpI6GHY6Gu7JEmLQcuhsD6Syp3voMQj4IxIScXNUcOMRahp2vuZkOrpSzUlcbZRtqsp9kqfd8JGtUYXiOl0CrCmTHJkgQLSfM00rRMMSi43D1QIaFUchVR+9A1HSfOoUjRK5YVY/lYJ33vploQY26RI7lMgCyvXmeoRPNGXFMEgWAN0oUmo3yLMVAhTj6HLPehTcNl68UiDmESXrcdB+ck9IWQXSyLoQeUhN/iHZDJTHVjIcukdXcj4ul9YtGJNjUjCjMTsPXprJrkK9LRqFuciLQ0Mfh3iFAEo+wsdYVQpCPsr1gjvhizqngfwUyY3MMxWQIFkkUB9GcXkWtmE4YQ5s2LMTju72Ty/ATvqCdfyG+cmBTqI/HM/Rxv/unedBGAPbQIVtktGZPGE5m6G9Yvbq0hHTczkebtslMr0i22TUr1NvcRcqc/fE9oG2UryKYclhGo2XrKRxZdiprV6TDJePO4O5OSqRikMncUJyMAn0P0u0FpX0ucIas+9ZCfOsVkYtreC76qMPoXVDbNV2UvtpatpVyp+wHcN02aEE+eEsyts36yS1agNkJNP3tCOwtBUm2vt/Ki0BhpLWSD5b20ThsdzizN2AqkNtPPYgYoD2XgrGhLVC3GyzzviMHEiaZIHgt2AQ1EYEnjrgQeiRtakNn33ZVMSaEeJizRMhjHaHHMm08uCUHEUTTjhC8JKaya5cwnKwfB0Y2A81TJy4/Nh4IxQVM+YLnhxLMg34FvU/SBeWylcGbwSZGDOVRoL9LUFoVGJZydkuZWSD1lQ5vVH+NQKD2rzeCB8q8mdNk4Qh6R6JUQVZ2OT2W9v/oA7q1zMlc2LsA88CBYhBGgnBbKSg0Dln+yhsU1is1Gbz3VCyeoOYQiQjC43xJGqueTxFbf923G/ZUucYnlFKnO3FxKPfXBc7iAA0Ja3sTgCOccX4+DDOUDG8EpuZFAQSm1ywP7SQ6zXpWTvqfogW07Tv31IYtQ3HwDlJ7b5R1YroZvYQXedR8yWdoAKtwwcN5B/JDwYZzprmADFiGva+LQtyIHXM8qyRCC/WVl6o7Q7Nsx42NMzglBucwoFnHckPykjsmgezSKkJIlXS/zmGAhQkv3+lDNlH5Pq7tumG+jzsYKDiQiSLDUFBvuhsXVXg4N2nebdqnmhPYOSCNxr2n6GFJrRfrmdSnUA7cf5y/ExJRBqnSAYXFAuCWh014uxWfRkmAKbHGGdsG646mb8odjR6TXQrnUGocrwWhmy25DQvkVUDq2v2GYInjoy57Vuuxcg7xYBytIU4jVRTIRd5DyKgdoBPgU0QANCqCub87Johy32yqwkIxW2I9l/iCthIZg4Ace9CUSmpcCW5NDSDUMSxg36BHDn5zQRCJjNYbfMeLQflb7NJf3VJ/4O2TJbNTckemTWu0+oerh5aW51/Uyx88plVX1Iy2M8WesDU4VH4lQvYmEFwFGBixKTBF7Eh1v3oSeACl4OiZHe5kkzU4Jgk1FPbrdGTceyCrZI+uTVhY0PFlCfsfbwVrK6e8mmZmVDmLJhSXF69ocNB01AO2lb6b0KMyYhMKr0n6ypLgk6cq6wflESYOb/i2+kSonWrHR9i/Zq5/CyPwI820nOvJwsDHWR+enKMyulDIyCFPUYIDoO2lttE9Z4R11InCP0ovWmmQbR9qX6WD+Qc6tRoyX1CX1yBpA8xXW4BEIkYc7b9RpKi6pLFLNmNlL/DgZdmoQ70NooSGymNLnkceWLGL6mIHX0QCPwCq6ZaT+kHffzYTWkpSKAQEs9CCAZZbO2oUkL1KO7CYJQgBlix/O5CwYPC2zDUXDIHrUxWLeaCidI+ghalKMwUq7ouS+Wyot5beLwvI38dVzXaJxmGo7dOUVcjWi3UQLaICBDITJLWcl67w8VmxC2N/EvxG6oyEJtIdDlsfHQ4Ap8YimJH4J0G3Ffmn3zLtp85bl/GyZJt0vFzV1Vqxn9H5QGErSQ4jhU8PCO4A5RFwZtLxUOCGAlIcGIY32m3IRzAKmpZoUe2XF4Lw0ml9Tc/oEytDWoOOgDDI8Tb+lPx5SHNKejrsOHqAGyVVAFDay38LkECVp+MsjBUyrkBJHFtuVhuQXkOCwyzxdM0VBpt2Lpz0GrUZnPNOnOPIavgG2AcRkMUTqyK9VjcjTlPAK+BX+JuLLTshb/bRpJPNGF+L0BiaTpWHmoK8J5biTFlTg8QlL90n2TFljkFj5zdO8Oz9dquzP03z41nVdPjBtDqvjTJQwZ1SZGt3D5QNNBQ6HYOc8i6FugUU3i2//2IsRAjobhjlVIndUEtmGcxtQHkqh8Cf7AUzwE6NiTBJQyWRigw+yent5AjIqJX7sdGYQnUARrCsPYZz/GuFDv7tWm4l27kL8fV8TTfBAqzClowHWccwGIZ8vaEVZW2mFHkeaeKoVkIs/A5TB47kG+0zd1fJZiMGnEWFRB6iL3N88+wrTHDImxtrgsJQUJKF2Mw9s3rwZJEcmG/Z7XafNUf3ygSr78xvvnD5apvWe6aDFBds+KSzzgaPyhxiYxzYfGtIxf6J0MGB4AEkepLvMg06owQZlaDHc8pn+GqGb8FHmsIHOKoVm3JyZ6iMX+2b0gcfA1ZH3NdIy0smXm4plcGow/Vwes/LONKcEKVY+IaRE3g1KLGfm7JX4HrQWHvR9IBoqQRcoQzLQJhWl2ljDdyQ1Wbi4vakMV35qQeuKTJ7qEfDp3/M8iLhaVMc35WIAT8WGwapwmDFHi/I17ito5KFr777yyRQVhSRNWduWqW2LNd1TZV/zFDb/UXeeleGpX9StizHEb7PyZDdYyE0rkaZF0oYRheda4eRaLyMk0ORRDGVF6x++MwE5a4zDNAPNHyyk84bN29H3ANW0bQyU4hr9qOWMOYiPDNMEDYDch6gW1j0WrrNCTDfAAgvNSZsc7YvFhxUOaI75HSbFNDEp/YFVdLTAa91xxgMpROTeJ8ejOSSNfLTUORghWppLiMe5jbLZMO2Z4I8x/dLRL+ZjRJIGZuFEICY52sg+Nus7FmDRg+TYZmOHxCYgJG6qjJcrGOEZVkZGi3WuaT/r+vP1t+7+sbx62UqmfJPzHNaj39EDS+Zfs5Ag4A6RzBUXBMOcaok3SnJusYbrDYprRjAGpND5yGfA+X0Muk1TqEH8r1UH2kAAzerSA9nZaLzjjGmNWGTuZ20P+Q2U6utGLcDrfQku3ccULCkcCEiXvp2UyT64m+oLm4zsaYjrfdp9iZRk6zsfDmHv1ZfgqebmsfBouU3x+/4QPSGYq0rIuw9iRePU7WFgsDoqdJ/VtB0z7AZi8WF5dcpBwZoDA2gDRYrWsT9HVSPlz4Dj1fIbf2vjlnVetu3RnzEFcHRw+bXbs9MPTgdHggNCqAoV0/dgMXCfcv1TZpb3mC7Se0Zo1BMNdyjLgwtkAWGleCAtkSm3Ih5E4Rl3UcWw4y0yHXeBRJCmTM5eo0EcQGXrPVshQhqhiOjdR1sFNSXBHNURIYn+oQGwZrKmgsVeh64sewrvUwTIFBrGW+Fzt9sNZasFBUq0Zk6Acg8PQvEzWuCxy/SY8CpBaTIqIzSVLbnRHb4ETA+CN1ynPKFvBp3oO9wXJGumoOJ4cNjefGI2HdV7ZKTk+rJOB8fz9vTqh44OLry2Xppvf8W6ee2dH3d/KeVVs2yZujONOI238vKxJ2uUkpMMjLDDBWPNR/MotPHu0Nwt+nK8CBMkV9QGE5U5fIbkL2PQONScV3S5gGfzHj+eMhv75qCT5utiLoxenHxi/bRxo/k3Dx5/UWRgDK5bh2N1JFuZzDd2Xd8TpYo8c0zbOIBNoTlCR7JgRXrhoLevw2YKHnuOJAPd4ExXCJqVgJWv81omkPUZ9DI/ic1pjZ+hlTrdiE8Qvvav/eZVgFBu8mDsXzB69tdHHAoNq/9Qhj/p2+a3XmhiVg9ETOPGaRqsJlnPWtJSpt3maFMnPj/92jun+6vszx94i7Rqnqa7hE5IXvSGwfKGXBHTeqQEDBGAibF1GEHjAJ2Rvmii2ctbGDzIkZbOg2Di7zTnPnRggMJZthVYLEEVlZulyIRUnjECW+12aiU97NKIIjk12UjKG2ZYu7VcuhGWm5pgkaWwP2na0ess71Pyj+Aa8jzC85TwY3CTrDlr7rCEWx8w/iRl5FMwV6NutVWlK9KL3eecA/CJKyeOfpihsfTnyfkqGBqoYR+jtpyB5u3gMMiHkUYvRJZzG24KHvXbHoecbOEOR9zj0KuEruNaFUYd5gMwcooHTIXyrnqlyj6GZ33eHeuNp9uTX503h49cdufLjG1GODuMGAO1YvCZMSQ5ggYRt5CXzIwPSBht5yBDj4jJmjdgAX+ahp8Ewh1MrofgL+jb6+oTGpmQgQlEfAMi0XtoI/PL75aCScPtR6eb4mDTkpek5X6PrD0bgtE7/J5FFGheTn2SR2MkZr8pHZQfRii3IoinNbwm6gCWCznUg57LJOuM/Rt4DHK9o2ZP6TlqhqGukEsAxDJch0HjGHqWlVH3qDYASrID/y4vJjsohHkB/KIFLxX+H03L9vwDDx5c+KRfu3O6vz7QTiZ44R2vOqiQYJqmH5jrUTllrWQPPnVjAeJF+QmBYodIRw5/1+Cv5zezZdzHUThb3h9R+23wlKAiKNIeoXmQzc94AJAP3kMsMv0Kk2OugjAHnXlgMeW+/0Fuk2NU2gIr5vPFgGtZ8Zh+0LNds7TyNYSnckhp8AnnN6Sn2QJZ0wz5xWK7yEorQEeHnjVaIWwVIje6VZZJhz6fnIRmUQ31YmH7oJ9sYHFpBVaNZYZABPG1U5EzNSOxBmDLDfGAv90Y+kDyatAh8qJx7pdJQUGEueWuyvY6rT9Qhb/KPNKYyiPu+aCM5zL9w91pPVd12nD+RyYaVnbhullQIoDJCcWPcnccZGWbHxkNVkmEleEZcuvZolNacogOeBjQrBkRUQFShyNMqWQLFlJjtbygWDizkVCjd2VgZb3vptVtmafP7h3VKQRl+u+zyDx+pkXip+2/yApkoAlCrg1br1ARGw2kIbMIIGIkGalQyJbhZuUNOgPNQ8rH3k0606JR9C4HY6Z6qe0QRfyWp3cwbnzJUsPHKxSbjoL8cNOhMDp59W3jQsX0CbyKaWL7O4f6zGZlSDFNmyrbZbP5Hpb5pgDuuusluzvuWOc3vvz47nXZvnJzfKFGg3cgK4fHQKV6SVbckkBTeMSEQ/ETJhs+S2UYp9dwVgALfoZsGGFOTOz41i+4R92TaYKvIk/+MuFTeWFbKLZ2hDaESRJaMKCS47PMcEjeiBYcfhKby/La78ECFKOTKhAwiz+i++abFCQPLqMYe4aVGM5OdKvrdTODq3DxdDDEuWvfogPPtAFoSOPrO19nJx7nZ8SViMGBSYjY+7sOxx4oQkmY7uX9ADICUuWcllJz3n5ASSGRzb/E/ANX/pZ0BFSMsUFKNsmd/t1VmV5221e+8c7ju6usV5mv5dmGJfc8XYdvmb6jHhw56VE7nJDDSMBpSDu+Zr6HkLU/MV86tI9he5JHG0w268zf/AINbBgztDnH1dksd0pgvUYZ1JVgeVPlUBpkvS1kkz+gB3c6Y0lDZb722zzTdDZCENo9umFIo6BxHfX0YKG3zMwbI+vnD0HZM7mcqfrkKbbuPkXg+mrc3/qmW2lh/By95d2MQ6M6xCMkkPOOQn6DCSYp0ExUGmMZDlIWZnej0DM98Fjwu2h9zneBC+WpjMTaI6qOxG/wd1jWqff6uWOdy53T8oyvffBnDy5d95m706u7ucybtnY4iJ5aFnKERRgFrCXdZ4eN7d1JkN2hIi9sdR+z1OOFdNtkkYUSmIdMqEEv2afGxB+gTSO0NdoHZw8F7Wbki+A0iQWENjI6yBCO0JJu7skZZugXo0jLyAzNc+93qIEhIzmQ7SprJjYy3IfQTr7sfMBhXZTBo+3jMgbYvnCrr5KbYzw3+qsdXPVi6EdoI+WCj/rKDeAh28dLqcF7WY4zBzniyYOdmbqxqqb8wkC0U6CX3eb44mZ3cuXn7n75dZ8FGcebYcuy2+8Bb2y+sa1Qwn7jBllcABk5h6ynkPrZO0gcxuHlONCiXBkJsFV1rQoD5RrR/4YQyID4QKFoLyyE6AxOntCdfVBpbopZ7RTA1IZZ29gqd4OdXOrm42DhJyaEyR/owMyolmYbikLHo5XPkmuoroMJqrYJpQRQk/Lh0yhS2NstgvC2L9klU8LDqn2k0Fsc9giaRrJiwg/eXL3ZrLRGfNMRmvk9waTcML4W5LbDIUYZezRptVyEG1HhDQtpY/wrIqpIZj36RpbxoQK4665pd/vt6+aN33bxVbvT0x/dHB9v1nZGq/cAlpXtFA846INVUzYoHJNkJaClSGKJjyLnRzCPOprAg0xQgsXJmsWCiIB0lrohma59zqDxXRn9mqTRNqZkax5GibggyUbbeQfv2NdsRjjv3lNdmcnzOMR2xqK8WdilF6E9WpdhuRHpXVswEmTJb2v7MyhAe2UsIsIT3mC25zBu6LqXmIWMFBbfauXwKT9gEp6Hr/EFs0EwJlwYwws0mzV90PpuJXskRvkJ2mDkolgxyVcLysSsf2a16ERd1zr3P94sJ1d/7I3fdviq229/xabKOLcjHxZU7npaq3Zal/mrdmdnJ22ZMJkKeKQjgybrp1+CHGSnGAaUNAlCY13HXKU5PEsbSvBYaktJR8iX6BfRR9R50utW6RenN4foODzzLCidhqf0VuPgqLRijY6tJUkoZvs5LVzjh0IyMNhnyYh7zCEFWpASClWScjPLZNOOmL7N8pnXEWSLbbWh8pBMBcFXXrKXk1So0DRmZpKw/2DEslM8ERp99a54K50XmdcIYeXQDhOLF+oM6oGgsy0I9OHNFBMxM9BwBFuX/R6U5ezsZLfZfVVt5V1Pu72zEJ0CqPOD219R5jf97Qu/uuzOX745OtysS9kF7gD2ofkqb8iYreXAXxH+c4aisE1uqq8eCdyITRuGJt5eSZqR/hVa+R5yAVmEwcxMJ8QGYgA+2qsXXSLiaNvo8wsaZt27UpK+sOChH+mdvdG9xK9h+wUHUN2LebcnUxaYs1rcPq3roAYFQ4n74UDYSMagjEDQVAhzQUQmCWXh5woXT8AHwfIm+0LIhzL3whhQ++wrGlKTmpKRZHRhXxPapNhlEI9o/h1Iyb3dwfHhZt2ef9ubv+Vhb60yzXN/pu3gs071hbe8pWyOtlf/03x84bbl9GQ3TfPGwVmvhdkycGdilh8qFW4RR9USehbpaRgq1OWdJyLW7iFRJOgCp5QcV+YMbM40puKQLBGWRg8tWURGMRAIVW5SPyX5mIHwrK/Q5Gt9iM71NdsyvXsG/dHWgzwhwdDTR21PVaUzp8RGcrJ1RIpubJoUAQvsEpX9CtVzb/yU+i20ytl/lISBtnCyEPf/WuM6UWYhsYUZUQqxZhQEBBiUQOJ90uch+mTnFlBd/XBzezHQda1eXkHK83E4Wpfd5ujiZnd2cvfp5sKnP/3pZXfXS9rZwA8BAUjB611vKes9d05n67r5irLdnk3zphasCGM4St5ZQHW2arZAB9peLZbhyCgUTAJTLDYqCRKZhowxdtWlxjxYCZgNZ+xH4JqQuAvhNmtFJsWbEufOgojoN8PlkP8erQbMtrVAGd7ISsUMhZ+ETgCQMIuBj7DeR2iXcxA8YcinP43SmkPgFABNiJmND3SaRN0yK40sNvWfKHtp20ErRmrMB2naltCJKY7Mh92gl4AIzN6w39XzFH3c2vMDY5OzGs1uKY3be3QYqCkZ52neJ8DQTWuQ+n54LGwdDei2rE1W6z5/m/krqgxXWR4J/zUUgEwFXnjHelCTg5az86/aHB9tqlMB1a0dvvSFGoLiPFXQhcDbIEyTtb7PrZ3wadR4BRvDSm8QjVz0z9viJIaSzAzaboeM/jbEnOeFwlfKhNDyjOhRZlhxmLjPshjNrJjWYNFzlJAQS9cJJwYEpL4r23xHZvEh9GkMDYOPL68vp9Wc3UpPAmkNaZnXuotryHNEJNFBpGhoSiAOYr1O7bRTnWv52LAmH5TJNAH5Q4xzUvZlRa+Pm/4RH4Wruz2bnwSFjp67EfB9H1PUKOUW+BTLFQEO2uXOSbkxarKu067K6u7s/Ktq0k+V4RH0p6qv+ZleeMe6efWd0/aZX3/1nx5cuvDS7eUr22meDzoPcXvaxeNjFTyM1Zs+GAS10WXAHFAgRAYGMCy9ng2BaOS0tDPkUrsCsEGnZ2y9RabmACS5liYeSQPqDko/Ls2tquNns7zExGGSYsKh7cdOvFBI0dsVmuKpD9EJamNjCCJBYOtHEiZrMfhQywqJAbQkec8QIgPS4YDeMbiJcsmfMSqI6lzDuKA/cUrBY+BLjOUKZ1ju/3COSyqvfYlGJdBcO8wnbHcJIHppWdbt4aWLB9srJ//sDd968cur8L/6zub139vEjyWnDXvc8TfL9OPlNy5st7f8+83xhWfvTq7spmmzsSOjkX8PJZarC3NcGqhs35NkO0mCduhaHXMF9NNQpTsVbTVf0lzMS4YUh9LaN8U1UC8AITciHezQtDlE1mBgb068WFk1yJBQ+MatVUzw4cyzlGq7DmiQcl3QcEudDsJqF6IfJNGlQdaPsTyByZ2amEjhaMLp5w/3+jfzCqmhLDsTAwIea/INdO1Mni02IJ2XCO8OlDRlPZjex1Jv3A/jlnjQnThlXXe7gwuXNsvZ6eun99/7OX/o4x99cuff1Fzra3z2TwGcYuudpZTX3/mYK8v58iXr2dl7NocXN2tZ2loB27pbNavv6ErzOeDWMEzYFYashDlLIvjXQmgeGv/nxdLAt5NPfPZm8NKb50THZZNzSqMMwsIYt7+Md5kRAfiwfiLKHi+lM7+y9dICqTj8kmAxEEGYmwIuRnZSS6LUynomZUPjr6XXDqcbsJy0M094yKdnnXDy/DYS3f50Vsnit2wxo/7ljxTNtNWrWHfA9a2h1bQrEbIFvQT4kdyAST2e/OZi7dM6SjfiJLnQvbyDliOa2J54UAtcJFX4q0wu2/P3nM+7L3n9//GYK1VmP5bwh3H5mJ9XrJvykmn3rK/78DPKwfWvmuf5lt32bDdN00b2aUcHebboVpzjsdHiUFyhoQfKBFAsJ1rbNWiIx/dwwDW7KRk8zbr4oQixTwPytCNPT4Jwr6lfVjAQCdEmAww1RwERaK5B7DmnWxskyAbP0IczKdFsSEaJyjhK6POCuzThgQ3mj6/R3zNm6SPkjUinfaeoDRPd58FAO3JWWb+ZJ6vmmHpuHEskdfHXsgIDRF6M1t4oGbxGNjZcziA92nkf33PzXTlV6Z8Pqn9u+fD5+emLfunbbngTZLU8hM/HRgD4vGTa1S2E3vBtt7xpu7v6Reu6fnQ+ON6sS101iPaq6JjVSEJCgmn9VCsgzO+EwhxcmCEKPzvpQoxXCWbQlTYW5fQis3SsH6ldKW/M/+Ifi7UTtKQXnHUjowcPOCx6jewQXuIlA/7eNLINPThpqwk9UsBgM3QUf/whUoBxCa0ZXEoUEkZmZeMoBoQNZZCFS0Gajj7eBv3GOQcE1fO23KFvaZrj489PmoonyE30oOlinDINxjz/NvbuFV3kx54HvVUegTG0Zy9DkJZdlcEyrR/dbq9+URX+238Lwv9bUwA1S/Al0646Ft788oe95vzkyhesZbl3PrqwKcuyDZtt6sm8vCVXiAOj86agOUwUiR0cRSa8EGzS4kYcHInM3K0IRf8TpsYwuAcfzMWjEZjD6jYVFRVPni9mjrBLPh1xXcLoBHSLLMQqBUyBRkSLTcajIUdWIEnJ2fSHFCdq0lRlOUUnOKWt7oA4TFj7hCRpTw5X0pQxFgQJNNqEUVDraHtWornqWO70Ih+fFYdSPjNFr5JWimhDBdfq9UzC/Cb6xaSBkZPmEqf5cFO9vp0eK1xj42XZbg4v1an4vedXzr6gymSVzSqj5bfw+S0pgPqpEYGmBP7Ow16znpz+d2XZvevgwsWDdbdugZ8M7uQFKcZXbilAAXSMwIExDZgOLGwuBfU/5HmtbwQBofKcXKGpwnr2chPTWwvy8lxjZqQlcz+C6BozBUeklmX3gHAIM3jv6wnO0aPK2zujXUAC2fegEMh+u2gxkjDcoWEqX03G7CyM6+EvllUii/kkYjOoDY2pqeza8Lohhxk8n67EnvS7NbWwnC3E6gIBPAikjN0nBG29GnV8YUOnKLx7tKu07jzUAVBHh0Hl4h9TMuwnwf4CbEByn8mYVuGvMrdu31Vl8M1/57om/FU2y2/x02OUh/hBhU/7miuPOz7e/MDm6Oi5u5OT7VrWTeVcEAOiES2PCrXFdPt8cZfDflWfb/sE9nXgpC+FiIIkm3g1ZOP3VIpS2JuRPuZj8GHO3nDsjWgMyOCCaGNtRj8M9KDRab7vLBTrZponn0H+gHIYk9zHSCPyy9j1lAEHaeK+akecqcnUAbm4Qe98C0I33fZt3yd3MOmffJP7uhqW5GuEKnkazgiIhD6jUPbnDKmZypR/qsOVlJXBjcyQTTXtDi5dPNidnv3CfLr7Y6//9kvv/u0K/28LAeBTK6zzjXu+/dK7d5c//KL17Pz7Dy5eOJiq2ap+gQCHs8jBK50MbugvWQmaNiDX3LS+kh9W0IY1zMVdz4PZvG5HGFwz3gV7uB0jiEIpnvau3XYLg3bzQ+Kd13NZWDslMetMIk2D8GxILwZ5r6HbLcpBSiRuH8cGx1MnQ+SF0bqBIAW32L3IxkeuwyjkfP+MvH1s6eTdoUDTRb5pSC03s4MWpZu2BactCXtImY6JQPa8+XjyMmZPk7Td4S3xx1VvlhLmg5qEVw3rwcWLB8vJ+fdXmavCX2Xwtyv8iSK/zQ9tMPBpLzv5K9M8/52yOTzanV2tjdpM06Q7KcO6pYUvYWLpjeqm3iUOhMD3egXCj/k6HJHJQ0ueaLcuMRlxZEx6lOFJSgnTpK64jd5nDdjSd+sAjAv6jVL4GztGs1ebWXG/dceUKaEKC9cQG6a5lk1v2PztlVIfLy2MyiX6dWPRl2s+Hl69FM06IUQKsVFyVaRxGbSLHc5O4c5q4W408kmpxKSx0D99KEbACsX324m9u4PjSwfr7vxsWZavvvtbLvy99kja3OP3RwFIY6dyR5lqY5719ZefM20Ovms6PnrO7uppi1HWRURsNIy0adGJWxZwQqYYFm2QOJIfwd+LDOadJbCcn2dqmPeVBpiCiN5t34IaBfTa23tsTUvPBGbwV1q5bTLFoVESBlYgQkttp1qYrOjcN+JS4gZUtz6xBTJg7Pg9bJ+uUxM44my6E6YkiiKs0+yzGGcKRcXCQkQlJyK6UvB68sQlVpVVPmlvmpLwI2aYAkRglNobrshmapjgdCY4GnyhqoBb6v282WyOj8r29Ox10276yje8/Oh1IvitxqG6/T2ZAsTPtGLtwBteft3rTua3feb56ekdZZ6v1Owk3ZLEvJO8B5y66JzOwN+mlRlOMhx0B2D3LlkuwM6cI45QEg8yL2k2VrMRrTMba3YYKOmICwaK5Fx33Ns/AMTtVI/8ZEuk97ABpP1moYoTL+NTMjetXIWhcM5ZeM2E3EXHEQG1jVKiR9vDhSXQGSEl3cuY2dyp5Nx0FysLOfWdokxBiNXyo0fmT7DY5toJvxVNjGXN6wbRMySlX6xSfYohT+qiJ9DUaO6DJDy57NZ1XQ4uXNys03xle3p6x9l89JlV+D23/79c+EMXf8c+BEue+bLTp2+m6ZunzeGX1pp2p1ert2OtyUP1fu7B3sMOQEkKle2DVtGsdjY2rhvorIPDPRkg8JsjgoACbDaTk5McNXjPKCmErGrof17+4LwULZHSw2PJjERyGIzbnDL2GFqDXqpAee4NBdCtB7AIhDdyhG76cbFSzRHG7w0REZfXZWhqDyk9mSuGE3iUzLXmMRjWew2EF7G+bZnPabqiXP0hcFhEZO139Z1Nm+OLc9UVu935D63r+k1v/Jbjt/xOQf7ffQXQPuv0wjuKOSdu+8bzPzCt69fNB4cvqiZvd3pS+7wt07qxmaVainZee54gMZYlvvXBiIS1N/u0w5hkzBl+3vYI/8ya6HLOFN8Vhw7lbydXMRQU123z81B29GuYcLXzqPzawM4G0ROLB0BCQmEMqW3BwhooJkyrWijQrakNjuYCpA0DolKBpR8IKe/IbCNkYdAuR9GnIuQ8zPnFcfoVm8MIzRcR+di4cp+chqaBbcC6ub+QwyBjV5d0i/JU0ilL3FBxY9RMi3k3lelgPj4WflrOX7Uu07fd/bcOf6o+KV7+svudsvq/BwpAP1Vj1Y9qrdu+/uQLps38l0pZv2BzfDQtZ7uy7M52Sqi5YQPmq2kg1sNlXg4xBdqupW4xwchOeFYXqdhrI3ObkkYs/ZSYmWyeKyYIrceJYx4ynH5gyHiElZfiwhcOqaBIID8NKBmvR8vviCF+BvgoWHL2tdg7SZAYpVloM2XhmRLNTi7QO+ePoAeDhUts2V2JcYnRKZr7ihH2fICJ/FEu+NZZUmr7PoD+Ztmzf4PGXcutlGgyMc/Hm+l4LsvJWX3gJ9Z1+ft3/60LPzGSn9+Nz++uAtBP3Wj0rlfUYKdIxLPuOHvOtG7+9Lpu/+h8dPSYSqRluyvr7ry6PBdRA63zpBG8ycZGjNfCFJWYOCzwMk40qBtNPcrrLZVB45RyE+xNmCerwJkeYEuA1W39JIg5OlgXY6Zkyds9UoBhmTUpqj29a9cM2YDZ0XbXoG75KLEl1RtonpRT6FM31xmQG8tf0/2oJPi6Oz+tDzZmeEiz94woq2FHhg7mc+I+cQOcIO4I5mXkhqoAEdd1nZoQr9O6ztPB0Twf1k07Kt+fv3edN/9yWnf/6A13Hr1O2znd/pIy5w08/5tVAEER1E1HVaM9+2vWh62HZ59XyvSlS1lfuDk8elSp3oFGmKWsy1nNRV1kEVRzNLVsd5o0lLxKBHCRV03h/ECzXsR7nIwEC80wuiPQ4LDGkKzESzlRLgQe0NOEKq3xTIkfwbdh8pdgL1ASMiapfobVWc3laXQvmINPak+coZH1JOWTP1Eo49Li6RpKygXOMyndGCD6EVNzaVJE9XuEYbX7NHUyBONhUN6HICqn4POrtqs+23y2PgOc5nlzVObNXKrnq66hXc7P31dKeVUp0w/OZw/8u9d/+y33tafvWOe6bffvheBHGv1ef2pHn14mzluupxOfL9vnlrK8sKzTZyzr8rSprB8/H16w4wmaYliqH7EGFapHVQCX9YQk1vkw6Hj5jkQZdmxROBFTANb/nqUvyoWBrB1QmsKH/LFwZ1goMwpxxrllQAH0y6YRAREl0YFFHNDAG/+xh4uds4xo3OEW0ZYlD1FFwYKSAIucjUOuPf04idCfjHA/UIl2bc4lejRkgIlCveR/tiXFoD0QWGPSaSN/Z2zQUcpydlKf/M15mu4p0/zz5aC8+nA5+IV6GC/qqMk8bduu30Wo/1+XAsCnQp279HzCtIjhU7/2ozcfzpeesh7MT12250+b5/KkZV0fO0/zw8u6PqyU9VIp5QjpdA6FefhDZa71Q4hIONoNn4tJZ0E5Bj6yUyH1GU/yx+e78SpPp/Ve/DOYmMQ4N4SURQltSjXtsc3jeqwkViSWadiLnucO+NSMe8Gt87n4gBHDRYLxrDySehz3Avikn3AVtDpEFqPisigTNSqkocshDWdlmq6UabpvXdd7p1LeU0p5e5nne6bt9Mvny5W3vvlv3/QRrrWt2qt8f7tPjX8/Pv9fGVtCd8sIyP8AAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function li(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=y=>{o.scrollLeft=y,n.current=o.scrollLeft},g=(y=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(y),f=window.requestAnimationFrame(()=>{d(y),m=window.setTimeout(()=>{d(y)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},w=y=>{y.pointerType===\"mouse\"&&y.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=y.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},v=y=>{if(!a)return;let I=y.clientX-l;Math.abs(I)<4||(i=!0,o.scrollLeft=u-I,n.current=o.scrollLeft,y.preventDefault())},S=y=>{let I=o.scrollLeft;if(i){y.preventDefault(),y.stopPropagation();return}g(I)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",w),o.addEventListener(\"click\",S,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",v,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",w),o.removeEventListener(\"click\",S,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",v),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Rl(){let[e,t]=(0,r.useState)(\"quark\");li(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(lt,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(lt,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(lt,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(lt,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(lt,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(lt,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(pd,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(cd,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(fd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(dd,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ud,null)}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var F=yt.default.create({baseURL:\"/website\"}),zt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);F.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=zt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var ed=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",td={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},nd=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),rd=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},od=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},ad=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},id=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",ad(a),\"\"].join(\"|\")},sd=async e=>{let t=td[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await nd(ed,\"yidong-aliyun-captcha-script\"),rd(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:od(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(zt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},J={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},qt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ld={[J.IDLE]:\"READY\",[J.LOADING]:\"LOADING\",[J.WAITING]:\"SCAN ME\",[J.SCANNED]:\"CONFIRM\",[J.SUCCESS]:\"SUCCESS\",[J.EXPIRED]:\"EXPIRED\",[J.ERROR]:\"ERROR\"};function lt({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(J.IDLE),[u,c]=r.default.useState(Ht),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(y=>{d(),f.current=setInterval(async()=>{try{let I=await yt.default.post(\"/website\".concat(n),{sessionKey:y});if(I.data.code===0&&I.data.data){let{status:A,cookie:B}=I.data.data;switch(A){case qt.CONFIRMED:d(),a(B),l(J.SUCCESS),await F.put(t,{cookie:B}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c(Ht),l(J.IDLE)},2e3);break;case qt.SCANNED:l(J.SCANNED);break;case qt.EXPIRED:case qt.CANCELED:d(),c(Ht),l(J.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case qt.NEW:default:break}}}catch(I){}},2e3),m.current=setTimeout(()=>{d(),c(Ht),l(J.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==J.LOADING){d(),l(J.LOADING);try{let y=await yt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),I=y.headers[\"x-session-key\"];if(I){let A=URL.createObjectURL(y.data);c(A),l(J.WAITING),g(I)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(y){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",y),l(J.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),w=(0,r.useCallback)(y=>{if(!y){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Pr.default)(y),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),v=(0,r.useCallback)(async()=>{let y=o!=null?o:\"\";await F.put(t,{cookie:y}),s.message.success(y?\"\\u5165\\u5E93\\u6210\\u529F\":\"\\u5DF2\\u6E05\\u7A7A\\u5165\\u5E93\\u5185\\u5BB9\")},[t,o]);(0,r.useEffect)(()=>(F.get(t).then(y=>{a(y||\"\")}),()=>d()),[t,d]);let S=()=>{switch(i){case J.SUCCESS:return\"#22c55e\";case J.ERROR:case J.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===J.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===J.WAITING||i===J.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:S()}}),r.default.createElement(\"span\",{className:\"status-text\"},ld[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:y=>a(y.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>w(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:v},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"}))))}function dd({api:e,children:t}){let[n]=s.Form.useForm(),o=async()=>{try{let a=await n.validateFields();await F.put(e,a),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,r.useEffect)(()=>{F.get(e).then(a=>{n.setFieldsValue(a)})},[]),r.default.createElement(s.Form,{form:n,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),t,r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\")))}function ud(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),o=(0,r.useCallback)(async()=>{let g=await F.get(\"/pan123/account\");e.setFieldsValue(g||{})},[e]);(0,r.useEffect)(()=>{o().catch(g=>{console.error(g),s.message.error(\"\\u8BFB\\u53D6\\u5931\\u8D25\\uFF1A\".concat((g==null?void 0:g.message)||g))})},[o]);let a=async({silent:g=!1}={})=>{let p=e.getFieldsValue(!0);await F.put(\"/pan123/account\",p),g||s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=(g,p,w,v=!1)=>{if(!g||g.closed)return;let S=String(p||\"\").replace(/[&<>\"']/g,y=>({\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"})[y]),E=String(w||\"\").replace(/[&<>\"']/g,y=>({\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"})[y]);try{g.document.open(),g.document.write('\\n <!doctype html>\\n <html lang=\"zh-CN\">\\n <head>\\n <meta charset=\"utf-8\">\\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover\">\\n <title>'.concat(S,'</title>\\n <style>\\n html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\\n @supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }\\n body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }\\n .panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }\\n h1 { margin: 0 0 14px; font-size: 22px; line-height: 1.35; font-weight: 700; color: ').concat(v?\"#b91c1c\":\"#111827\",'; }\\n p { margin: 0; color: #4b5563; font-size: 15px; line-height: 1.7; white-space: pre-wrap; word-break: break-word; }\\n </style>\\n </head>\\n <body>\\n <main class=\"panel\">\\n <h1>').concat(S,\"</h1>\\n <p>\").concat(E,\"</p>\\n </main>\\n </body>\\n </html>\\n \")),g.document.close()}catch(y){console.warn(\"\\u66F4\\u65B0\\u6388\\u6743\\u9875\\u5931\\u8D25:\",y)}},l=g=>{let p=window.open(g,\"_blank\");return p||s.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u6388\\u6743\\u94FE\\u63A5\"),p},u=g=>new Promise(p=>window.setTimeout(p,g)),c=async()=>{for(let p=0;p<30;p+=1){let w=await F.get(\"/pan123/oauth/litepan/status/latest\");if(w.status===\"success\")return w;if(w.status===\"error\")throw new Error(w.error||\"LitePan OAuth \\u8BA4\\u8BC1\\u5931\\u8D25\");await u(p<3?2e3:p<10?3e3:4e3)}throw new Error(\"LitePan OAuth \\u8BA4\\u8BC1\\u8D85\\u65F6\\uFF0C\\u8BF7\\u68C0\\u67E5\\u662F\\u5426\\u5DF2\\u5B8C\\u6210\\u6388\\u6743\")},f=async()=>{n(\"openlist\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/openlist/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await F.post(\"/pan123/oauth/openlist/refresh\"),await o(),s.message.success(\"OpenList Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},m=async()=>{n(\"litepan\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/litepan/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await F.post(\"/pan123/oauth/litepan/refresh\"),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\"),await c(),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5199\\u5165\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},d=!!t;return r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),r.default.createElement(s.Form.Item,{label:\"access_token\",name:\"accessToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"refresh_token\",name:\"refreshToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u514D\\u767B\\u5F55\",name:\"useDirectDownload\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons action-buttons--three\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:f,disabled:d,title:\"OpenList \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ni,alt:\"\"}),r.default.createElement(\"span\",null,t===\"openlist\"?\"\\u83B7\\u53D6\\u4E2D...\":\"OpenList\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:m,disabled:d,title:\"LitePan \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ri,alt:\"\"}),r.default.createElement(\"span\",null,t===\"litepan\"?\"\\u83B7\\u53D6\\u4E2D...\":\"LitePan\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary action-buttons__full\",onClick:()=>a(),disabled:d},r.default.createElement(Ze,{className:\"btn-icon\"}),r.default.createElement(\"span\",null,\"\\u5165\\u5E93\")))))}function cd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await F.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await F.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await F.put(\"/xunlei/account\",d),await F.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await F.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await F.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"})))))}function fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await sd(g);await F.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:id()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(zt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await F.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await F.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(zt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await F.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(zt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{F.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ze,{className:\"btn-icon\"})))))}function pd(){return r.default.createElement(lt,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function md({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,w)=>{let v=String(w||\"\").trim();return!v||/^https?:\\/\\/\\S+$/i.test(v)||/^data:image\\//i.test(v)||/^\\/\\S+/.test(v)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var di=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=O(L(O({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",O(L(O({},e),{ref:o,style:u}),t))},ui=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(dr,O({ref:n,className:\"drag-handle\"},t))},Ln=\"https://pan.199333.xyz\",bt=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Mr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function gd(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return O({},Mr)}function hd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Bn(e={}){return String(e.name||\"Emby\").trim()}function xd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function bd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function yd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function vd(e={}){let{movieCount:t,seriesCount:n}=xd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(bd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(yd,null),r.default.createElement(\"span\",null,n)))}function Nr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Mr.libraryStats}}var oi=\"nodejs_emby_\",ai=\"nodejs_alist_\";function wd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function Cd(e=\"\"){let t=String(e||\"\");return t.startsWith(ai)?t.slice(ai.length):\"\"}function ci(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Dr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var Sd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_pinglian\",api:\"/pinglian/config\",name:\"\\u76D8\\u94FE\",type:\"account\"},{key:\"nodejs_guanying\",api:\"/guanying/config\",name:\"\\u89C2\\u5F71\",type:\"domain-cookie\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ii=Sd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function Od({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,w]=(0,r.useState)(!1),[v,S]=(0,r.useState)([]),[E,y]=(0,r.useState)([]),[I,A]=(0,r.useState)([]),[B,V]=(0,r.useState)(\"\"),[H,z]=(0,r.useState)([]),x=(0,r.useRef)(0),C=()=>{let T=B.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),V(\"\");return}m([T,...f]),z([T,...H]),S([T,...v]),V(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},M=(T,D)=>{D.stopPropagation(),m(f.filter($=>$!==T)),S(v.filter($=>$!==T)),z(H.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},q=(0,r.useCallback)(async T=>{if(!T)return null;w(!0);try{let D=await yt.default.get(\"\".concat(T,\"/api/health\"));if(D.data){let $=D.data.channels||[],Y=D.data.plugins||[];return m($),g(Y),{channels:$,plugins:Y}}return null}catch(D){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",D),null}finally{w(!1)}},[]);(0,r.useEffect)(()=>{let T=++x.current;if(!e){l(!1),V(\"\");return}l(!0),F.get(\"/pansou/config\").then(async D=>{if(x.current!==T)return;let $=D.url||Ln;a.setFieldsValue({name:o,url:$});let Y=await q($);D.channels&&D.channels.length>0?S(D.channels):Y!=null&&Y.channels&&S(Y.channels),D.plugins&&D.plugins.length>0?y(D.plugins):Y!=null&&Y.plugins&&y(Y.plugins),D.cloudTypes&&D.cloudTypes.length>0?A(D.cloudTypes):A(bt.map(me=>me.key))}).catch(D=>{x.current===T&&(console.error(D),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{x.current===T&&l(!1)})},[e,o,a,q]);let _=(0,r.useCallback)(T=>{let D=T.target.value||Ln;q(D)},[q]),j=async()=>{let T;try{T=await a.validateFields()}catch(D){return}try{l(!0);let D={url:T.url||\"\",channels:v,plugins:E,cloudTypes:I};await F.put(\"/pansou/config\",D),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(D){console.error(D),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((D==null?void 0:D.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await F.delete(\"/pansou/config\");let D=(await F.get(\"/pansou/config\")).url||Ln;a.setFieldsValue({url:D});let $=await q(D);S(($==null?void 0:$.channels)||[]),y(($==null?void 0:$.plugins)||[]),A(bt.map(Y=>Y.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,D,$)=>{T.includes($)?D(T.filter(Y=>Y!==$)):D([...T,$])},R=(T,D,$)=>{D.length===T.length?$([]):$([...T])},Fe=(T,D,$,Y,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(D?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},Y||T),me&&r.default.createElement(Je,{className:\"pansou-checkbox-card__delete\",onClick:Se}));li(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:v.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:I.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Ln),onBlur:_}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let D=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":D,className:\"pansou-config-tabs__tab\".concat(D?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",v.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(f,v,S)},v.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:B,onChange:T=>V(T.target.value),onPressEnter:C,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:C},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!B||T.toLowerCase().includes(B.toLowerCase())).map(T=>Fe(T,v.includes(T),()=>Ce(v,S,T),T,H.includes(T),D=>M(T,D)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(d,E,y)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Fe(T,E.includes(T),()=>Ce(E,y,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",I.length,\" / \",bt.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>R(bt.map(T=>T.key),I,A)},I.length===bt.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},bt.map(T=>Fe(T.key,I.includes(T.key),()=>Ce(I,A,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:j,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(O(O({},Mr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(y){return}let p=gd(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let w={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},v=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),S=String((a==null?void 0:a.username)||\"\").trim();w.host===v&&w.username===S&&(w.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let y=await F.post(\"/emby-spider/verify\",w);E=!0,await n(y||w),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(y){console.error(y),y!=null&&y.message&&y.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(y.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return hd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function kd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(L(O({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(O({},g)),o(!0)},m=g=>{let p=l.findIndex(S=>S.id===(a==null?void 0:a.id)),w=Nr(g),v=p>=0?[...l]:[...l,w];p>=0&&(v[p]=w),t(v),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Fr,alt:Bn(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Bn(g)),r.default.createElement(un,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},vd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await F.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function Td({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(L(O({},ci()),{isNew:!0})),o(!0)},c=d=>{i(O({},d)),o(!0)},f=d=>{let g=l.findIndex(v=>v.id===(a==null?void 0:a.id)),p=Dr(d),w=g>=0?[...l]:[...l,p];g>=0&&(w[g]=p),t(w),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(un,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Fd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ii[o]||(c?ii.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",w=(f==null?void 0:f.type)===\"emby-spider\",v=(f==null?void 0:f.type)===\"alist-video\",S=(f==null?void 0:f.type)===\"domain-cookie\",E=(f==null?void 0:f.type)===\"account\",y=o===\"nodejs_tgchannel\",I=o===\"nodejs_guanying\"?\"app_auth\":o===\"nodejs_123ypzysq\"?\"bbs_token\":\"Cookie\",A=(0,r.useRef)(0),B=x=>{if(x===\"\"||x===null||typeof x>\"u\")return null;let C=Number(x);return Number.isFinite(C)?C:null},V=x=>{if(x==null||x===\"\")return\"\";let C=Number(x);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let x=++A.current;if(!e){u(!1);return}m?(u(!0),F.get(f.api).then(C=>{if(A.current===x)if(d){let M=[],q=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(_=>q.add(_)),C.channelUsername&&C.channelUsername.forEach(_=>q.add(_)),C.homeChannelUsername&&C.homeChannelUsername.forEach(_=>q.add(_)),q.forEach(_=>{var j;M.push({id:_,name:((j=C.channelNameMap)==null?void 0:j[_])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:B(C==null?void 0:C.count),pic:C.pic,channels:M.length>0?M:y?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):w?i.setFieldsValue({name:a,servers:C.servers||[]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):S?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):E?i.setFieldsValue({name:a,url:C.url||\"\",username:C.username||\"\",password:C.password||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{A.current===x&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{A.current===x&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,w,v,S,E,i,f]);let H=async()=>{let x;try{x=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},M=[],q=[];x.channels&&x.channels.length>0&&x.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),M.push(j.id),o===\"nodejs_tgchannel\"&&q.push(j.id))});let _=O({url:x.url,count:V(x.count),pic:x.pic,channelNameMap:C,channelUsername:M},o===\"nodejs_tgchannel\"?{homeChannelUsername:q}:{});await F.put(f.api,_)}else if(g)await F.put(f.api,{url:x.url||\"\",password:x.password||\"\"});else if(p){let C={sources:x.sources||[]};await F.put(f.api,C)}else w?await F.put(f.api,{servers:x.servers||[]}):v?await F.put(f.api,{servers:x.servers||[]}):S?await F.put(f.api,{url:x.url||\"\",cookie:x.cookie||\"\"}):E?await F.put(f.api,{url:x.url||\"\",username:x.username||\"\",password:x.password||\"\"}):await F.put(f.api,x.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(x.name,w||v?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},z=async()=>{if(m)try{u(!0),await F.delete(f.api);let x=await F.get(f.api);if(d){let C=[],M=new Set;x.channelNameMap&&Object.keys(x.channelNameMap).forEach(q=>M.add(q)),x.channelUsername&&x.channelUsername.forEach(q=>M.add(q)),x.homeChannelUsername&&x.homeChannelUsername.forEach(q=>M.add(q)),M.forEach(q=>{var _;C.push({id:q,name:((_=x.channelNameMap)==null?void 0:_[q])||\"\"})}),i.setFieldsValue({url:x.url,count:B(x==null?void 0:x.count),pic:x.pic,channels:C.length>0?C:y?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:x.url,password:x.password||\"\"}):p?i.setFieldsValue({sources:x.sources||[{name:\"\",url:\"\"}]}):w?i.setFieldsValue({servers:x.servers||[]}):v?i.setFieldsValue({servers:x.servers||[]}):S?i.setFieldsValue({url:x.url||\"\",cookie:x.cookie||\"\"}):E?i.setFieldsValue({url:x.url||\"\",username:x.username||\"\",password:x.password||\"\"}):i.setFieldsValue({urls:x});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(x){console.error(x),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(x==null?void 0:x.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:w||v?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!w&&!v&&!S&&!E&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1?\"\":\" domain-list-action--placeholder\")},x.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),m&&S&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:I,className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&E&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u8D26\\u53F7\",className:\"domain-edit-aligned-input\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u5BC6\\u7801\",className:\"domain-edit-aligned-input\",autoComplete:\"new-password\"}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&w&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(kd,null)),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(Td,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(x,C)=>{if(!y&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1||y?\"\":\" domain-list-action--placeholder\")},x.length>1||y?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:q})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(x,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(x,{add:C,remove:M},{errors:q})=>r.default.createElement(r.default.Fragment,null,x.map((_,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:_.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,L(O({},_),{name:[_.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(x.length>1?\"\":\" domain-list-action--placeholder\")},x.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>M(_.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:H,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:z,disabled:l},\"\\u91CD\\u7F6E\")))))}var Ed=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Id=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function Nd(e){let t=String(e.name||\"\").trim();return!Ed.has(e.key)&&!Id.has(t)}function Dd(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[w,v]=(0,r.useState)([]),[S,E]=(0,r.useState)(!1),[y,I]=(0,r.useState)(null),[A,B]=(0,r.useState)([]),[V,H]=(0,r.useState)(!1),[z,x]=(0,r.useState)(null),[C,M]=(0,r.useState)([]),[q,_]=(0,r.useState)(!1),[j,we]=(0,r.useState)(null),[Ce,R]=(0,r.useState)([]),[Fe,ue]=(0,r.useState)(!1),[T,D]=(0,r.useState)([]),[$,Y]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Me]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[G,Ue]=(0,r.useState)(null),he=(0,r.useMemo)(()=>e.filter(Nd),[e]),Le=(0,r.useMemo)(()=>new Set(w.map(b=>b.id).filter(Boolean)),[w]),ke=(0,r.useMemo)(()=>new Set(A.map(b=>b.id).filter(Boolean)),[A]),Be=b=>{let k=wd(b==null?void 0:b.key);if(k){Ye(k);return}let N=Cd(b==null?void 0:b.key);if(N){Wt(N);return}if(b!=null&&b.cms){Hn(b.key);return}Ue(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,k={})=>{if(k.reload){ce();return}if(G){let N=e.findIndex(P=>P.key===G.key);N!==-1&&(e[N].name=b,t([...e]))}},Gt=async()=>{try{f(!0);let b=await F.get(\"/emby-spider/setting\");v(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(L(O({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Vt=async()=>{try{f(!0);let b=await F.get(\"/alist-video/setting\");M(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),x(L(O({},ci()),{isNew:!0})),u(!1),H(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},vt=async()=>{try{f(!0);let b=await F.get(\"/cms/list\");D(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Ee=async b=>{let k=Nr(b),N=w.findIndex(U=>U.id===k.id),P=N>=0?[...w]:[...w,k];N>=0&&(P[N]=k),await F.put(\"/emby-spider/setting\",{servers:P}),v(P),d(!1),p(null),await ce()},dt=()=>{d(!1),p(null)},ut=async b=>{let k=Dr(b),N=C.findIndex(U=>U.id===k.id),P=N>=0?[...C]:[...C,k];N>=0&&(P[N]=k),await F.put(\"/alist-video/setting\",{servers:P}),M(P),H(!1),x(null),await ce()},jt=()=>{H(!1),x(null)},Ut=async b=>{let k=Md(T,b);await F.put(\"/cms/list\",k),D(k),ue(!1),await ce()},$n=()=>{ue(!1)},Hn=async b=>{try{let k=await F.get(\"/cms/list\"),N=Array.isArray(k)?k:[],P=N.find(U=>Er(U)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Me(N),Se(O({},P)),ge(b),Y(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let k=fi(b);if(!k){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let N=de.map(P=>Er(P)===Oe?k:P);await F.put(\"/cms/list\",N),Me(N),Y(!1),Se(null),ge(\"\"),await ce()},He=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=de.filter(N=>Er(N)!==Oe);await F.put(\"/cms/list\",k),Me(k),Y(!1),Se(null),ge(\"\"),await ce()}})},Ye=async b=>{try{let k=await F.get(\"/emby-spider/setting\"),N=Array.isArray(k==null?void 0:k.servers)?k.servers:[],P=N.find(U=>U.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}B(N),I(O({},P)),E(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Yt=async b=>{let k=Nr(b),N=A.map(P=>P.id===(y==null?void 0:y.id)?k:P);await F.put(\"/emby-spider/setting\",{servers:N}),B(N),E(!1),I(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=A.filter(N=>N.id!==b.id);await F.put(\"/emby-spider/setting\",{servers:k}),B(k),E(!1),I(null),await ce()}})},Wt=async b=>{try{let k=await F.get(\"/alist-video/setting\"),N=Array.isArray(k==null?void 0:k.servers)?k.servers:[],P=N.find(U=>U.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}R(N),we(O({},P)),_(!0)}catch(k){console.error(k),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((k==null?void 0:k.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},qn=async b=>{let k=Dr(b),N=Ce.map(P=>P.id===(j==null?void 0:j.id)?k:P);await F.put(\"/alist-video/setting\",{servers:N}),R(N),_(!1),we(null),await ce()},zn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let k=Ce.filter(N=>N.id!==b.id);await F.put(\"/alist-video/setting\",{servers:k}),R(k),_(!1),we(null),await ce()}})},wt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,k){return r.default.createElement(ui,{rowKey:k.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,k){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),k.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,k){return r.default.createElement(s.Switch,{value:b,onChange:N=>{t(P=>P.map(U=>U.key===k.key?L(O({},U),{enable:N}):U))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,k){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>Be(k),size:\"small\"})}}],[e]),Xt=wr(Bt(it,{activationConstraint:{distance:1}}),Bt(xt,{activationConstraint:{delay:150,tolerance:5}})),Gn=({active:b,over:k})=>{b.id!==(k==null?void 0:k.id)&&t(N=>{let P=N.findIndex(fe=>fe.key===b.id),U=N.findIndex(fe=>fe.key===(k==null?void 0:k.id));return $t(N,P,U)})},ce=async()=>{let k=(await yt.default.get(\"/full-config\")).data.video.sites,N=await F.get(\"/sites/list\"),P={},U={};k.forEach(X=>{U[X.key]=X});let fe=N.filter(X=>(P[X.key]=!0,U[X.key])).map(X=>{let se=U[X.key];return{key:X.key,name:X.name||se.name,enable:X.enable,t4:se.t4,cms:se.cms}});k.forEach(X=>{P[X.key]||fe.push({key:X.key,name:X.name,enable:!0,t4:X.t4,cms:X.cms})}),t(fe)},Vn=async()=>{try{await F.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},jn=async()=>{try{await F.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Gt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Fr,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Vt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:vt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Xt,modifiers:[Sr],onDragEnd:Gn},r.default.createElement(kr,{items:he.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:wt,dataSource:he,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:Vn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:jn},\"\\u91CD\\u7F6E\")),r.default.createElement(Fd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:G==null?void 0:G.key,siteName:G==null?void 0:G.name}),r.default.createElement(Od,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:G==null?void 0:G.name}),r.default.createElement(Ar,{visible:m,onCancel:dt,onSave:Ee,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:S,onCancel:()=>E(!1),onSave:Yt,onDelete:Ie,server:y,usedIds:ke}),r.default.createElement(_r,{visible:V,onCancel:jt,onSave:ut,server:z}),r.default.createElement(_r,{visible:q,onCancel:()=>_(!1),onSave:qn,onDelete:zn,server:j}),r.default.createElement(Ld,{visible:Fe,onCancel:$n,onSave:Ut}),r.default.createElement(pi,{visible:$,onCancel:()=>Y(!1),onSave:$e,onDelete:He,source:me,mode:\"edit\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,w){return r.default.createElement(ui,{rowKey:w.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,w){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(w.key===\"quark\"||w.key===\"uc\"||w.key===\"ali\")&&w.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},w.chunkSize,\"K\\xB7\",w.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,w,v){return r.default.createElement(s.Switch,{value:p,onChange:S=>{e[v].enable=S,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,w,v){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ft,null),onClick:()=>{i(L(O({},w),{index:v})),o(!0)},size:\"small\"})}}],[e]),u=wr(Bt(it,{activationConstraint:{distance:1}}),Bt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:w})=>{p.id!==(w==null?void 0:w.id)&&t(v=>{let S=v.findIndex(y=>y.key===p.id),E=v.findIndex(y=>y.key===(w==null?void 0:w.id));return $t(v,S,E)})},f=async()=>{let p=await F.get(\"/pans/list\");t(p)},m=async()=>{try{await F.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await F.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let w=String(p.name||\"\").trim(),v=String(p.pic||\"\").trim(),S=L(O({},e[a.index]),{name:w,pic:v});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(S.chunkSize=p.chunkSize,S.poolSize=p.poolSize),a.key===\"quark\"&&(S.noSaveMode=p.noSaveMode===!0),e[a.index]=S,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(md,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function _d(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await F.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await F.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await F.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await F.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Pd(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await F.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await F.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await F.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,L(O({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,L(O({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Je,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function fi(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Er(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Md(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>fi(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function pi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await F.post(\"/cms/resolve\",{name:d,url:g}),w=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(w.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(w[0]),s.message.success(w.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(w),s.message.success(w.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(w.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Ld(e){return r.default.createElement(pi,L(O({},e),{mode:\"add\"}))}function Bd(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await F.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Pr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(vn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(_d,null)))}function $d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await F.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(vn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Rl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Dd,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ad,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Pd,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Bd,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,O({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(Ze,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(lr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Hd(){(0,si.createRoot)(document.getElementById(\"app\")).render(r.default.createElement($d,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n"}
|
|
module.exports.renderClient();
|
|
})();
|
|
`;
|
|
}();
|
|
|
|
|
|
|
|
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 ZAt=Object.create;var _N=Object.defineProperty;var ext=Object.getOwnPropertyDescriptor;var txt=Object.getOwnPropertyNames;var rxt=Object.getPrototypeOf,nxt=Object.prototype.hasOwnProperty;var gr=(t,e)=>()=>(t&&(e=t(t=0)),e);var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),os=(t,e)=>{for(var r in e)_N(t,r,{get:e[r],enumerable:!0})},v0e=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of txt(e))!nxt.call(t,s)&&s!==r&&_N(t,s,{get:()=>e[s],enumerable:!(n=ext(e,s))||n.enumerable});return t};var Ce=(t,e,r)=>(r=t!=null?ZAt(rxt(t)):{},v0e(e||!t||!t.__esModule?_N(r,"default",{value:t,enumerable:!0}):r,t)),sxt=t=>v0e(_N({},"__esModule",{value:!0}),t);var I0e=_((SMr,S0e)=>{"use strict";function ixt(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}S0e.exports=ixt});var T0e=_((IMr,MW)=>{"use strict";var axt=I0e();function C0e(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=axt(oxt),s=null,i=null,a=0,o=null,c={push:h,drain:$a,saturated:$a,pause:l,paused:!1,get concurrency(){return r},set concurrency(I){if(!(I>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=I,!c.paused)for(;s&&a<r;)a++,g()},running:u,resume:p,idle:m,length:d,getQueue:f,unshift:y,empty:$a,kill:b,killAndDrain:x,error:S,abort:A};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||$a,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 y(I,R){var w=n.get();w.context=t,w.release=g,w.value=I,w.callback=R||$a,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(I){I&&n.release(I);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=$a}function x(){s=null,i=null,c.drain(),c.drain=$a}function A(){var I=s;for(s=null,i=null;I;){var R=I.next,w=I.callback,N=I.errorHandler,k=I.value,B=I.context;I.value=null,I.callback=$a,I.errorHandler=null,N&&N(new Error("abort"),k),w.call(B,new Error("abort")),I.release(I),I=R}c.drain=$a}function S(I){o=I}}function $a(){}function oxt(){this.value=null,this.callback=$a,this.next=null,this.release=$a,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=$a,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function cxt(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=C0e(t,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch($a),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch($a),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}MW.exports=C0e;MW.exports.promise=cxt});var $W=_((CMr,EN)=>{"use strict";var{format:uxt}=require("node:util");function lxt(){return`${this.name} [${this.code}]: ${this.message}`}function WW(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=uxt(e,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=lxt,s}EN.exports=WW;EN.exports.default=WW;EN.exports.createError=WW});var vN=_((TMr,w0e)=>{"use strict";var{createError:wp}=$W();w0e.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:wp("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:wp("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:wp("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:wp("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:wp("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:wp("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:wp("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:wp("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var pA=_((wMr,R0e)=>{"use strict";var dxt=Symbol("avvio.Boot"),fxt=Symbol("isOnCloseHandler"),pxt=Symbol("avvio.ThenifyDoNotWrap"),mxt=Symbol("avvio.TimeTree.untrackNode"),hxt=Symbol("avvio.TimeTree.trackNode"),gxt=Symbol("avvio.TimeTree.getParent"),yxt=Symbol("avvio.TimeTree.getNode"),Axt=Symbol("avvio.TimeTree.addNode"),xxt=Symbol.for("plugin-meta");R0e.exports={kAvvio:dxt,kIsOnCloseHandler:fxt,kThenifyDoNotWrap:pxt,kUntrackNode:mxt,kTrackNode:hxt,kGetParent:gxt,kGetNode:yxt,kAddNode:Axt,kPluginMeta:xxt}});var L0e=_((RMr,B0e)=>{"use strict";var{kUntrackNode:N0e,kTrackNode:UW,kGetParent:O0e,kGetNode:k0e,kAddNode:P0e}=pA(),FW=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[UW](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[N0e](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[O0e](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[k0e](e){return this.tableId.get(e)}[P0e](e,r,n){let s=this[O0e](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[UW](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[UW](o),a}start(e,r,n=Date.now()){return this[P0e](e,r,n)}stop(e,r=Date.now()){let n=this[k0e](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[N0e](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return D0e(this.toJSON())}};function D0e(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms
|
|
`;for(let i=0;i<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+=D0e(a,o).slice(e.length+2)}return r}B0e.exports={TimeTree:FW}});var SN=_((NMr,M0e)=>{"use strict";var{debuglog:bxt}=require("node:util"),_xt=bxt("avvio");M0e.exports={debug:_xt}});var $0e=_((OMr,W0e)=>{"use strict";function Ext(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}W0e.exports={createPromise:Ext}});var F0e=_((kMr,U0e)=>{"use strict";var{kPluginMeta:qW}=pA();function vxt(t,e){return t[qW]&&t[qW].name?t[qW].name:e&&e.name?e.name:t.name?t.name:t.toString().split(`
|
|
`).slice(0,2).map(r=>r.trim()).join(" -- ")}U0e.exports={getPluginName:vxt}});var IN=_((PMr,q0e)=>{"use strict";function Sxt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}q0e.exports={isPromiseLike:Sxt}});var Q0e=_((DMr,j0e)=>{"use strict";var{EventEmitter:Ixt}=require("node:events"),{inherits:Cxt}=require("node:util"),{debug:hi}=SN(),{createPromise:Txt}=$0e(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:wxt}=vN(),{getPluginName:Rxt}=F0e(),{isPromiseLike:Nxt}=IN();function mA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=Rxt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Cxt(mA,Ixt);mA.prototype.exec=function(t,e){hi("exec",this.name),this.server=t;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){hi("loading complete",n);return}this._error=c,hi(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(hi("setting up timeout",n,this.timeout),i=setTimeout(function(){hi("timed out",n),i=null;let c=new wxt(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);Nxt(o)&&(hi("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};mA.prototype.loadedSoFar=function(){if(hi("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(hi("rejecting promise",this.name,r),this._promise.reject(r)):(hi("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=Txt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};mA.prototype.enqueue=function(t,e){hi("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};mA.prototype.finish=function(t,e){hi("finish",this.name,t);let r=()=>{this.loaded||(hi("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(hi("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{hi("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else hi("delayed",this.name),this.queue.drain=()=>{hi("drain",this.name),this.queue.drain=Oxt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function Oxt(){}j0e.exports={Plugin:mA}});var G0e=_((BMr,H0e)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:jW}=vN();function kxt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new jW("array"):t===null?new jW("null"):new jW(typeof t)}H0e.exports={validatePlugin:kxt}});var K0e=_((LMr,z0e)=>{"use strict";function Pxt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}z0e.exports={isBundledOrTypescriptPlugin:Pxt}});var J0e=_((MMr,Y0e)=>{"use strict";var{debug:V0e}=SN(),{kThenifyDoNotWrap:QW}=pA();function Dxt(){if(this.booted){V0e("thenify returning undefined because we are already booted");return}if(this[QW]){this[QW]=!1;return}return V0e("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[QW]=!0,t(this._server)),e)}Y0e.exports={thenify:Dxt}});var Z0e=_((WMr,X0e)=>{"use strict";var{isPromiseLike:Bxt}=IN(),{kAvvio:Lxt}=pA();function Mxt(t,e,r){let n=t.apply(t,e);Bxt(n)&&!n[Lxt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}X0e.exports={executeWithThenable:Mxt}});var ome=_(($Mr,GW)=>{"use strict";var CN=T0e(),Wxt=require("node:events").EventEmitter,$xt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:aE,AVV_ERR_CALLBACK_NOT_FN:hA,AVV_ERR_ROOT_PLG_BOOTED:Uxt,AVV_ERR_READY_TIMEOUT:Fxt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:qxt}=vN(),{kAvvio:rme,kIsOnCloseHandler:nme}=pA(),{TimeTree:jxt}=L0e(),{Plugin:sme}=Q0e(),{debug:gA}=SN(),{validatePlugin:Qxt}=G0e(),{isBundledOrTypescriptPlugin:Hxt}=K0e(),{isPromiseLike:Gxt}=IN(),{thenify:ime}=J0e(),{executeWithThenable:eme}=Z0e();function cs(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new cs(t,e,r);this._server=t||this,this._opts=e,t&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new jxt,this._readyQ=CN(this,ame,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=tme},this._closeQ=CN(this,Kxt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=tme},this._doStart=null;let n=this;this._root=new sme(CN(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{gA("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}$xt(cs,Wxt);cs.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};cs.prototype.override=function(t,e,r){return t};cs.prototype[rme]=!0;cs.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};cs.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(cs.prototype,"then",{get:ime});cs.prototype._addPlugin=function(t,e,r){if(Hxt(t)&&(t=t.default),Qxt(t),e=e||{},this.booted)throw new Uxt;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new sme(CN(this,this._loadPluginNextTick,1),t,e,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};cs.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new aE(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new aE(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(HW(c,this)),this)},r[i])throw new aE(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new hA(i,typeof c);return e.ready(c?HW(c,this):void 0)},r[a])throw new aE(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new hA(a,typeof c);return e.onClose(Vxt(c,this)),this},r[o])throw new aE(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new hA(o,typeof c);return c?(e.close(HW(c,this)),this):e.close()},r.then)throw new qxt("then");Object.defineProperty(r,"then",{get:ime.bind(e)}),r[rme]=!0};cs.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){ame.call(this,t,s)}return this};cs.prototype.onClose=function(t){if(typeof t!="function")throw new hA("onClose",typeof t);return t[nme]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};cs.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new hA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};cs.prototype.ready=function(t){if(t){if(typeof t!="function")throw new hA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};cs.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};cs.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};cs.prototype.toJSON=function(){return this.pluginTree.toJSON()};cs.prototype._loadPlugin=function(t,e){let r=this;if(Gxt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){gA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return gA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};cs.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function tme(){}function ame(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,eme(t,[],e);else if(t.length===1)eme(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else zxt.call(this,t,n,r,e)}function zxt(t,e,r,n){let s=t.unwrappedName??t.name;gA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{gA("timed out",s),i=null;let o=new Fxt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Kxt(t,e){let r=this._server,n=t[nme];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(gA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Vxt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function HW(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}GW.exports=cs;GW.exports.express=function(t){return cs(t,{expose:{use:"load"}})}});var zs=_((UMr,cme)=>{"use strict";var Yxt={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};cme.exports=Yxt});var VW=_((FMr,TN)=>{"use strict";var{format:zW}=require("node:util");function Jxt(t){return ume({...t,name:"DeprecationWarning"})}function ume({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");e=e.toUpperCase();let s={[t]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=zW(r,a,o,c):a&&o?u=zW(r,a,o):a?u=zW(r,a):u=r,u},i}var KW={createWarning:ume,createDeprecation:Jxt};TN.exports=KW;TN.exports.default=KW;TN.exports.processWarning=KW});var wd=_((qMr,dme)=>{"use strict";var{createDeprecation:Pi,createWarning:lme}=VW(),Xxt=Pi({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Zxt=Pi({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),ebt=Pi({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),tbt=Pi({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),rbt=Pi({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),nbt=Pi({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),sbt=Pi({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),ibt=Pi({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),abt=Pi({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),obt=Pi({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),cbt=Pi({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),ubt=Pi({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),lbt=Pi({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),dbt=Pi({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),fbt=Pi({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),pbt=Pi({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),mbt=lme({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),hbt=lme({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});dme.exports={FSTDEP005:Xxt,FSTDEP006:Zxt,FSTDEP007:ebt,FSTDEP008:tbt,FSTDEP009:rbt,FSTDEP010:nbt,FSTDEP011:sbt,FSTDEP012:ibt,FSTDEP013:abt,FSTDEP014:obt,FSTDEP015:cbt,FSTDEP016:ubt,FSTDEP017:lbt,FSTDEP018:dbt,FSTDEP019:fbt,FSTDEP020:pbt,FSTWRN001:mbt,FSTWRN002:hbt}});var Di=_((jMr,wN)=>{"use strict";var He=$W(),yA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:He("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:He("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:He("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:He("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:He("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:He("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function gbt(t,e){return e.cause=t,e}wN.exports=yA;wN.exports.appendStackTrace=gbt;wN.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:yA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:yA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:yA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:yA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:yA.FST_ERR_PLUGIN_TIMEOUT}});var Rp=_((QMr,bme)=>{"use strict";var ybt=["onRoute","onRegister","onReady","onListen","preClose","onClose"],hme=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],Abt=hme.concat(ybt),{FST_ERR_HOOK_INVALID_TYPE:xbt,FST_ERR_HOOK_INVALID_HANDLER:bbt,FST_ERR_SEND_UNDEFINED_ERR:RN,FST_ERR_HOOK_TIMEOUT:_bt,FST_ERR_HOOK_NOT_SUPPORTED:Ebt,AVVIO_ERRORS_MAP:fme,appendStackTrace:pme}=Di(),{kChildren:oE,kHooks:gme,kRequestPayloadStream:mme}=zs();function cE(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}cE.prototype=Object.create(null);cE.prototype.validate=function(t,e){if(typeof t!="string")throw new xbt;if(Array.isArray(this[t])===!1)throw new Ebt(t);if(typeof e!="function")throw new bbt(t,Object.prototype.toString.call(e))};cE.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function vbt(t){let e=new cE;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function yme(t,e,r,n){let s=r[gme][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=pme(l,new _bt(t)):l=fme[l.code]!=null?pme(l,new fme[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[oE].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a<r[oE].length){let d=r[oE][a++];yme(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 Ame(t){let e=t[gme].onListen,r=e.length,n=0,s=0;i();function i(o){if(o&&t.log.error(o),n===r){for(;s<t[oE].length;){let c=t[oE][s++];Ame(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 AA(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 RN),i(l,n,s)}o()}}function Sbt(t,e,r,n){return t(e,r,n)}var Ibt=AA(Sbt),Cbt=AA(uE),Tbt=AA(uE),wbt=AA(uE),Rbt=AA(uE);function xme(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 RN),s(u,e,r,n)}a()}var Nbt=xme;function Obt(t,e,r,n){let s=0;function i(c,u){if(r.sent)return;if(u!==void 0&&(e[mme]=u),c||s===t.length){n(c,e,r);return}let l;try{l=t[s++](e,r,e[mme],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 RN),n(c,e,r)}i()}function kbt(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 RN),r(o,e)}s()}function uE(t,e,r,n){if(r.sent!==!0)return t(e,r,n)}bme.exports={Hooks:cE,buildHooks:vbt,hookRunnerGenerator:AA,preParsingHookRunner:Obt,onResponseHookRunner:Ibt,onSendHookRunner:xme,preSerializationHookRunner:Nbt,onRequestAbortHookRunner:kbt,hookIterator:uE,hookRunnerApplication:yme,onListenHookRunner:Ame,preHandlerHookRunner:Tbt,preValidationHookRunner:Cbt,onRequestHookRunner:Rbt,onTimeoutHookRunner:wbt,lifecycleHooks:hme,supportedHooks:Abt}});var Nme=_((HMr,JW)=>{"use strict";var Pbt=require("node:http"),Dbt=require("node:https"),Bbt=require("node:dns"),{FSTDEP011:_me}=wd(),{kState:Bi,kOptions:Lbt,kServerBindings:Mbt}=zs(),{onListenHookRunner:NN}=Rp(),{FST_ERR_HTTP2_INVALID_VERSION:Wbt,FST_ERR_REOPENED_CLOSE_SERVER:Sme,FST_ERR_REOPENED_SERVER:Ime,FST_ERR_LISTEN_OPTIONS_INVALID:$bt}=Di();JW.exports.createServer=Ubt;JW.exports.compileValidateHTTPVersion=qbt;function Cme(t){return`Server listening at ${t}`}function Ubt(t,e){let r=wme(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=YW([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")_me(),s=YW(Array.from(arguments)),a=s.cb;else if(i.length>1){_me();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,YW([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new $bt("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}Eme.call(this,r,e,t,s,()=>{this[Bi].listening=!0,a(null,l),NN(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Bi].listening=!0,a(null,l),NN(this)},a===void 0)return Fbt.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Eme.call(this,r,e,t,s,()=>{this[Bi].listening=!0,d(l),NN(this)}):(d(l),NN(this))}));this.ready(Tme.call(this,r,s))}return{server:r,listen:n}}function Eme(t,e,r,n,s){this[Bi].listening=!1,Bbt.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:y=>{u++,y||this[Mbt].push(m),u===c&&s()}}),m=wme(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Bi].listening=!1,Tme.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Tme(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Bi].listening=!1,e.cb(n,null);else{let s=Rme.call(this,t,e.listenTextResolver||Cme);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Bi].listening&&this[Bi].closing)return e.cb(new Sme,null);if(this[Bi].listening)return e.cb(new Ime,null);t.once("error",r),this[Bi].closing||(t.listen(e,r),this[Bi].listening=!0)}}function Fbt(t,e){return this[Bi].listening&&this[Bi].closing?Promise.reject(new Sme):this[Bi].listening?Promise.reject(new Ime):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Bi].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Rme.call(this,t,e.listenTextResolver||Cme))}),this[Bi].listening=!0});return Promise.race([n,s])})}function qbt(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return e||r.has(s)}}function wme(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=vme().createSecureServer(n,e):r=vme().createServer(e),r.on("session",Qbt(t.http2SessionTimeout))):(n?r=Dbt.createServer(n,e):r=Pbt.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function YW(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:jbt(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function jbt(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Rme(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Lbt].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function vme(){try{return require("node:http2")}catch{throw new Wbt}}function Qbt(t){return function(e){e.setTimeout(t,Hbt)}}function Hbt(){this.close()}});var t8=_((GMr,kme)=>{"use strict";var{kSchemaHeaders:PN,kSchemaParams:XW,kSchemaQuerystring:ZW,kSchemaBody:e8,kSchemaResponse:Ome}=zs(),Gbt=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:zbt}=Di(),{FSTWRN001:ON}=wd();function Kbt(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[Ome]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Gbt.exec(i))throw new zbt;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Vbt(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[PN]=e({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),t[PN]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&ON("headers",s,i);n.body?t[e8]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&ON("body",s,i),n.querystring?t[ZW]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&ON("querystring",s,i),n.params?t[XW]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&ON("params",s,i)}function kN(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function DN(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=kN(t[XW],e,"params");if(i)return typeof i.then!="function"?Np(i,"params",t.schemaErrorFormatter):Ybt(i,t,e)}if(n||!r.skipBody){let i=kN(t[e8],e,"body");if(i)return typeof i.then!="function"?Np(i,"body",t.schemaErrorFormatter):Jbt(i,t,e)}if(n||!r.skipQuery){let i=kN(t[ZW],e,"query");if(i)return typeof i.then!="function"?Np(i,"querystring",t.schemaErrorFormatter):Xbt(i,t,e)}let s=kN(t[PN],e,"headers");return s?typeof s.then!="function"?Np(s,"headers",t.schemaErrorFormatter):Zbt(s,t,e):!1}function Ybt(t,e,r){return t.then(n=>n?Np(n,"params",e.schemaErrorFormatter):DN(e,r,{skipParams:!0}))}function Jbt(t,e,r){return t.then(n=>n?Np(n,"body",e.schemaErrorFormatter):DN(e,r,{skipParams:!0,skipBody:!0}))}function Xbt(t,e,r){return t.then(n=>n?Np(n,"querystring",e.schemaErrorFormatter):DN(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function Zbt(t,e,r){return t.then(n=>n?Np(n,"headers",e.schemaErrorFormatter):!1)}function Np(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}kme.exports={symbols:{bodySchema:e8,querystringSchema:ZW,responseSchema:Ome,paramsSchema:XW,headersSchema:PN},compileSchemasForValidation:Vbt,compileSchemasForSerialization:Kbt,validate:DN}});var r8=_((zMr,Dme)=>{"use strict";var{kReplyIsError:Pme,kReplyHijacked:e1t}=zs();function t1t(t,e){t.then(function(r){if(e[e1t]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Pme]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Pme]=!0;try{e.send(r)}catch(n){e.send(n)}})}Dme.exports=t1t});var a8=_((KMr,i8)=>{"use strict";var{validate:r1t}=t8(),{preValidationHookRunner:n1t,preHandlerHookRunner:s1t}=Rp(),i1t=r8(),{kReplyIsError:BN,kRouteContext:kp}=zs();function a1t(t,e,r){if(r.sent===!0)return;if(t!=null){r[BN]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[kp];if(n==="GET"||n==="HEAD"){Op(e,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?Op(e,r):i.contentTypeParser.run("",Op,e,r):i.contentTypeParser.run(a,Op,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,Op,e,r):Op(e,r);return}Op(e,r)}function Op(t,e){try{t[kp].preValidation!==null?n1t(t[kp].preValidation,t,e,n8):n8(null,t,e)}catch(r){n8(r,t,e)}}function n8(t,e,r){if(r.sent===!0)return;if(t!=null){r[BN]=!0,r.send(t);return}let n=r1t(r[kp],e);if(n&&typeof n.then=="function"||!1){let i=Bme.bind(null,e,r);n.then(i,i)}else Bme(e,r,n)}function Bme(t,e,r){if(r){if(e[kp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[kp].preHandler!==null?s1t(t[kp].preHandler,t,e,s8):s8(null,t,e)}function s8(t,e,r){if(r.sent)return;if(t!=null){r[BN]=!0,r.send(t);return}let n;try{n=e[kp].handler(e,r)}catch(s){r[BN]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?i1t(n,r):r.send(n))}i8.exports=a1t;i8.exports[Symbol.for("internals")]={handler:Op,preHandlerCallback:s8}});var Mme=_((VMr,Lme)=>{"use strict";function xA(){}var o1t={fatal:xA,error:xA,warn:xA,info:xA,debug:xA,trace:xA};Object.defineProperty(Lme,"exports",{get(){return Object.create(o1t)}})});var c8=_((YMr,Ume)=>{"use strict";var lE=t=>t&&typeof t.message=="string",o8=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return lE(r)?r:void 0}else return lE(e)?e:void 0},Wme=(t,e)=>{if(!lE(t))return"";let r=t.stack||"";if(e.has(t))return r+`
|
|
causes have become circular...`;let n=o8(t);return n?(e.add(t),r+`
|
|
caused by: `+Wme(n,e)):r},c1t=t=>Wme(t,new Set),$me=(t,e,r)=>{if(!lE(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=o8(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+$me(s,e,i)}else return n},u1t=t=>$me(t,new Set);Ume.exports={isErrorLike:lE,getErrorCause:o8,stackWithCauses:c1t,messageWithCauses:u1t}});var u8=_((JMr,qme)=>{"use strict";var l1t=Symbol("circular-ref-tag"),LN=Symbol("pino-raw-err-ref"),Fme=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[LN]},set:function(t){this[LN]=t}}});Object.defineProperty(Fme,LN,{writable:!0,value:{}});qme.exports={pinoErrProto:Fme,pinoErrorSymbols:{seen:l1t,rawSymbol:LN}}});var Hme=_((XMr,Qme)=>{"use strict";Qme.exports=d8;var{messageWithCauses:d1t,stackWithCauses:f1t,isErrorLike:jme}=c8(),{pinoErrProto:p1t,pinoErrorSymbols:m1t}=u8(),{seen:l8}=m1t,{toString:h1t}=Object.prototype;function d8(t){if(!jme(t))return t;t[l8]=void 0;let e=Object.create(p1t);e.type=h1t.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=d1t(t),e.stack=f1t(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>d8(r)));for(let r in t)if(e[r]===void 0){let n=t[r];jme(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,l8)&&(e[r]=d8(n)):e[r]=n}return delete t[l8],e.raw=t,e}});var zme=_((ZMr,Gme)=>{"use strict";Gme.exports=WN;var{isErrorLike:f8}=c8(),{pinoErrProto:g1t,pinoErrorSymbols:y1t}=u8(),{seen:MN}=y1t,{toString:A1t}=Object.prototype;function WN(t){if(!f8(t))return t;t[MN]=void 0;let e=Object.create(g1t);e.type=A1t.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>WN(r))),f8(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,MN)&&(e.cause=WN(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];f8(n)?Object.prototype.hasOwnProperty.call(n,MN)||(e[r]=WN(n)):e[r]=n}return delete t[MN],e.raw=t,e}});var Jme=_((eWr,Yme)=>{"use strict";Yme.exports={mapHttpRequest:x1t,reqSerializer:Vme};var p8=Symbol("pino-raw-req-ref"),Kme=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[p8]},set:function(t){this[p8]=t}}});Object.defineProperty(Kme,p8,{writable:!0,value:{}});function Vme(t){let e=t.info||t.socket,r=Object.create(Kme);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function x1t(t){return{req:Vme(t)}}});var the=_((tWr,ehe)=>{"use strict";ehe.exports={mapHttpResponse:b1t,resSerializer:Zme};var m8=Symbol("pino-raw-res-ref"),Xme=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[m8]},set:function(t){this[m8]=t}}});Object.defineProperty(Xme,m8,{writable:!0,value:{}});function Zme(t){let e=Object.create(Xme);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function b1t(t){return{res:Zme(t)}}});var g8=_((rWr,rhe)=>{"use strict";var h8=Hme(),_1t=zme(),$N=Jme(),UN=the();rhe.exports={err:h8,errWithCause:_1t,mapHttpRequest:$N.mapHttpRequest,mapHttpResponse:UN.mapHttpResponse,req:$N.reqSerializer,res:UN.resSerializer,wrapErrorSerializer:function(e){return e===h8?e:function(n){return e(h8(n))}},wrapRequestSerializer:function(e){return e===$N.reqSerializer?e:function(n){return e($N.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===UN.resSerializer?e:function(n){return e(UN.resSerializer(n))}}}});var y8=_((nWr,nhe)=>{"use strict";function E1t(t,e){return e}nhe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=E1t;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var ihe=_((sWr,she)=>{"use strict";she.exports=v1t;function v1t(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(`
|
|
'use strict'
|
|
const o = new Proxy({}, { get: () => o, set: () => { throw Error() } });
|
|
const \u3007 = null;
|
|
o${a}
|
|
if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var FN=_((iWr,ahe)=>{"use strict";ahe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var che=_((aWr,ohe)=>{"use strict";var S1t=FN();ohe.exports=I1t;function I1t({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(S1t).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var lhe=_((oWr,uhe)=>{"use strict";var C1t=FN();uhe.exports=T1t;function T1t({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",`
|
|
if (typeof o !== 'object' || o == null) {
|
|
${O1t(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]]
|
|
}
|
|
|
|
${w1t(t,s,i)}
|
|
this.compileRestore()
|
|
${R1t(r>0,s,i)}
|
|
this.secret = originalSecret
|
|
${N1t(e)}
|
|
`).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function w1t(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=C1t.exec(n))!==null;){let[,m]=l,{index:h,input:y}=l;h>o&&u.push(y.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=`
|
|
switch (true) {
|
|
${u.reverse().map(m=>`
|
|
case o${c}${m} === censor:
|
|
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 R1t(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 N1t(t){return t===!1?"return o":`
|
|
var s = this.serialize(o)
|
|
this.restore(o)
|
|
return s
|
|
`}function O1t(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var x8=_((cWr,phe)=>{"use strict";phe.exports={groupRedact:P1t,groupRestore:k1t,nestedRedact:B1t,nestedRestore:D1t};function k1t({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s<n;s++){let i=t[s];r[i]=e[s]}}function P1t(t,e,r,n,s){let i=dhe(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 D1t(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 B1t(t,e,r,n,s,i,a){let o=dhe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l<u;l++){let d=c[l];L1t(t,o,d,r,n,s,i,a)}return t}function A8(t,e){return t!=null?"hasOwn"in Object?Object.hasOwn(t,e):Object.prototype.hasOwnProperty.call(t,e):!1}function L1t(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,y=null,g,b,x=!1,A=0,S=0,I=M1t();if(m=f=e[r],typeof f=="object"){for(;f!=null&&++d<c&&(S+=1,r=s[d],h=m,!(r!=="*"&&!y&&!(typeof f=="object"&&r in f)));)if(!(r==="*"&&(y==="*"&&(x=!0),y=r,d!==u))){if(y){let w=Object.keys(f);for(var R=0;R<w.length;R++){let N=w[R];if(b=f[N],g=r==="*",x)I=Rd(I,N,S),A=d,m=fhe(b,A-1,r,n,s,i,a,o,l,f,p,m,g,N,d,u,I,t,e[l],S+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 k=dE(Rd(I,N,S),m,e[l]);t.push(k),f[N]=p}else if(b[r]!==p)if(p===void 0&&i!==void 0||A8(b,r)&&p===m)I=Rd(I,N,S);else{I=Rd(I,N,S);let k=dE(Rd(I,r,S+1),m,e[l]);t.push(k),b[r]=p}}}y=null}else{if(m=f[r],I=Rd(I,r,S),p=d!==u?m:a?o?i(m,[...n,l,...s]):i(m):i,!(A8(f,r)&&p===m||p===void 0&&i!==void 0)){let w=dE(I,m,e[l]);t.push(w),f[r]=p}f=f[r]}if(typeof f!="object")break}}}function dhe(t,e){for(var r=-1,n=e.length,s=t;s!=null&&++r<n;)s=s[e[r]];return s}function fhe(t,e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x){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 A=dE(y,d,b);g.push(A),u[p]=l}else if(t[r]!==l){if(!(l===void 0&&i!==void 0||A8(t,r)&&l===d)){let A=dE(Rd(y,r,x+1),d,b);g.push(A),t[r]=l}}}for(let A in t)typeof t[A]=="object"&&(y=Rd(y,A,x),fhe(t[A],e-1,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x+1))}function M1t(){return{parent:null,key:null,children:[],depth:0}}function Rd(t,e,r){if(t.depth===r)return Rd(t.parent,e,r);var n={parent:t,key:e,depth:r,children:[]};return t.children.push(n),n}function dE(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 hhe=_((uWr,mhe)=>{"use strict";var{groupRestore:W1t,nestedRestore:$1t}=x8();mhe.exports=U1t;function U1t(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=F1t(e,n),i=r>0,a=i?{secret:e,groupRestore:W1t,nestedRestore:$1t}:{secret:e};this.restore=Function("o",q1t(s,n,i)).bind(a),this.restore.state=a}}function F1t(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return`
|
|
if (secret[${s}].val !== undefined) {
|
|
try { ${o} } catch (e) {}
|
|
${c}
|
|
}
|
|
`}).join("")}function q1t(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 yhe=_((lWr,ghe)=>{"use strict";ghe.exports=j1t;function j1t(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var bhe=_((dWr,xhe)=>{"use strict";var Ahe=ihe(),Q1t=che(),H1t=lhe(),G1t=hhe(),{groupRedact:z1t,nestedRedact:K1t}=x8(),V1t=yhe(),Y1t=FN(),J1t=Ahe(),b8=t=>t;b8.restore=b8;var X1t="[REDACTED]";_8.rx=Y1t;_8.validator=Ahe;xhe.exports=_8;function _8(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in t?t.censor:X1t,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||b8;J1t({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=Q1t({paths:e,censor:s}),l=G1t(),d="strict"in t?t.strict:!0;return H1t({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},V1t({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:z1t,nestedRedact:K1t,wildcards:o,wcLen:c}))}});var bA=_((fWr,_he)=>{"use strict";var Z1t=Symbol("pino.setLevel"),e_t=Symbol("pino.getLevel"),t_t=Symbol("pino.levelVal"),r_t=Symbol("pino.levelComp"),n_t=Symbol("pino.useLevelLabels"),s_t=Symbol("pino.useOnlyCustomLevels"),i_t=Symbol("pino.mixin"),a_t=Symbol("pino.lsCache"),o_t=Symbol("pino.chindings"),c_t=Symbol("pino.asJson"),u_t=Symbol("pino.write"),l_t=Symbol("pino.redactFmt"),d_t=Symbol("pino.time"),f_t=Symbol("pino.timeSliceIndex"),p_t=Symbol("pino.stream"),m_t=Symbol("pino.stringify"),h_t=Symbol("pino.stringifySafe"),g_t=Symbol("pino.stringifiers"),y_t=Symbol("pino.end"),A_t=Symbol("pino.formatOpts"),x_t=Symbol("pino.messageKey"),b_t=Symbol("pino.errorKey"),__t=Symbol("pino.nestedKey"),E_t=Symbol("pino.nestedKeyStr"),v_t=Symbol("pino.mixinMergeStrategy"),S_t=Symbol("pino.msgPrefix"),I_t=Symbol("pino.wildcardFirst"),C_t=Symbol.for("pino.serializers"),T_t=Symbol.for("pino.formatters"),w_t=Symbol.for("pino.hooks"),R_t=Symbol.for("pino.metadata");_he.exports={setLevelSym:Z1t,getLevelSym:e_t,levelValSym:t_t,levelCompSym:r_t,useLevelLabelsSym:n_t,mixinSym:i_t,lsCacheSym:a_t,chindingsSym:o_t,asJsonSym:c_t,writeSym:u_t,serializersSym:C_t,redactFmtSym:l_t,timeSym:d_t,timeSliceIndexSym:f_t,streamSym:p_t,stringifySym:m_t,stringifySafeSym:h_t,stringifiersSym:g_t,endSym:y_t,formatOptsSym:A_t,messageKeySym:x_t,errorKeySym:b_t,nestedKeySym:__t,wildcardFirstSym:I_t,needsMetadataGsym:R_t,useOnlyCustomLevelsSym:s_t,formattersSym:T_t,hooksSym:w_t,nestedKeyStrSym:E_t,mixinMergeStrategySym:v_t,msgPrefixSym:S_t}});var S8=_((pWr,Ihe)=>{"use strict";var v8=bhe(),{redactFmtSym:N_t,wildcardFirstSym:qN}=bA(),{rx:E8,validator:O_t}=v8,Ehe=O_t({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),vhe="[Redacted]",She=!1;function k_t(t,e){let{paths:r,censor:n}=P_t(t),s=r.reduce((o,c)=>{E8.lastIndex=0;let u=E8.exec(c),l=E8.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=qN),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==qN&&o[d].length===0&&o[d].push(...o[qN]||[]),d===qN&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[N_t]:v8({paths:r,censor:n,serialize:e,strict:She})},a=(...o)=>e(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=v8({paths:s[c],censor:u,serialize:e,strict:She})}return o},i)}function P_t(t){if(Array.isArray(t))return t={paths:t,censor:vhe},Ehe(t),t;let{paths:e,censor:r=vhe,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Ehe({paths:e,censor:r}),{paths:e,censor:r}}Ihe.exports=k_t});var The=_((mWr,Che)=>{"use strict";var D_t=()=>"",B_t=()=>`,"time":${Date.now()}`,L_t=()=>`,"time":${Math.round(Date.now()/1e3)}`,M_t=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;Che.exports={nullTime:D_t,epochTime:B_t,unixTime:L_t,isoTime:M_t}});var Rhe=_((hWr,whe)=>{"use strict";function W_t(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}whe.exports=$_t;function $_t(t,e,r){var n=r&&r.stringify||W_t,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o<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 C8=_((gWr,I8)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));I8.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(e);for(;n>Date.now(););};I8.exports=t}});var Mhe=_((yWr,Lhe)=>{"use strict";var us=require("fs"),U_t=require("events"),F_t=require("util").inherits,Nhe=require("path"),w8=C8(),jN=100,QN=Buffer.allocUnsafe(0),q_t=16*1024,Ohe="buffer",khe="utf8";function Phe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&us.mkdirSync(Nhe.dirname(t),{recursive:!0});let i=us.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?us.mkdir(Nhe.dirname(t),{recursive:!0},i=>{if(i)return r(i);us.open(t,n,s,r)}):us.open(t,n,s,r)}function Vc(t){if(!(this instanceof Vc))return new Vc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||q_t,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let p,m;if(d===Ohe)this._writingBuf=QN,this.write=H_t,this.flush=z_t,this.flushSync=V_t,this._actualWrite=J_t,p=()=>us.writeSync(this.fd,this._writingBuf),m=()=>us.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===khe)this._writingBuf="",this.write=Q_t,this.flush=G_t,this.flushSync=K_t,this._actualWrite=Y_t,p=()=>us.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>us.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${khe}" and "${Ohe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Phe(e,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(h,y)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{w8(jN),this.release(void 0,0)}catch(x){this.release(x)}else setTimeout(m,jN);else this._writing=!1,this.emit("error",h);return}this.emit("write",y);let g=T8(this._writingBuf,this._len,y);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let x=p(),A=T8(this._writingBuf,this._len,x);this._len=A.len,this._writingBuf=A.writingBuf}while(this._writingBuf.length)}catch(x){this.release(x);return}}this._fsync&&us.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,HN(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(j_t,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function T8(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function j_t(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}F_t(Vc,U_t);function Dhe(t,e){return t.length===0?QN:t.length===1?t[0]:Buffer.concat(t,e)}function Q_t(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._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 H_t(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 Bhe(t){this._flushPending=!0;let e=()=>{this._fsync?(this._flushPending=!1,t()):us.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function G_t(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Bhe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function z_t(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Bhe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Vc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&us.close(e,r=>{if(r)return this.emit("error",r)})}),Phe(this.file,this)};Vc.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():HN(this)))};function K_t(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=us.writeSync(this.fd,t,"utf8"),r=T8(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;w8(jN)}}try{us.fsyncSync(this.fd)}catch{}}function V_t(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=QN);let t=QN;for(;this._bufs.length||t.length;){t.length<=0&&(t=Dhe(this._bufs[0],this._lens[0]));try{let e=us.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;w8(jN)}}}Vc.prototype.destroy=function(){this.destroyed||HN(this)};function Y_t(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=us.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else us.write(this.fd,this._writingBuf,"utf8",t)}function J_t(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:Dhe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=us.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else us.write(this.fd,this._writingBuf,t)}function HN(t){if(t.fd===-1){t.once("ready",HN.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],us.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?us.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Vc.SonicBoom=Vc;Vc.default=Vc;Lhe.exports=Vc});var R8=_((AWr,qhe)=>{"use strict";var Yc={exit:[],beforeExit:[]},Whe={exit:eEt,beforeExit:tEt},_A;function X_t(){_A===void 0&&(_A=new FinalizationRegistry(rEt))}function Z_t(t){Yc[t].length>0||process.on(t,Whe[t])}function $he(t){Yc[t].length>0||(process.removeListener(t,Whe[t]),Yc.exit.length===0&&Yc.beforeExit.length===0&&(_A=void 0))}function eEt(){Uhe("exit")}function tEt(){Uhe("beforeExit")}function Uhe(t){for(let e of Yc[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}Yc[t]=[]}function rEt(t){for(let e of["exit","beforeExit"]){let r=Yc[e].indexOf(t);Yc[e].splice(r,r+1),$he(e)}}function Fhe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");Z_t(t);let n=new WeakRef(e);n.fn=r,X_t(),_A.register(e,n),Yc[t].push(n)}function nEt(t,e){Fhe("exit",t,e)}function sEt(t,e){Fhe("beforeExit",t,e)}function iEt(t){if(_A!==void 0){_A.unregister(t);for(let e of["exit","beforeExit"])Yc[e]=Yc[e].filter(r=>{let n=r.deref();return n&&n!==t}),$he(e)}}qhe.exports={register:nEt,registerBeforeExit:sEt,unregister:iEt}});var jhe=_((xWr,aEt)=>{aEt.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina <[email protected]>",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var Hhe=_((bWr,Qhe)=>{"use strict";function oEt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function cEt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}Qhe.exports={wait:oEt,waitDiff:cEt}});var zhe=_((_Wr,Ghe)=>{"use strict";Ghe.exports={WRITE_INDEX:4,READ_INDEX:8}});var Xhe=_((EWr,Jhe)=>{"use strict";var{version:uEt}=jhe(),{EventEmitter:lEt}=require("events"),{Worker:dEt}=require("worker_threads"),{join:fEt}=require("path"),{pathToFileURL:pEt}=require("url"),{wait:mEt}=Hhe(),{WRITE_INDEX:Ua,READ_INDEX:Yu}=zhe(),hEt=require("buffer"),gEt=require("assert"),Se=Symbol("kImpl"),yEt=hEt.constants.MAX_STRING_LENGTH,fE=class{constructor(e){this._value=e}deref(){return this._value}},zN=class{register(){}unregister(){}},AEt=process.env.NODE_V8_COVERAGE?zN:global.FinalizationRegistry||zN,xEt=process.env.NODE_V8_COVERAGE?fE:global.WeakRef||fE,Khe=new AEt(t=>{t.exited||t.terminate()});function bEt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||fEt(__dirname,"lib","worker.js"),a=new dEt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:pEt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:uEt},...n}}});return a.stream=new fE(t),a.on("message",_Et),a.on("exit",Yhe),Khe.register(t,a),a}function Vhe(t){gEt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function GN(t){let e=Atomics.load(t[Se].state,Ua),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?D8(t):t[Se].needDrain&&process.nextTick(Vhe,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),KN(t,n,GN.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),KN(t,n,GN.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0),GN(t)})}else Ju(t,new Error("overwritten"))}function _Et(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new xEt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Ju(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Ju(e,new Error("this should not happen: "+t.code))}}function Yhe(t){let e=this.stream.deref();e!==void 0&&(Khe.unregister(e),e.worker.exited=!0,e.worker.off("exit",Yhe),Ju(e,t!==0?new Error("the worker thread exited"):null))}var O8=class extends lEt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=bEt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return k8(this,new Error("the worker has exited")),!1;if(this[Se].ending)return k8(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=yEt)try{N8(this),this[Se].flushing=!0}catch(r){return Ju(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return N8(this),!0}catch(r){return Ju(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(GN,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Ua)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,D8(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Ua);mEt(this[Se].state,Yu,r,1/0,(n,s)=>{if(n){Ju(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(N8(this),P8(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function k8(t,e){setImmediate(()=>{t.emit("error",e)})}function Ju(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,k8(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function KN(t,e,r){let n=Atomics.load(t[Se].state,Ua),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Ua,n+s),Atomics.notify(t[Se].state,Ua),r(),!0}function D8(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Yu);Atomics.store(t[Se].state,Ua,-1),Atomics.notify(t[Se].state,Ua);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Yu,e,1e3),e=Atomics.load(t[Se].state,Yu),e===-2){Ju(t,new Error("end() failed"));return}if(++r===10){Ju(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Ju(t,e)}}}function N8(t){let e=()=>{t[Se].ending?D8(t):t[Se].needDrain&&process.nextTick(Vhe,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Ua),n=t[Se].data.length-r;if(n===0){P8(t),Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),KN(t,s,e);else{for(P8(t),Atomics.store(t[Se].state,Yu,0),Atomics.store(t[Se].state,Ua,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),KN(t,s,e)}}}function P8(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Ua),r=0;for(;;){let n=Atomics.load(t[Se].state,Yu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Yu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}Jhe.exports=O8});var M8=_((vWr,Zhe)=>{"use strict";var{createRequire:EEt}=require("module"),vEt=y8(),{join:B8,isAbsolute:SEt,sep:IEt}=require("path"),CEt=C8(),L8=R8(),TEt=Xhe();function wEt(t){L8.register(t,NEt),L8.registerBeforeExit(t,OEt),t.on("close",function(){L8.unregister(t)})}function REt(t,e,r){let n=new TEt({filename:t,workerData:e,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&wEt(n)}function i(){n.closed||(n.flushSync(),CEt(100),n.end())}return n}function NEt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function OEt(t){t.flushSync()}function kEt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=vEt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||B8(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||B8(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,REt(d(l),i,a);function d(f){if(f=u[f]||f,SEt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return B8(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+IEt:m;p=EEt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}Zhe.exports=kEt});var JN=_((SWr,lge)=>{"use strict";var ege=Rhe(),{mapHttpRequest:PEt,mapHttpResponse:DEt}=g8(),$8=Mhe(),tge=R8(),{lsCacheSym:BEt,chindingsSym:sge,writeSym:rge,serializersSym:ige,formatOptsSym:nge,endSym:LEt,stringifiersSym:age,stringifySym:oge,stringifySafeSym:U8,wildcardFirstSym:cge,nestedKeySym:MEt,formattersSym:uge,messageKeySym:WEt,errorKeySym:$Et,nestedKeyStrSym:UEt,msgPrefixSym:VN}=bA(),{isMainThread:FEt}=require("worker_threads"),qEt=M8();function EA(){}function jEt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=PEt(n):typeof n.setHeader=="function"&&(n=DEt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[VN]=="string"&&i!==void 0&&i!==null&&(i=this[VN]+i),this[rge](n,ege(i,a,this[nge]),t)}else{let i=n===void 0?s.shift():n;typeof this[VN]=="string"&&i!==void 0&&i!==null&&(i=this[VN]+i),this[rge](null,ege(i,s,this[nge]),t)}}}function W8(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a<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 QEt(t,e,r,n){let s=this[oge],i=this[U8],a=this[age],o=this[LEt],c=this[sge],u=this[ige],l=this[uge],d=this[WEt],f=this[$Et],p=this[BEt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[cge],y="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let x=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":x&&(m=x(m));break;case"string":m=(x||W8)(m);break;default:m=(x||s)(m,i)}if(m===void 0)continue;let A=W8(b);y+=","+A+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||W8)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[MEt]&&y?p+this[UEt]+y.slice(1)+"}"+g+o:p+y+g+o}function HEt(t,e){let r,n=t[sge],s=t[oge],i=t[U8],a=t[age],o=a[cge],c=t[ige],u=t[uge].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function GEt(t){return t.write!==t.constructor.prototype.write}var zEt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function YN(t){let e=new $8(t);return e.on("error",r),!zEt&&!t.sync&&FEt&&(tge.register(e,KEt),e.on("close",function(){tge.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=EA,e.end=EA,e.flushSync=EA,e.destroy=EA;return}e.removeListener("error",r),e.emit("error",n)}}function KEt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function VEt(t){return function(r,n,s={},i){if(typeof s=="string")i=YN({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=YN({dest:i})}else if(s instanceof $8||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof $8||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=qEt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=EA),i||(GEt(process.stdout)?i=process.stdout:i=YN({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function YEt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[U8])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function JEt(t,e,r){return{level:t,bindings:e,log:r}}function XEt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}lge.exports={noop:EA,buildSafeSonicBoom:YN,asChindings:HEt,asJson:QEt,genLog:jEt,createArgsNormalizer:VEt,stringify:YEt,buildFormatters:JEt,normalizeDestFileDescriptor:XEt}});var XN=_((IWr,dge)=>{var ZEt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},evt={ASC:"ASC",DESC:"DESC"};dge.exports={DEFAULT_LEVELS:ZEt,SORTING_ORDER:evt}});var j8=_((CWr,hge)=>{"use strict";var{lsCacheSym:tvt,levelValSym:F8,useOnlyCustomLevelsSym:rvt,streamSym:nvt,formattersSym:svt,hooksSym:ivt,levelCompSym:fge}=bA(),{noop:avt,genLog:qm}=JN(),{DEFAULT_LEVELS:Xu,SORTING_ORDER:pge}=XN(),mge={fatal:t=>{let e=qm(Xu.fatal,t);return function(...r){let n=this[nvt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>qm(Xu.error,t),warn:t=>qm(Xu.warn,t),info:t=>qm(Xu.info,t),debug:t=>qm(Xu.debug,t),trace:t=>qm(Xu.trace,t)},q8=Object.keys(Xu).reduce((t,e)=>(t[Xu[e]]=e,t),{}),ovt=Object.keys(q8).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function cvt(t){let e=t[svt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[tvt]=n,t}function uvt(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function lvt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[F8],s=this[F8]=r[t],i=this[rvt],a=this[fge],o=this[ivt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=avt;continue}this[c]=uvt(c,i)?mge[c](o):qm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function dvt(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function fvt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[fge](r,this[F8])}function pvt(t,e,r){return t===pge.DESC?e<=r:e>=r}function mvt(t){return typeof t=="string"?pvt.bind(null,t):t}function hvt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:q8,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:Xu,t);return{labels:n,values:s}}function gvt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys(q8).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:Xu,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function yvt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function Avt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(pge).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}hge.exports={initialLsCache:ovt,genLsCache:cvt,levelMethods:mge,getLevel:dvt,setLevel:lvt,isLevelEnabled:fvt,mappings:hvt,assertNoLevelCollisions:yvt,assertDefaultLevelFound:gvt,genLevelComparison:mvt,assertLevelComparison:Avt}});var Q8=_((TWr,gge)=>{"use strict";gge.exports={version:"8.21.0"}});var Tge=_((RWr,Cge)=>{"use strict";var{EventEmitter:xvt}=require("events"),{lsCacheSym:bvt,levelValSym:_vt,setLevelSym:G8,getLevelSym:yge,chindingsSym:z8,parsedChindingsSym:Evt,mixinSym:vvt,asJsonSym:Ege,writeSym:Svt,mixinMergeStrategySym:Ivt,timeSym:Cvt,timeSliceIndexSym:Tvt,streamSym:vge,serializersSym:jm,formattersSym:H8,errorKeySym:wvt,messageKeySym:Rvt,useOnlyCustomLevelsSym:Nvt,needsMetadataGsym:Ovt,redactFmtSym:kvt,stringifySym:Pvt,formatOptsSym:Dvt,stringifiersSym:Bvt,msgPrefixSym:Age}=bA(),{getLevel:Lvt,setLevel:Mvt,isLevelEnabled:Wvt,mappings:$vt,initialLsCache:Uvt,genLsCache:Fvt,assertNoLevelCollisions:qvt}=j8(),{asChindings:Sge,asJson:jvt,buildFormatters:xge,stringify:bge}=JN(),{version:Qvt}=Q8(),Hvt=S8(),Gvt=class{},Ige={constructor:Gvt,child:zvt,bindings:Kvt,setBindings:Vvt,flush:Zvt,isLevelEnabled:Wvt,version:Qvt,get level(){return this[yge]()},set level(t){this[G8](t)},get levelVal(){return this[_vt]},set levelVal(t){throw Error("levelVal is read-only")},[bvt]:Uvt,[Svt]:Jvt,[Ege]:jvt,[yge]:Lvt,[G8]:Mvt};Object.setPrototypeOf(Ige,xvt.prototype);Cge.exports=function(){return Object.create(Ige)};var _ge=t=>t;function zvt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[jm],n=this[H8],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[jm]=Object.create(null);for(let l in r)s[jm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i<c.length;i++){let l=c[i];s[jm][l]=r[l]}for(let l in e.serializers)s[jm][l]=e.serializers[l];let u=Object.getOwnPropertySymbols(e.serializers);for(var a=0;a<u.length;a++){let l=u[a];s[jm][l]=e.serializers[l]}}else s[jm]=r;if(e.hasOwnProperty("formatters")){let{level:c,bindings:u,log:l}=e.formatters;s[H8]=xge(c||n.level,u||_ge,l||n.log)}else s[H8]=xge(n.level,_ge,n.log);if(e.hasOwnProperty("customLevels")===!0&&(qvt(this.levels,e.customLevels),s.levels=$vt(e.customLevels,s[Nvt]),Fvt(s)),typeof e.redact=="object"&&e.redact!==null||Array.isArray(e.redact)){s.redact=e.redact;let c=Hvt(s.redact,bge),u={stringify:c[kvt]};s[Pvt]=bge,s[Bvt]=c,s[Dvt]=u}typeof e.msgPrefix=="string"&&(s[Age]=(this[Age]||"")+e.msgPrefix),s[z8]=Sge(s,t);let o=e.level||this.level;return s[G8](o),this.onChild(s),s}function Kvt(){let e=`{${this[z8].substr(1)}}`,r=JSON.parse(e);return delete r.pid,delete r.hostname,r}function Vvt(t){let e=Sge(this,t);this[z8]=e,delete this[Evt]}function Yvt(t,e){return Object.assign(e,t)}function Jvt(t,e,r){let n=this[Cvt](),s=this[vvt],i=this[wvt],a=this[Rvt],o=this[Ivt]||Yvt,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[Ege](c,e,r,n),l=this[vge];l[Ovt]===!0&&(l.lastLevel=r,l.lastObj=c,l.lastMsg=e,l.lastTime=n.slice(this[Tvt]),l.lastLogger=this),l.write(u)}function Xvt(){}function Zvt(t){if(t!=null&&typeof t!="function")throw Error("callback must be a function");let e=this[vge];typeof e.flush=="function"?e.flush(t||Xvt):t&&t()}});var Oge=_((J8,Nge)=>{"use strict";var{hasOwnProperty:pE}=Object.prototype,Hm=Y8();Hm.configure=Y8;Hm.stringify=Hm;Hm.default=Hm;J8.stringify=Hm;J8.configure=Y8;Nge.exports=Hm;var eSt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function Pp(t){return t.length<5e3&&!eSt.test(t)?`"${t}"`:JSON.stringify(t)}function K8(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;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 tSt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function V8(t){return tSt.call(t)!==void 0&&t.length!==0}function wge(t,e,r){t.length<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 rSt(t){if(pE.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 nSt(t){let e;if(pE.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 sSt(t,e){let r;if(pE.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 Rge(t,e){let r;if(pE.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 Qm(t){return t===1?"1 item":`${t} items`}function iSt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function aSt(t){if(pE.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function Y8(t){t={...t};let e=aSt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=rSt(t),n=sSt(t,"bigint"),s=nSt(t),i=typeof s=="function"?s:void 0,a=Rge(t,"maximumDepth"),o=Rge(t,"maximumBreadth");function c(p,m,h,y,g,b){let x=m[p];switch(typeof x=="object"&&x!==null&&typeof x.toJSON=="function"&&(x=x.toJSON(p)),x=y.call(m,p,x),typeof x){case"string":return Pp(x);case"object":{if(x===null)return"null";if(h.indexOf(x)!==-1)return r;let A="",S=",",I=b;if(Array.isArray(x)){if(x.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(x),g!==""&&(b+=g,A+=`
|
|
${b}`,S=`,
|
|
${b}`);let M=Math.min(x.length,o),D=0;for(;D<M-1;D++){let Z=c(String(D),x,h,y,g,b);A+=Z!==void 0?Z:"null",A+=S}let L=c(String(D),x,h,y,g,b);if(A+=L!==void 0?L:"null",x.length-1>o){let Z=x.length-o-1;A+=`${S}"... ${Qm(Z)} not stringified"`}return g!==""&&(A+=`
|
|
${I}`),h.pop(),`[${A}]`}let R=Object.keys(x),w=R.length;if(w===0)return"{}";if(a<h.length+1)return'"[Object]"';let N="",k="";g!==""&&(b+=g,S=`,
|
|
${b}`,N=" ");let B=Math.min(w,o);s&&!V8(x)&&(R=K8(R,i)),h.push(x);for(let M=0;M<B;M++){let D=R[M],L=c(D,x,h,y,g,b);L!==void 0&&(A+=`${k}${Pp(D)}:${N}${L}`,k=S)}if(w>o){let M=w-o;A+=`${k}"...":${N}"${Qm(M)} not stringified"`,k=S}return g!==""&&k.length>1&&(A=`
|
|
${b}${A}
|
|
${I}`),h.pop(),`{${A}}`}case"number":return isFinite(x)?String(x):e?e(x):"null";case"boolean":return x===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(x);default:return e?e(x):void 0}}function u(p,m,h,y,g,b){switch(typeof m=="object"&&m!==null&&typeof m.toJSON=="function"&&(m=m.toJSON(p)),typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(h.indexOf(m)!==-1)return r;let x=b,A="",S=",";if(Array.isArray(m)){if(m.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(m),g!==""&&(b+=g,A+=`
|
|
${b}`,S=`,
|
|
${b}`);let w=Math.min(m.length,o),N=0;for(;N<w-1;N++){let B=u(String(N),m[N],h,y,g,b);A+=B!==void 0?B:"null",A+=S}let k=u(String(N),m[N],h,y,g,b);if(A+=k!==void 0?k:"null",m.length-1>o){let B=m.length-o-1;A+=`${S}"... ${Qm(B)} not stringified"`}return g!==""&&(A+=`
|
|
${x}`),h.pop(),`[${A}]`}h.push(m);let I="";g!==""&&(b+=g,S=`,
|
|
${b}`,I=" ");let R="";for(let w of y){let N=u(w,m[w],h,y,g,b);N!==void 0&&(A+=`${R}${Pp(w)}:${I}${N}`,R=S)}return g!==""&&R.length>1&&(A=`
|
|
${b}${A}
|
|
${x}`),h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function l(p,m,h,y,g){switch(typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return l(p,m,h,y,g);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let b=g;if(Array.isArray(m)){if(m.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(m),g+=y;let N=`
|
|
${g}`,k=`,
|
|
${g}`,B=Math.min(m.length,o),M=0;for(;M<B-1;M++){let L=l(String(M),m[M],h,y,g);N+=L!==void 0?L:"null",N+=k}let D=l(String(M),m[M],h,y,g);if(N+=D!==void 0?D:"null",m.length-1>o){let L=m.length-o-1;N+=`${k}"... ${Qm(L)} not stringified"`}return N+=`
|
|
${b}`,h.pop(),`[${N}]`}let x=Object.keys(m),A=x.length;if(A===0)return"{}";if(a<h.length+1)return'"[Object]"';g+=y;let S=`,
|
|
${g}`,I="",R="",w=Math.min(A,o);V8(m)&&(I+=wge(m,S,o),x=x.slice(m.length),w-=m.length,R=S),s&&(x=K8(x,i)),h.push(m);for(let N=0;N<w;N++){let k=x[N],B=l(k,m[k],h,y,g);B!==void 0&&(I+=`${R}${Pp(k)}: ${B}`,R=S)}if(A>o){let N=A-o;I+=`${R}"...": "${Qm(N)} not stringified"`,R=S}return R!==""&&(I=`
|
|
${g}${I}
|
|
${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return Pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let y="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(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);y+=N!==void 0?N:"null",y+=","}let w=d(String(R),m[R],h);if(y+=w!==void 0?w:"null",m.length-1>o){let N=m.length-o-1;y+=`,"... ${Qm(N)} not stringified"`}return h.pop(),`[${y}]`}let b=Object.keys(m),x=b.length;if(x===0)return"{}";if(a<h.length+1)return'"[Object]"';let A="",S=Math.min(x,o);g&&V8(m)&&(y+=wge(m,",",o),b=b.slice(m.length),S-=m.length,A=","),s&&(b=K8(b,i)),h.push(m);for(let I=0;I<S;I++){let R=b[I],w=d(R,m[R],h);w!==void 0&&(y+=`${A}${Pp(R)}:${w}`,A=",")}if(x>o){let I=x-o;y+=`${A}"...":"${Qm(I)} not stringified"`}return h.pop(),`{${y}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let y="";if(typeof h=="number"?y=" ".repeat(Math.min(h,10)):typeof h=="string"&&(y=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,y,"");if(Array.isArray(m))return u("",p,[],iSt(m),y,"")}if(y.length!==0)return l("",p,[],y,"")}return d("",p,[])}return f}});var Dge=_((NWr,Pge)=>{"use strict";var X8=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:kge}=XN(),oSt=kge.info;function cSt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(kge);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[X8]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,y;for(let g=lSt(m.length,e.dedupe);fSt(g,m.length,e.dedupe);g=dSt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(y=f.stream,y[X8]){let{lastTime:b,lastMsg:x,lastObj:A,lastLogger:S}=this;y.lastLevel=p,y.lastTime=b,y.lastMsg=x,y.lastObj=A,y.lastLogger=S}y.write(d),e.dedupe&&(h=f.level)}else if(!e.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,y;typeof d.levelVal=="number"?y=d.levelVal:typeof d.level=="string"?y=h[d.level]:typeof d.level=="number"?y=d.level:y=oSt;let g={stream:p,level:y,levelVal:void 0,id:r++};return m.unshift(g),m.sort(uSt),this.minLevel=m[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let p=0;p<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,[X8]:!0}}}function uSt(t,e){return t.level-e.level}function lSt(t,e){return e?t-1:0}function dSt(t,e){return e?t-1:t+1}function fSt(t,e,r){return r?t>=0:t<e}Pge.exports=cSt});var zge=_((OWr,tc)=>{"use strict";var pSt=require("os"),qge=g8(),mSt=y8(),hSt=S8(),jge=The(),gSt=Tge(),Qge=bA(),{configure:ySt}=Oge(),{assertDefaultLevelFound:ASt,mappings:Hge,genLsCache:xSt,genLevelComparison:bSt,assertLevelComparison:_St}=j8(),{DEFAULT_LEVELS:ESt,SORTING_ORDER:vSt}=XN(),{createArgsNormalizer:SSt,asChindings:ISt,buildSafeSonicBoom:Bge,buildFormatters:CSt,stringify:Z8,normalizeDestFileDescriptor:Lge,noop:TSt}=JN(),{version:wSt}=Q8(),{chindingsSym:Mge,redactFmtSym:RSt,serializersSym:Wge,timeSym:NSt,timeSliceIndexSym:OSt,streamSym:kSt,stringifySym:$ge,stringifySafeSym:e$,stringifiersSym:Uge,setLevelSym:PSt,endSym:DSt,formatOptsSym:BSt,messageKeySym:LSt,errorKeySym:MSt,nestedKeySym:WSt,mixinSym:$St,levelCompSym:USt,useOnlyCustomLevelsSym:FSt,formattersSym:Fge,hooksSym:qSt,nestedKeyStrSym:jSt,mixinMergeStrategySym:QSt,msgPrefixSym:HSt}=Qge,{epochTime:Gge,nullTime:GSt}=jge,{pid:zSt}=process,KSt=pSt.hostname(),VSt=qge.err,YSt={level:"info",levelComparison:vSt.ASC,levels:ESt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:zSt,hostname:KSt},serializers:Object.assign(Object.create(null),{err:VSt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:Gge,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},JSt=SSt(YSt),XSt=Object.assign(Object.create(null),qge);function t$(...t){let e={},{opts:r,stream:n}=JSt(e,mSt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:y,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:x,hooks:A,depthLimit:S,edgeLimit:I,onChild:R,msgPrefix:w}=r,N=ySt({maximumDepth:S,maximumBreadth:I}),k=CSt(x.level,x.bindings,x.log),B=Z8.bind({[e$]:N}),M=s?hSt(s,B):{},D=s?{stringify:M[RSt]}:{stringify:B},L="}"+(i?`\r
|
|
`:`
|
|
`),Z=ISt.bind(null,{[Mge]:"",[Wge]:a,[Uge]:M,[$ge]:Z8,[e$]:N,[Fge]:k}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let U=o instanceof Function?o:o?Gge:GSt,z=U().indexOf(":")+1;if(b&&!m)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(y&&typeof y!="function")throw Error(`Unknown mixin type "${typeof y}" - expected "function"`);if(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);ASt(p,m,b);let j=Hge(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),_St(h);let J=bSt(h);return Object.assign(e,{levels:j,[USt]:J,[FSt]:b,[kSt]:n,[NSt]:U,[OSt]:z,[$ge]:Z8,[e$]:N,[Uge]:M,[DSt]:L,[BSt]:D,[LSt]:c,[MSt]:u,[WSt]:l,[jSt]:l?`,${JSON.stringify(l)}:{`:"",[Wge]:a,[$St]:y,[QSt]:g,[Mge]:W,[Fge]:k,[qSt]:A,silent:TSt,onChild:R,[HSt]:w}),Object.setPrototypeOf(e,gSt()),xSt(e),e[PSt](p),e}tc.exports=t$;tc.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=Lge(t.dest||process.stdout.fd),Bge(t)):Bge({dest:Lge(t),minLength:0});tc.exports.transport=M8();tc.exports.multistream=Dge();tc.exports.levels=Hge();tc.exports.stdSerializers=XSt;tc.exports.stdTimeFunctions=Object.assign({},jge);tc.exports.symbols=Qge;tc.exports.version=wSt;tc.exports.default=t$;tc.exports.pino=t$});var mE=_((kWr,Xge)=>{"use strict";var ZSt=Mme(),ZN=zge(),{serializersSym:Kge}=ZN.symbols,{FST_ERR_LOG_INVALID_DESTINATION:eIt,FST_ERR_LOG_INVALID_LOGGER:tIt}=Di();function Vge(t){if(t.stream&&t.file)throw new eIt;t.file&&(t.stream=ZN.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[Kge]&&(t.serializers=Object.assign({},t.serializers,e[Kge])),n=e.child({},t),t.logger=e,t.genReqId=r):n=ZN(t,t.stream),n}var r$={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:ZN.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function rIt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function nIt(t){if(!t.logger){let n=ZSt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(Yge(t.logger))return{logger:Vge({logger:t.logger,serializers:Object.assign({},r$,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},r$,e.serializers),t.logger=e,{logger:Vge(t.logger),hasLogger:!0}}function Yge(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw tIt(n.join(","))}else return!0}function sIt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==Jge&&Yge(a,!0),a}function Jge(t,e,r){return t.child(e,r)}Xge.exports={createLogger:nIt,createChildLogger:sIt,defaultChildLoggerFactory:Jge,serializers:r$,now:rIt}});var eO=_((PWr,Zge)=>{"use strict";Zge.exports=iIt;function vA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function iIt(t){if(t=t||{},t.circles)return aIt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;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]=vA(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]=vA(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]=vA(u):o[c]=i(u)}return o}}function aIt(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]=vA(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]=vA(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]=vA(d);else{let f=e.indexOf(d);f!==-1?u[l]=r[f]:u[l]=o(d)}}return e.pop(),r.pop(),u}}});var hE=_((DWr,nye)=>{"use strict";var oIt=eO()({circles:!1,proto:!0}),{kSchemaVisited:eye,kSchemaResponse:cIt}=zs(),s$=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:uIt,FST_ERR_SCH_ALREADY_PRESENT:lIt,FST_ERR_SCH_DUPLICATE:dIt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:fIt}=Di(),rye=["params","body","querystring","query","headers"];function tO(t){this.store=t||{}}tO.prototype.add=function(t){let e=oIt(t.isFluentSchema||t.isFluentJSONSchema||t[s$]?t.valueOf():t),r=e.$id;if(!r)throw new uIt;if(this.store[r])throw new lIt(r);this.store[r]=e};tO.prototype.getSchemas=function(){return Object.assign({},this.store)};tO.prototype.getSchema=function(t){return this.store[t]};function tye(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function pIt(t,e){if(t[eye])return t;if(t.query){if(t.querystring)throw new dIt("querystring");t.querystring=t.query}mIt(t);for(let r of rye){let n=t[r];n&&!tye(n)&&(t[r]=n$(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(tye(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o<a.length;o++){let c=a[o];if(!s[c].schema){if(a.length===1)break;throw new fIt(c)}t.response[n].content[c].schema=n$(s[c].schema,e.jsonShorthand),o===a.length-1&&(i=!0)}}i||(t.response[n]=n$(t.response[n],e.jsonShorthand))}}return t[eye]=!0,t}function mIt(t){for(let e of rye)t[e]&&(t[e].isFluentSchema||t[e][s$])&&(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][s$])&&(t.response[r]=t.response[r].valueOf())}}function n$(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 hIt(t,e,r){let n=t[cIt];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}nye.exports={buildSchemas(t){return new tO(t)},getSchemaSerializer:hIt,normalizeSchema:pIt}});var i$=_((BWr,iye)=>{"use strict";var gIt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;iye.exports=class sye{constructor(e){switch(e&&e.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n<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&&gIt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new sye(e)}}});var AE=_(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.regexpCode=Mr.getEsmExportName=Mr.getProperty=Mr.safeStringify=Mr.stringify=Mr.strConcat=Mr.addCodeArg=Mr.str=Mr._=Mr.nil=Mr._Code=Mr.Name=Mr.IDENTIFIER=Mr._CodeOrName=void 0;var gE=class{};Mr._CodeOrName=gE;Mr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Gm=class extends gE{constructor(e){if(super(),!Mr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mr.Name=Gm;var rc=class extends gE{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Gm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Mr._Code=rc;Mr.nil=new rc("");function aye(t,...e){let r=[t[0]],n=0;for(;n<e.length;)o$(r,e[n]),r.push(t[++n]);return new rc(r)}Mr._=aye;var a$=new rc("+");function oye(t,...e){let r=[yE(t[0])],n=0;for(;n<e.length;)r.push(a$),o$(r,e[n]),r.push(a$,yE(t[++n]));return yIt(r),new rc(r)}Mr.str=oye;function o$(t,e){e instanceof rc?t.push(...e._items):e instanceof Gm?t.push(e):t.push(bIt(e))}Mr.addCodeArg=o$;function yIt(t){let e=1;for(;e<t.length-1;){if(t[e]===a$){let r=AIt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function AIt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Gm||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 Gm))return`"${t}${e.slice(1)}`}function xIt(t,e){return e.emptyStr()?t:t.emptyStr()?e:oye`${t}${e}`}Mr.strConcat=xIt;function bIt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:yE(Array.isArray(t)?t.join(","):t)}function _It(t){return new rc(yE(t))}Mr.stringify=_It;function yE(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Mr.safeStringify=yE;function EIt(t){return typeof t=="string"&&Mr.IDENTIFIER.test(t)?new rc(`.${t}`):aye`[${t}]`}Mr.getProperty=EIt;function vIt(t){if(typeof t=="string"&&Mr.IDENTIFIER.test(t))return new rc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Mr.getEsmExportName=vIt;function SIt(t){return new rc(t.toString())}Mr.regexpCode=SIt});var l$=_(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.ValueScope=qa.ValueScopeName=qa.Scope=qa.varKinds=qa.UsedValueState=void 0;var Fa=AE(),c$=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},rO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(rO||(qa.UsedValueState=rO={}));qa.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var nO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};qa.Scope=nO;var sO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};qa.ValueScopeName=sO;var IIt=(0,Fa._)`\n`,u$=class extends nO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?IIt:Fa.nil}}get(){return this._scope}name(e){return new sO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,rO.Started);let l=r(u);if(l){let d=this.opts.es5?qa.varKinds.var:qa.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new c$(u);c.set(u,rO.Completed)})}return i}};qa.ValueScope=u$});var Vt=_(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.or=rr.and=rr.not=rr.CodeGen=rr.operators=rr.varKinds=rr.ValueScopeName=rr.ValueScope=rr.Scope=rr.Name=rr.regexpCode=rr.stringify=rr.getProperty=rr.nil=rr.strConcat=rr.str=rr._=void 0;var Er=AE(),Jc=l$(),Dp=AE();Object.defineProperty(rr,"_",{enumerable:!0,get:function(){return Dp._}});Object.defineProperty(rr,"str",{enumerable:!0,get:function(){return Dp.str}});Object.defineProperty(rr,"strConcat",{enumerable:!0,get:function(){return Dp.strConcat}});Object.defineProperty(rr,"nil",{enumerable:!0,get:function(){return Dp.nil}});Object.defineProperty(rr,"getProperty",{enumerable:!0,get:function(){return Dp.getProperty}});Object.defineProperty(rr,"stringify",{enumerable:!0,get:function(){return Dp.stringify}});Object.defineProperty(rr,"regexpCode",{enumerable:!0,get:function(){return Dp.regexpCode}});Object.defineProperty(rr,"Name",{enumerable:!0,get:function(){return Dp.Name}});var cO=l$();Object.defineProperty(rr,"Scope",{enumerable:!0,get:function(){return cO.Scope}});Object.defineProperty(rr,"ValueScope",{enumerable:!0,get:function(){return cO.ValueScope}});Object.defineProperty(rr,"ValueScopeName",{enumerable:!0,get:function(){return cO.ValueScopeName}});Object.defineProperty(rr,"varKinds",{enumerable:!0,get:function(){return cO.varKinds}});rr.operators={GT:new Er._Code(">"),GTE:new Er._Code(">="),LT:new Er._Code("<"),LTE:new Er._Code("<="),EQ:new Er._Code("==="),NEQ:new Er._Code("!=="),NOT:new Er._Code("!"),OR:new Er._Code("||"),AND:new Er._Code("&&"),ADD:new Er._Code("+")};var Nd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},d$=class extends Nd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Jc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=IA(this.rhs,e,r)),this}get names(){return this.rhs instanceof Er._CodeOrName?this.rhs.names:{}}},iO=class extends Nd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Er.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=IA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Er.Name?{}:{...this.lhs.names};return oO(e,this.rhs)}},f$=class extends iO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},p$=class extends Nd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},m$=class extends Nd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},h$=class extends Nd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},g$=class extends Nd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=IA(this.code,e,r),this}get names(){return this.code instanceof Er._CodeOrName?this.code.names:{}}},xE=class extends Nd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(CIt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Vm(e,r.names),{})}},Od=class extends xE{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},y$=class extends xE{},SA=class extends Od{};SA.kind="else";var zm=class t extends Od{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new SA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(cye(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=IA(this.condition,e,r),this}get names(){let e=super.names;return oO(e,this.condition),this.else&&Vm(e,this.else.names),e}};zm.kind="if";var Km=class extends Od{};Km.kind="for";var A$=class extends Km{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=IA(this.iteration,e,r),this}get names(){return Vm(super.names,this.iteration.names)}},x$=class extends Km{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Jc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=oO(super.names,this.from);return oO(e,this.to)}},aO=class extends Km{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=IA(this.iterable,e,r),this}get names(){return Vm(super.names,this.iterable.names)}},bE=class extends Od{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};bE.kind="func";var _E=class extends xE{render(e){return"return "+super.render(e)}};_E.kind="return";var b$=class extends Od{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Vm(e,this.catch.names),this.finally&&Vm(e,this.finally.names),e}},EE=class extends Od{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};EE.kind="catch";var vE=class extends Od{render(e){return"finally"+super.render(e)}};vE.kind="finally";var _$=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
`:""},this._extScope=e,this._scope=new Jc.Scope({parent:e}),this._nodes=[new y$]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new d$(e,i,n)),i}const(e,r,n){return this._def(Jc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Jc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Jc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new iO(e,r,n))}add(e,r){return this._leafNode(new f$(e,rr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Er.nil&&this._leafNode(new g$(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Er.addCodeArg)(r,s));return r.push("}"),new Er._Code(r)}if(e,r,n){if(this._blockNode(new zm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new zm(e))}else(){return this._elseNode(new SA)}endIf(){return this._endBlockNode(zm,SA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new A$(e),r)}forRange(e,r,n,s,i=this.opts.es5?Jc.varKinds.var:Jc.varKinds.let){let a=this._scope.toName(e);return this._for(new x$(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Jc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Er.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Er._)`${a}.length`,o=>{this.var(i,(0,Er._)`${a}[${o}]`),n(i)})}return this._for(new aO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Jc.varKinds.var:Jc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Er._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new aO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Km)}label(e){return this._leafNode(new p$(e))}break(e){return this._leafNode(new m$(e))}return(e){let r=new _E;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(_E)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new b$;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new EE(i),r(i)}return n&&(this._currNode=s.finally=new vE,this.code(n)),this._endBlockNode(EE,vE)}throw(e){return this._leafNode(new h$(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Er.nil,n,s){return this._blockNode(new bE(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(bE)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof zm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};rr.CodeGen=_$;function Vm(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function oO(t,e){return e instanceof Er._CodeOrName?Vm(t,e.names):t}function IA(t,e,r){if(t instanceof Er.Name)return n(t);if(!s(t))return t;return new Er._Code(t._items.reduce((i,a)=>(a instanceof Er.Name&&(a=n(a)),a instanceof Er._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Er._Code&&i._items.some(a=>a instanceof Er.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function CIt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function cye(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Er._)`!${E$(t)}`}rr.not=cye;var TIt=uye(rr.operators.AND);function wIt(...t){return t.reduce(TIt)}rr.and=wIt;var RIt=uye(rr.operators.OR);function NIt(...t){return t.reduce(RIt)}rr.or=NIt;function uye(t){return(e,r)=>e===Er.nil?r:r===Er.nil?e:(0,Er._)`${E$(e)} ${t} ${E$(r)}`}function E$(t){return t instanceof Er.Name?t:(0,Er._)`(${t})`}});var Wr=_(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.checkStrictMode=ir.getErrorPath=ir.Type=ir.useFunc=ir.setEvaluated=ir.evaluatedPropsToName=ir.mergeEvaluated=ir.eachItem=ir.unescapeJsonPointer=ir.escapeJsonPointer=ir.escapeFragment=ir.unescapeFragment=ir.schemaRefOrVal=ir.schemaHasRulesButRef=ir.schemaHasRules=ir.checkUnknownRules=ir.alwaysValidSchema=ir.toHash=void 0;var un=Vt(),OIt=AE();function kIt(t){let e={};for(let r of t)e[r]=!0;return e}ir.toHash=kIt;function PIt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(fye(t,e),!pye(e,t.self.RULES.all))}ir.alwaysValidSchema=PIt;function fye(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||gye(t,`unknown keyword: "${i}"`)}ir.checkUnknownRules=fye;function pye(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ir.schemaHasRules=pye;function DIt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ir.schemaHasRulesButRef=DIt;function BIt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,un._)`${r}`}return(0,un._)`${t}${e}${(0,un.getProperty)(n)}`}ir.schemaRefOrVal=BIt;function LIt(t){return mye(decodeURIComponent(t))}ir.unescapeFragment=LIt;function MIt(t){return encodeURIComponent(S$(t))}ir.escapeFragment=MIt;function S$(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ir.escapeJsonPointer=S$;function mye(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ir.unescapeJsonPointer=mye;function WIt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ir.eachItem=WIt;function lye({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof un.Name?(i instanceof un.Name?t(s,i,a):e(s,i,a),a):i instanceof un.Name?(e(s,a,i),i):r(i,a);return o===un.Name&&!(c instanceof un.Name)?n(s,c):c}}ir.mergeEvaluated={props:lye({mergeNames:(t,e,r)=>t.if((0,un._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,un._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,un._)`${r} || {}`).code((0,un._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,un._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,un._)`${r} || {}`),I$(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:hye}),items:lye({mergeNames:(t,e,r)=>t.if((0,un._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,un._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,un._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,un._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function hye(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,un._)`{}`);return e!==void 0&&I$(t,r,e),r}ir.evaluatedPropsToName=hye;function I$(t,e,r){Object.keys(r).forEach(n=>t.assign((0,un._)`${e}${(0,un.getProperty)(n)}`,!0))}ir.setEvaluated=I$;var dye={};function $It(t,e){return t.scopeValue("func",{ref:e,code:dye[e.code]||(dye[e.code]=new OIt._Code(e.code))})}ir.useFunc=$It;var v$;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(v$||(ir.Type=v$={}));function UIt(t,e,r){if(t instanceof un.Name){let n=e===v$.Num;return r?n?(0,un._)`"[" + ${t} + "]"`:(0,un._)`"['" + ${t} + "']"`:n?(0,un._)`"/" + ${t}`:(0,un._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,un.getProperty)(t).toString():"/"+S$(t)}ir.getErrorPath=UIt;function gye(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ir.checkStrictMode=gye});var kd=_(C$=>{"use strict";Object.defineProperty(C$,"__esModule",{value:!0});var Li=Vt(),FIt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};C$.default=FIt});var SE=_(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.extendErrors=Mi.resetErrorsCount=Mi.reportExtraError=Mi.reportError=Mi.keyword$DataError=Mi.keywordError=void 0;var Rr=Vt(),uO=Wr(),ua=kd();Mi.keywordError={message:({keyword:t})=>(0,Rr.str)`must pass "${t}" keyword validation`};Mi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Rr.str)`"${t}" keyword must be ${e} ($data)`:(0,Rr.str)`"${t}" keyword is invalid ($data)`};function qIt(t,e=Mi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=xye(t,e,r);n??(a||o)?yye(i,c):Aye(s,(0,Rr._)`[${c}]`)}Mi.reportError=qIt;function jIt(t,e=Mi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=xye(t,e,r);yye(s,o),i||a||Aye(n,ua.default.vErrors)}Mi.reportExtraError=jIt;function QIt(t,e){t.assign(ua.default.errors,e),t.if((0,Rr._)`${ua.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Rr._)`${ua.default.vErrors}.length`,e),()=>t.assign(ua.default.vErrors,null)))}Mi.resetErrorsCount=QIt;function HIt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ua.default.errors,o=>{t.const(a,(0,Rr._)`${ua.default.vErrors}[${o}]`),t.if((0,Rr._)`${a}.instancePath === undefined`,()=>t.assign((0,Rr._)`${a}.instancePath`,(0,Rr.strConcat)(ua.default.instancePath,i.errorPath))),t.assign((0,Rr._)`${a}.schemaPath`,(0,Rr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Rr._)`${a}.schema`,r),t.assign((0,Rr._)`${a}.data`,n))})}Mi.extendErrors=HIt;function yye(t,e){let r=t.const("err",e);t.if((0,Rr._)`${ua.default.vErrors} === null`,()=>t.assign(ua.default.vErrors,(0,Rr._)`[${r}]`),(0,Rr._)`${ua.default.vErrors}.push(${r})`),t.code((0,Rr._)`${ua.default.errors}++`)}function Aye(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Rr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Rr._)`${n}.errors`,e),r.return(!1))}var Ym={keyword:new Rr.Name("keyword"),schemaPath:new Rr.Name("schemaPath"),params:new Rr.Name("params"),propertyName:new Rr.Name("propertyName"),message:new Rr.Name("message"),schema:new Rr.Name("schema"),parentSchema:new Rr.Name("parentSchema")};function xye(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Rr._)`{}`:GIt(t,e,r)}function GIt(t,e,r={}){let{gen:n,it:s}=t,i=[zIt(s,r),KIt(t,r)];return VIt(t,e,i),n.object(...i)}function zIt({errorPath:t},{instancePath:e}){let r=e?(0,Rr.str)`${t}${(0,uO.getErrorPath)(e,uO.Type.Str)}`:t;return[ua.default.instancePath,(0,Rr.strConcat)(ua.default.instancePath,r)]}function KIt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Rr.str)`${e}/${t}`;return r&&(s=(0,Rr.str)`${s}${(0,uO.getErrorPath)(r,uO.Type.Str)}`),[Ym.schemaPath,s]}function VIt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Ym.keyword,s],[Ym.params,typeof e=="function"?e(t):e||(0,Rr._)`{}`]),c.messages&&n.push([Ym.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Ym.schema,a],[Ym.parentSchema,(0,Rr._)`${l}${d}`],[ua.default.data,i]),u&&n.push([Ym.propertyName,u])}});var _ye=_(CA=>{"use strict";Object.defineProperty(CA,"__esModule",{value:!0});CA.boolOrEmptySchema=CA.topBoolOrEmptySchema=void 0;var YIt=SE(),JIt=Vt(),XIt=kd(),ZIt={message:"boolean schema is false"};function eCt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?bye(t,!1):typeof r=="object"&&r.$async===!0?e.return(XIt.default.data):(e.assign((0,JIt._)`${n}.errors`,null),e.return(!0))}CA.topBoolOrEmptySchema=eCt;function tCt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),bye(t)):r.var(e,!0)}CA.boolOrEmptySchema=tCt;function bye(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,YIt.reportError)(s,ZIt,void 0,e)}});var T$=_(TA=>{"use strict";Object.defineProperty(TA,"__esModule",{value:!0});TA.getRules=TA.isJSONType=void 0;var rCt=["string","number","integer","boolean","null","object","array"],nCt=new Set(rCt);function sCt(t){return typeof t=="string"&&nCt.has(t)}TA.isJSONType=sCt;function iCt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}TA.getRules=iCt});var w$=_(Bp=>{"use strict";Object.defineProperty(Bp,"__esModule",{value:!0});Bp.shouldUseRule=Bp.shouldUseGroup=Bp.schemaHasRulesForType=void 0;function aCt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Eye(t,n)}Bp.schemaHasRulesForType=aCt;function Eye(t,e){return e.rules.some(r=>vye(t,r))}Bp.shouldUseGroup=Eye;function vye(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Bp.shouldUseRule=vye});var IE=_(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.reportTypeError=Wi.checkDataTypes=Wi.checkDataType=Wi.coerceAndCheckDataType=Wi.getJSONTypes=Wi.getSchemaTypes=Wi.DataType=void 0;var oCt=T$(),cCt=w$(),uCt=SE(),jt=Vt(),Sye=Wr(),wA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(wA||(Wi.DataType=wA={}));function lCt(t){let e=Iye(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Wi.getSchemaTypes=lCt;function Iye(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(oCt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Wi.getJSONTypes=Iye;function dCt(t,e){let{gen:r,data:n,opts:s}=t,i=fCt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,cCt.schemaHasRulesForType)(t,e[0]));if(a){let o=N$(e,n,s.strictNumbers,wA.Wrong);r.if(o,()=>{i.length?pCt(t,e,i):O$(t)})}return a}Wi.coerceAndCheckDataType=dCt;var Cye=new Set(["string","number","integer","boolean","null"]);function fCt(t,e){return e?t.filter(r=>Cye.has(r)||e==="array"&&r==="array"):[]}function pCt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(N$(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(Cye.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),O$(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),mCt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null
|
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,jt._)`+${s}`);return;case"integer":n.elseIf((0,jt._)`${a} === "boolean" || ${s} === null
|
|
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,jt._)`+${s}`);return;case"boolean":n.elseIf((0,jt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,jt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,jt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,jt._)`${a} === "string" || ${a} === "number"
|
|
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function mCt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function R$(t,e,r,n=wA.Correct){let s=n===wA.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===wA.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Wi.checkDataType=R$;function N$(t,e,r,n){if(t.length===1)return R$(t[0],e,r,n);let s,i=(0,Sye.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,R$(a,e,r,n));return s}Wi.checkDataTypes=N$;var hCt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function O$(t){let e=gCt(t);(0,uCt.reportError)(e,hCt)}Wi.reportTypeError=O$;function gCt(t){let{gen:e,data:r,schema:n}=t,s=(0,Sye.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var wye=_(lO=>{"use strict";Object.defineProperty(lO,"__esModule",{value:!0});lO.assignDefaults=void 0;var RA=Vt(),yCt=Wr();function ACt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Tye(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Tye(t,i,s.default))}lO.assignDefaults=ACt;function Tye(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,RA._)`${i}${(0,RA.getProperty)(e)}`;if(s){(0,yCt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,RA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,RA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,RA._)`${o} = ${(0,RA.stringify)(r)}`)}});var nc=_(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.validateUnion=Xr.validateArray=Xr.usePattern=Xr.callValidateCode=Xr.schemaProperties=Xr.allSchemaProperties=Xr.noPropertyInData=Xr.propertyInData=Xr.isOwnProperty=Xr.hasPropFunc=Xr.reportMissingProp=Xr.checkMissingProp=Xr.checkReportMissingProp=void 0;var Rn=Vt(),k$=Wr(),Lp=kd(),xCt=Wr();function bCt(t,e){let{gen:r,data:n,it:s}=t;r.if(D$(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Xr.checkReportMissingProp=bCt;function _Ct({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(D$(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Xr.checkMissingProp=_Ct;function ECt(t,e){t.setParams({missingProperty:e},!0),t.error()}Xr.reportMissingProp=ECt;function Rye(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Xr.hasPropFunc=Rye;function P$(t,e,r){return(0,Rn._)`${Rye(t)}.call(${e}, ${r})`}Xr.isOwnProperty=P$;function vCt(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${P$(t,e,r)}`:s}Xr.propertyInData=vCt;function D$(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(P$(t,e,r))):s}Xr.noPropertyInData=D$;function Nye(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Xr.allSchemaProperties=Nye;function SCt(t,e){return Nye(e).filter(r=>!(0,k$.alwaysValidSchema)(t,e[r]))}Xr.schemaProperties=SCt;function ICt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[Lp.default.instancePath,(0,Rn.strConcat)(Lp.default.instancePath,i)],[Lp.default.parentData,a.parentData],[Lp.default.parentDataProperty,a.parentDataProperty],[Lp.default.rootData,Lp.default.rootData]];a.opts.dynamicRef&&d.push([Lp.default.dynamicAnchors,Lp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Xr.callValidateCode=ICt;var CCt=(0,Rn._)`new RegExp`;function TCt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?CCt:(0,xCt.useFunc)(t,s)}(${r}, ${n})`})}Xr.usePattern=TCt;function wCt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:k$.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Xr.validateArray=wCt;function RCt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,k$.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Xr.validateUnion=RCt});var Pye=_(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});Zu.validateKeywordUsage=Zu.validSchemaType=Zu.funcKeywordCode=Zu.macroKeywordCode=void 0;var la=Vt(),Jm=kd(),NCt=nc(),OCt=SE();function kCt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=kye(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:la.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Zu.macroKeywordCode=kCt;function PCt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;BCt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=kye(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Oye(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&Oye(t),y(()=>DCt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,la._)`await `),b=>n.assign(d,!1).if((0,la._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,la._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,la._)`${l}.errors`;return n.assign(g,null),h(la.nil),g}function h(g=e.async?(0,la._)`await `:la.nil){let b=c.opts.passContext?Jm.default.this:Jm.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,la._)`${g}${(0,NCt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,la.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Zu.funcKeywordCode=PCt;function Oye(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,la._)`${n.parentData}[${n.parentDataProperty}]`))}function DCt(t,e){let{gen:r}=t;r.if((0,la._)`Array.isArray(${e})`,()=>{r.assign(Jm.default.vErrors,(0,la._)`${Jm.default.vErrors} === null ? ${e} : ${Jm.default.vErrors}.concat(${e})`).assign(Jm.default.errors,(0,la._)`${Jm.default.vErrors}.length`),(0,OCt.extendErrors)(t)},()=>t.error())}function BCt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function kye(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,la.stringify)(r)})}function LCt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Zu.validSchemaType=LCt;function MCt({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Zu.validateKeywordUsage=MCt});var Bye=_(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.extendSubschemaMode=Mp.extendSubschemaData=Mp.getSubschema=void 0;var el=Vt(),Dye=Wr();function WCt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,el._)`${t.schemaPath}${(0,el.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,el._)`${t.schemaPath}${(0,el.getProperty)(e)}${(0,el.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Dye.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Mp.getSubschema=WCt;function $Ct(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,el._)`${e.data}${(0,el.getProperty)(r)}`,!0);c(f),t.errorPath=(0,el.str)`${u}${(0,Dye.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,el._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof el.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Mp.extendSubschemaData=$Ct;function UCt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Mp.extendSubschemaMode=UCt});var sc=_((YWr,Lye)=>{"use strict";Lye.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Wye=_((JWr,Mye)=>{"use strict";var Wp=Mye.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};dO(e,n,s,t,"",t)};Wp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Wp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Wp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Wp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function dO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Wp.arrayKeywords)for(var f=0;f<d.length;f++)dO(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Wp.propsKeywords){if(d&&typeof d=="object")for(var p in d)dO(t,e,r,d[p],s+"/"+l+"/"+FCt(p),i,s,l,n,p)}else(l in Wp.keywords||t.allKeys&&!(l in Wp.skipKeywords))&&dO(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function FCt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var CE=_(ja=>{"use strict";Object.defineProperty(ja,"__esModule",{value:!0});ja.getSchemaRefs=ja.resolveUrl=ja.normalizeId=ja._getFullPath=ja.getFullPath=ja.inlineRef=void 0;var qCt=Wr(),jCt=sc(),QCt=Wye(),HCt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function GCt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!B$(t):e?$ye(t)<=e:!1}ja.inlineRef=GCt;var zCt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function B$(t){for(let e in t){if(zCt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(B$)||typeof r=="object"&&B$(r))return!0}return!1}function $ye(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!HCt.has(r)&&(typeof t[r]=="object"&&(0,qCt.eachItem)(t[r],n=>e+=$ye(n)),e===1/0))return 1/0}return e}function Uye(t,e="",r){r!==!1&&(e=NA(e));let n=t.parse(e);return Fye(t,n)}ja.getFullPath=Uye;function Fye(t,e){return t.serialize(e).split("#")[0]+"#"}ja._getFullPath=Fye;var KCt=/#\/?$/;function NA(t){return t?t.replace(KCt,""):""}ja.normalizeId=NA;function VCt(t,e,r){return r=NA(r),t.resolve(e,r)}ja.resolveUrl=VCt;var YCt=/^[a-z_][-a-z0-9._]*$/i;function JCt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=NA(t[r]||e),i={"":s},a=Uye(n,s,!1),o={},c=new Set;return QCt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=NA(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==NA(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!YCt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!jCt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ja.getSchemaRefs=JCt});var RE=_($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});$p.getData=$p.KeywordCxt=$p.validateFunctionCode=void 0;var Gye=_ye(),qye=IE(),M$=w$(),fO=IE(),XCt=wye(),wE=Pye(),L$=Bye(),at=Vt(),Rt=kd(),ZCt=CE(),Pd=Wr(),TE=SE();function e2t(t){if(Vye(t)&&(Yye(t),Kye(t))){n2t(t);return}zye(t,()=>(0,Gye.topBoolOrEmptySchema)(t))}$p.validateFunctionCode=e2t;function zye({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${jye(r,s)}`),r2t(t,s),t.code(i)}):t.func(e,(0,at._)`${Rt.default.data}, ${t2t(s)}`,n.$async,()=>t.code(jye(r,s)).code(i))}function t2t(t){return(0,at._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,at._)`, ${Rt.default.dynamicAnchors}={}`:at.nil}}={}`}function r2t(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,at._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,at._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,at._)`""`),t.var(Rt.default.parentData,(0,at._)`undefined`),t.var(Rt.default.parentDataProperty,(0,at._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`{}`)})}function n2t(t){let{schema:e,opts:r,gen:n}=t;zye(t,()=>{r.$comment&&e.$comment&&Xye(t),c2t(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&s2t(t),Jye(t),d2t(t)})}function s2t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function jye(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function i2t(t,e){if(Vye(t)&&(Yye(t),Kye(t))){a2t(t,e);return}(0,Gye.boolOrEmptySchema)(t,e)}function Kye({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Vye(t){return typeof t.schema!="boolean"}function a2t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&Xye(t),u2t(t),l2t(t);let i=n.const("_errs",Rt.default.errors);Jye(t,i),n.var(e,(0,at._)`${i} === ${Rt.default.errors}`)}function Yye(t){(0,Pd.checkUnknownRules)(t),o2t(t)}function Jye(t,e){if(t.opts.jtd)return Qye(t,[],!1,e);let r=(0,qye.getSchemaTypes)(t.schema),n=(0,qye.coerceAndCheckDataType)(t,r);Qye(t,r,!n,e)}function o2t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function c2t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Pd.checkStrictMode)(t,"default is ignored in the schema root")}function u2t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,ZCt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function l2t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Xye({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function d2t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,at._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&f2t(t),e.return((0,at._)`${Rt.default.errors} === 0`))}function f2t({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function Qye(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Pd.schemaHasRulesButRef)(i,l))){s.block(()=>eAe(t,"$ref",l.all.$ref.definition));return}c.jtd||p2t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,M$.shouldUseGroup)(i,f)&&(f.type?(s.if((0,fO.checkDataType)(f.type,a,c.strictNumbers)),Hye(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,fO.reportTypeError)(t)),s.endIf()):Hye(t,f),o||s.if((0,at._)`${Rt.default.errors} === ${n||0}`))}}function Hye(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,XCt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,M$.shouldUseRule)(n,i)&&eAe(t,i.keyword,i.definition,e.type)})}function p2t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(m2t(t,e),t.opts.allowUnionTypes||h2t(t,e),g2t(t,t.dataTypes))}function m2t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Zye(t.dataTypes,r)||W$(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),A2t(t,e)}}function h2t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&W$(t,"use allowUnionTypes to allow union type keyword")}function g2t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,M$.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>y2t(e,a))&&W$(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function y2t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Zye(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function A2t(t,e){let r=[];for(let n of t.dataTypes)Zye(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function W$(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Pd.checkStrictMode)(t,e,t.opts.strictTypes)}var pO=class{constructor(e,r,n){if((0,wE.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",tAe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,wE.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?TE.reportExtraError:TE.reportError)(this,this.def.error,r)}$dataError(){(0,TE.reportError)(this,this.def.$dataError||TE.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,TE.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,fO.checkDataTypes)(c,r,i.opts.strictNumbers,fO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,L$.getSubschema)(this.it,e);(0,L$.extendSubschemaData)(n,this.it,e),(0,L$.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return i2t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};$p.KeywordCxt=pO;function eAe(t,e,r,n){let s=new pO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,wE.funcKeywordCode)(s,r):"macro"in r?(0,wE.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,wE.funcKeywordCode)(s,r)}var x2t=/^\/(?:[^~]|~0|~1)*$/,b2t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function tAe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!x2t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=b2t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,Pd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}$p.getData=tAe});var mO=_(U$=>{"use strict";Object.defineProperty(U$,"__esModule",{value:!0});var $$=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};U$.default=$$});var NE=_(j$=>{"use strict";Object.defineProperty(j$,"__esModule",{value:!0});var F$=CE(),q$=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,F$.resolveUrl)(e,r,n),this.missingSchema=(0,F$.normalizeId)((0,F$.getFullPath)(e,this.missingRef))}};j$.default=q$});var gO=_(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.resolveSchema=ic.getCompilingSchema=ic.resolveRef=ic.compileSchema=ic.SchemaEnv=void 0;var Xc=Vt(),_2t=mO(),Xm=kd(),Zc=CE(),rAe=Wr(),E2t=RE(),OA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Zc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ic.SchemaEnv=OA;function H$(t){let e=nAe.call(this,t);if(e)return e;let r=(0,Zc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Xc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:_2t.default,code:(0,Xc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Xm.default.data,parentData:Xm.default.parentData,parentDataProperty:Xm.default.parentDataProperty,dataNames:[Xm.default.data],dataPathArr:[Xc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Xc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Xc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Xc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,E2t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Xm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Xm.default.self}`,`${Xm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Xc.Name?void 0:m,items:h instanceof Xc.Name?void 0:h,dynamicProps:m instanceof Xc.Name,dynamicItems:h instanceof Xc.Name},p.source&&(p.source.evaluated=(0,Xc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ic.compileSchema=H$;function v2t(t,e,r){var n;r=(0,Zc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=C2t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new OA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=S2t.call(this,i)}ic.resolveRef=v2t;function S2t(t){return(0,Zc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:H$.call(this,t)}function nAe(t){for(let e of this._compilations)if(I2t(e,t))return e}ic.getCompilingSchema=nAe;function I2t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function C2t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||hO.call(this,t,e)}function hO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Zc._getFullPath)(this.opts.uriResolver,r),s=(0,Zc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Q$.call(this,r,t);let i=(0,Zc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=hO.call(this,t,a);return typeof o?.schema!="object"?void 0:Q$.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||H$.call(this,a),i===(0,Zc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Zc.resolveUrl)(this.opts.uriResolver,s,u)),new OA({schema:o,schemaId:c,root:t,baseId:s})}return Q$.call(this,r,a)}}ic.resolveSchema=hO;var T2t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Q$(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,rAe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!T2t.has(o)&&u&&(e=(0,Zc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,rAe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Zc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=hO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new OA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var sAe=_((n8r,w2t)=>{w2t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var z$=_((s8r,cAe)=>{"use strict";var R2t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),aAe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function G$(t){let e="",r=0,n=0;for(n=0;n<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 N2t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function iAe(t){return t.length=0,!0}function O2t(t,e,r){if(t.length){let n=G$(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function k2t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=O2t;for(let c=0;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=iAe}else{s.push(u);continue}}return s.length&&(o===iAe?r.zone=s.join(""):a?n.push(s.join("")):n.push(G$(s))),r.address=n.join(""),r}function oAe(t){if(P2t(t,":")<2)return{host:t,isIPV6:!1};let e=k2t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function P2t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function D2t(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 B2t(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 L2t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!aAe(r)){let n=oAe(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}cAe.exports={nonSimpleDomain:N2t,recomposeAuthority:L2t,normalizeComponentEncoding:B2t,removeDotSegments:D2t,isIPv4:aAe,isUUID:R2t,normalizeIPv6:oAe,stringArrayToHexStripped:G$}});var pAe=_((i8r,fAe)=>{"use strict";var{isUUID:M2t}=z$(),W2t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,$2t=["http","https","ws","wss","urn","urn:uuid"];function U2t(t){return $2t.indexOf(t)!==-1}function K$(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function uAe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function lAe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function F2t(t){return t.secure=K$(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function q2t(t){if((t.port===(K$(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function j2t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(W2t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=V$(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function Q2t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=V$(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function H2t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!M2t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function G2t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var dAe={scheme:"http",domainHost:!0,parse:uAe,serialize:lAe},z2t={scheme:"https",domainHost:dAe.domainHost,parse:uAe,serialize:lAe},yO={scheme:"ws",domainHost:!0,parse:F2t,serialize:q2t},K2t={scheme:"wss",domainHost:yO.domainHost,parse:yO.parse,serialize:yO.serialize},V2t={scheme:"urn",parse:j2t,serialize:Q2t,skipNormalize:!0},Y2t={scheme:"urn:uuid",parse:H2t,serialize:G2t,skipNormalize:!0},AO={http:dAe,https:z2t,ws:yO,wss:K2t,urn:V2t,"urn:uuid":Y2t};Object.setPrototypeOf(AO,null);function V$(t){return t&&(AO[t]||AO[t.toLowerCase()])||void 0}fAe.exports={wsIsSecure:K$,SCHEMES:AO,isValidSchemeName:U2t,getSchemeHandler:V$}});var gAe=_((a8r,bO)=>{"use strict";var{normalizeIPv6:J2t,removeDotSegments:OE,recomposeAuthority:X2t,normalizeComponentEncoding:xO,isIPv4:Z2t,nonSimpleDomain:eTt}=z$(),{SCHEMES:tTt,getSchemeHandler:mAe}=pAe();function rTt(t,e){return typeof t=="string"?t=tl(Dd(t,e),e):typeof t=="object"&&(t=Dd(tl(t,e),e)),t}function nTt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=hAe(Dd(t,n),Dd(e,n),n,!0);return n.skipEscape=!0,tl(s,n)}function hAe(t,e,r,n){let s={};return n||(t=Dd(tl(t,r),r),e=Dd(tl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=OE(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=OE(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=OE(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=OE(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function sTt(t,e,r){return typeof t=="string"?(t=unescape(t),t=tl(xO(Dd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=tl(xO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=tl(xO(Dd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=tl(xO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function tl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=mAe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=X2t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=OE(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var iTt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Dd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(iTt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(Z2t(n.host)===!1){let c=J2t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=mAe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&eTt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Y$={SCHEMES:tTt,normalize:rTt,resolve:nTt,resolveComponent:hAe,equal:sTt,serialize:tl,parse:Dd};bO.exports=Y$;bO.exports.default=Y$;bO.exports.fastUri=Y$});var AAe=_(J$=>{"use strict";Object.defineProperty(J$,"__esModule",{value:!0});var yAe=gAe();yAe.code='require("ajv/dist/runtime/uri").default';J$.default=yAe});var CAe=_(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});gi.CodeGen=gi.Name=gi.nil=gi.stringify=gi.str=gi._=gi.KeywordCxt=void 0;var aTt=RE();Object.defineProperty(gi,"KeywordCxt",{enumerable:!0,get:function(){return aTt.KeywordCxt}});var kA=Vt();Object.defineProperty(gi,"_",{enumerable:!0,get:function(){return kA._}});Object.defineProperty(gi,"str",{enumerable:!0,get:function(){return kA.str}});Object.defineProperty(gi,"stringify",{enumerable:!0,get:function(){return kA.stringify}});Object.defineProperty(gi,"nil",{enumerable:!0,get:function(){return kA.nil}});Object.defineProperty(gi,"Name",{enumerable:!0,get:function(){return kA.Name}});Object.defineProperty(gi,"CodeGen",{enumerable:!0,get:function(){return kA.CodeGen}});var oTt=mO(),vAe=NE(),cTt=T$(),kE=gO(),uTt=Vt(),PE=CE(),_O=IE(),Z$=Wr(),xAe=sAe(),lTt=AAe(),SAe=(t,e)=>new RegExp(t,e);SAe.code="new RegExp";var dTt=["removeAdditional","useDefaults","coerceTypes"],fTt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),pTt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},mTt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},bAe=200;function hTt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:SAe,L=(s=t.uriResolver)!==null&&s!==void 0?s:lTt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:bAe,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:bAe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var DE=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...hTt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new uTt.ValueScope({scope:{},prefixes:fTt,es5:r,lines:n}),this.logger=_Tt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,cTt.getRules)(),_Ae.call(this,pTt,e,"NOT SUPPORTED"),_Ae.call(this,mTt,e,"DEPRECATED","warn"),this._metaOpts=xTt.call(this),e.formats&&yTt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&ATt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),gTt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=xAe;n==="id"&&(s={...xAe},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof vAe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,PE.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=EAe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new kE.SchemaEnv({schema:{},schemaId:n});if(r=kE.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=EAe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,PE.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(vTt.call(this,n,r),!r)return(0,Z$.eachItem)(n,i=>X$.call(this,i)),this;ITt.call(this,r);let s={...r,type:(0,_O.getJSONTypes)(r.type),schemaType:(0,_O.getJSONTypes)(r.schemaType)};return(0,Z$.eachItem)(n,s.type.length===0?i=>X$.call(this,i,s):i=>s.type.forEach(a=>X$.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=IAe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,PE.normalizeId)(a||n);let u=PE.getSchemaRefs.call(this,e,n);return c=new kE.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):kE.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{kE.compileSchema.call(this,e)}finally{this.opts=r}}};DE.ValidationError=oTt.default;DE.MissingRefError=vAe.default;gi.default=DE;function _Ae(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function EAe(t){return t=(0,PE.normalizeId)(t),this.schemas[t]||this.refs[t]}function gTt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function yTt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function ATt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function xTt(){let t={...this.opts};for(let e of dTt)delete t[e];return t}var bTt={log(){},warn(){},error(){}};function _Tt(t){if(t===!1)return bTt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var ETt=/^[a-z_$][a-z0-9_$:-]*$/i;function vTt(t,e){let{RULES:r}=this;if((0,Z$.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!ETt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function X$(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,_O.getJSONTypes)(e.type),schemaType:(0,_O.getJSONTypes)(e.schemaType)}};e.before?STt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function STt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function ITt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=IAe(e)),t.validateSchema=this.compile(e,!0))}var CTt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function IAe(t){return{anyOf:[t,CTt]}}});var TAe=_(eU=>{"use strict";Object.defineProperty(eU,"__esModule",{value:!0});var TTt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};eU.default=TTt});var OAe=_(Zm=>{"use strict";Object.defineProperty(Zm,"__esModule",{value:!0});Zm.callRef=Zm.getValidate=void 0;var wTt=NE(),wAe=nc(),Qa=Vt(),PA=kd(),RAe=gO(),EO=Wr(),RTt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=RAe.resolveRef.call(c,u,s,r);if(l===void 0)throw new wTt.default(n.opts.uriResolver,s,r);if(l instanceof RAe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return vO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return vO(t,(0,Qa._)`${m}.validate`,u,u.$async)}function f(m){let h=NAe(t,m);vO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Qa.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Qa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function NAe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Zm.getValidate=NAe;function vO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?PA.default.this:Qa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Qa._)`await ${(0,wAe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Qa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,wAe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Qa._)`${m}.errors`;s.assign(PA.default.vErrors,(0,Qa._)`${PA.default.vErrors} === null ? ${h} : ${PA.default.vErrors}.concat(${h})`),s.assign(PA.default.errors,(0,Qa._)`${PA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=EO.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Qa._)`${m}.evaluated.props`);i.props=EO.mergeEvaluated.props(s,g,i.props,Qa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=EO.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Qa._)`${m}.evaluated.items`);i.items=EO.mergeEvaluated.items(s,g,i.items,Qa.Name)}}}Zm.callRef=vO;Zm.default=RTt});var kAe=_(tU=>{"use strict";Object.defineProperty(tU,"__esModule",{value:!0});var NTt=TAe(),OTt=OAe(),kTt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",NTt.default,OTt.default];tU.default=kTt});var PAe=_(rU=>{"use strict";Object.defineProperty(rU,"__esModule",{value:!0});var SO=Vt(),Up=SO.operators,IO={maximum:{okStr:"<=",ok:Up.LTE,fail:Up.GT},minimum:{okStr:">=",ok:Up.GTE,fail:Up.LT},exclusiveMaximum:{okStr:"<",ok:Up.LT,fail:Up.GTE},exclusiveMinimum:{okStr:">",ok:Up.GT,fail:Up.LTE}},PTt={message:({keyword:t,schemaCode:e})=>(0,SO.str)`must be ${IO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,SO._)`{comparison: ${IO[t].okStr}, limit: ${e}}`},DTt={keyword:Object.keys(IO),type:"number",schemaType:"number",$data:!0,error:PTt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,SO._)`${r} ${IO[e].fail} ${n} || isNaN(${r})`)}};rU.default=DTt});var DAe=_(nU=>{"use strict";Object.defineProperty(nU,"__esModule",{value:!0});var BE=Vt(),BTt={message:({schemaCode:t})=>(0,BE.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,BE._)`{multipleOf: ${t}}`},LTt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:BTt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,BE._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,BE._)`${a} !== parseInt(${a})`;t.fail$data((0,BE._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};nU.default=LTt});var LAe=_(sU=>{"use strict";Object.defineProperty(sU,"__esModule",{value:!0});function BAe(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}sU.default=BAe;BAe.code='require("ajv/dist/runtime/ucs2length").default'});var MAe=_(iU=>{"use strict";Object.defineProperty(iU,"__esModule",{value:!0});var eh=Vt(),MTt=Wr(),WTt=LAe(),$Tt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,eh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,eh._)`{limit: ${t}}`},UTt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:$Tt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?eh.operators.GT:eh.operators.LT,a=s.opts.unicode===!1?(0,eh._)`${r}.length`:(0,eh._)`${(0,MTt.useFunc)(t.gen,WTt.default)}(${r})`;t.fail$data((0,eh._)`${a} ${i} ${n}`)}};iU.default=UTt});var WAe=_(aU=>{"use strict";Object.defineProperty(aU,"__esModule",{value:!0});var FTt=nc(),CO=Vt(),qTt={message:({schemaCode:t})=>(0,CO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,CO._)`{pattern: ${t}}`},jTt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:qTt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,CO._)`(new RegExp(${s}, ${a}))`:(0,FTt.usePattern)(t,n);t.fail$data((0,CO._)`!${o}.test(${e})`)}};aU.default=jTt});var $Ae=_(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var LE=Vt(),QTt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,LE.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,LE._)`{limit: ${t}}`},HTt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:QTt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?LE.operators.GT:LE.operators.LT;t.fail$data((0,LE._)`Object.keys(${r}).length ${s} ${n}`)}};oU.default=HTt});var UAe=_(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var ME=nc(),WE=Vt(),GTt=Wr(),zTt={message:({params:{missingProperty:t}})=>(0,WE.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,WE._)`{missingProperty: ${t}}`},KTt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:zTt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,GTt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(WE.nil,d);else for(let p of r)(0,ME.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,ME.checkMissingProp)(t,r,p)),(0,ME.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,ME.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,ME.propertyInData)(e,s,p,o.ownProperties)),e.if((0,WE.not)(m),()=>{t.error(),e.break()})},WE.nil)}}};cU.default=KTt});var FAe=_(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});var $E=Vt(),VTt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,$E.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,$E._)`{limit: ${t}}`},YTt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:VTt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?$E.operators.GT:$E.operators.LT;t.fail$data((0,$E._)`${r}.length ${s} ${n}`)}};uU.default=YTt});var UE=_(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});var qAe=sc();qAe.code='require("ajv/dist/runtime/equal").default';lU.default=qAe});var jAe=_(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var dU=IE(),yi=Vt(),JTt=Wr(),XTt=UE(),ZTt={message:({params:{i:t,j:e}})=>(0,yi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,yi._)`{i: ${t}, j: ${e}}`},ewt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:ZTt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,dU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,yi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,yi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,yi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,dU.checkDataTypes)(u,y,o.opts.strictNumbers,dU.DataType.Wrong),b=e.const("indices",(0,yi._)`{}`);e.for((0,yi._)`;${m}--;`,()=>{e.let(y,(0,yi._)`${r}[${m}]`),e.if(g,(0,yi._)`continue`),u.length>1&&e.if((0,yi._)`typeof ${y} == "string"`,(0,yi._)`${y} += "_"`),e.if((0,yi._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,yi._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,yi._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,JTt.useFunc)(e,XTt.default),g=e.name("outer");e.label(g).for((0,yi._)`;${m}--;`,()=>e.for((0,yi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,yi._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};fU.default=ewt});var QAe=_(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var pU=Vt(),twt=Wr(),rwt=UE(),nwt={message:"must be equal to constant",params:({schemaCode:t})=>(0,pU._)`{allowedValue: ${t}}`},swt={keyword:"const",$data:!0,error:nwt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,pU._)`!${(0,twt.useFunc)(e,rwt.default)}(${r}, ${s})`):t.fail((0,pU._)`${i} !== ${r}`)}};mU.default=swt});var HAe=_(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var FE=Vt(),iwt=Wr(),awt=UE(),owt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,FE._)`{allowedValues: ${t}}`},cwt={keyword:"enum",schemaType:"array",$data:!0,error:owt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,iwt.useFunc)(e,awt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,FE.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,FE._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,FE._)`${u()}(${r}, ${p}[${m}])`:(0,FE._)`${r} === ${h}`}}};hU.default=cwt});var GAe=_(gU=>{"use strict";Object.defineProperty(gU,"__esModule",{value:!0});var uwt=PAe(),lwt=DAe(),dwt=MAe(),fwt=WAe(),pwt=$Ae(),mwt=UAe(),hwt=FAe(),gwt=jAe(),ywt=QAe(),Awt=HAe(),xwt=[uwt.default,lwt.default,dwt.default,fwt.default,pwt.default,mwt.default,hwt.default,gwt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},ywt.default,Awt.default];gU.default=xwt});var AU=_(qE=>{"use strict";Object.defineProperty(qE,"__esModule",{value:!0});qE.validateAdditionalItems=void 0;var th=Vt(),yU=Wr(),bwt={message:({params:{len:t}})=>(0,th.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,th._)`{limit: ${t}}`},_wt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:bwt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,yU.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}zAe(t,n)}};function zAe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,th._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,th._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,yU.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,th._)`${o} <= ${e.length}`);r.if((0,th.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:yU.Type.Num},u),a.allErrors||r.if((0,th.not)(u),()=>r.break())})}}qE.validateAdditionalItems=zAe;qE.default=_wt});var xU=_(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});jE.validateTuple=void 0;var KAe=Vt(),TO=Wr(),Ewt=nc(),vwt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return VAe(t,"additionalItems",e);r.items=!0,!(0,TO.alwaysValidSchema)(r,e)&&t.ok((0,Ewt.validateArray)(t))}};function VAe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=TO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,KAe._)`${i}.length`);r.forEach((d,f)=>{(0,TO.alwaysValidSchema)(o,d)||(n.if((0,KAe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,TO.checkStrictMode)(o,y,f.strictTuples)}}}jE.validateTuple=VAe;jE.default=vwt});var YAe=_(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var Swt=xU(),Iwt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Swt.validateTuple)(t,"items")};bU.default=Iwt});var XAe=_(_U=>{"use strict";Object.defineProperty(_U,"__esModule",{value:!0});var JAe=Vt(),Cwt=Wr(),Twt=nc(),wwt=AU(),Rwt={message:({params:{len:t}})=>(0,JAe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,JAe._)`{limit: ${t}}`},Nwt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Rwt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Cwt.alwaysValidSchema)(n,e)&&(s?(0,wwt.validateAdditionalItems)(t,s):t.ok((0,Twt.validateArray)(t)))}};_U.default=Nwt});var ZAe=_(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var ac=Vt(),wO=Wr(),Owt={message:({params:{min:t,max:e}})=>e===void 0?(0,ac.str)`must contain at least ${t} valid item(s)`:(0,ac.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ac._)`{minContains: ${t}}`:(0,ac._)`{minContains: ${t}, maxContains: ${e}}`},kwt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Owt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ac._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,wO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,wO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,wO.alwaysValidSchema)(i,r)){let h=(0,ac._)`${l} >= ${a}`;o!==void 0&&(h=(0,ac._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ac._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:wO.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,ac._)`${h}++`),o===void 0?e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ac._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};EU.default=kwt});var rxe=_(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.validateSchemaDeps=rl.validatePropertyDeps=rl.error=void 0;var vU=Vt(),Pwt=Wr(),QE=nc();rl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,vU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,vU._)`{property: ${t},
|
|
missingProperty: ${n},
|
|
depsCount: ${e},
|
|
deps: ${r}}`};var Dwt={keyword:"dependencies",type:"object",schemaType:"object",error:rl.error,code(t){let[e,r]=Bwt(t);exe(t,e),txe(t,r)}};function Bwt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function exe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,QE.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,QE.checkReportMissingProp)(t,u)}):(r.if((0,vU._)`${c} && (${(0,QE.checkMissingProp)(t,o,i)})`),(0,QE.reportMissingProp)(t,i),r.else())}}rl.validatePropertyDeps=exe;function txe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,Pwt.alwaysValidSchema)(i,e[o])||(r.if((0,QE.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}rl.validateSchemaDeps=txe;rl.default=Dwt});var sxe=_(SU=>{"use strict";Object.defineProperty(SU,"__esModule",{value:!0});var nxe=Vt(),Lwt=Wr(),Mwt={message:"property name must be valid",params:({params:t})=>(0,nxe._)`{propertyName: ${t.propertyName}}`},Wwt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Mwt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Lwt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,nxe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};SU.default=Wwt});var CU=_(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var RO=nc(),eu=Vt(),$wt=kd(),NO=Wr(),Uwt={message:"must NOT have additional properties",params:({params:t})=>(0,eu._)`{additionalProperty: ${t.additionalProperty}}`},Fwt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Uwt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,NO.alwaysValidSchema)(a,r))return;let u=(0,RO.allSchemaProperties)(n.properties),l=(0,RO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,eu._)`${i} === ${$wt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,NO.schemaRefOrVal)(a,n.properties,"properties");g=(0,RO.isOwnProperty)(e,b,y)}else u.length?g=(0,eu.or)(...u.map(b=>(0,eu._)`${y} === ${b}`)):g=eu.nil;return l.length&&(g=(0,eu.or)(g,...l.map(b=>(0,eu._)`${(0,RO.usePattern)(t,b)}.test(${y})`))),(0,eu.not)(g)}function p(y){e.code((0,eu._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,NO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,eu.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,eu.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:NO.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};IU.default=Fwt});var oxe=_(wU=>{"use strict";Object.defineProperty(wU,"__esModule",{value:!0});var qwt=RE(),ixe=nc(),TU=Wr(),axe=CU(),jwt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&axe.default.code(new qwt.KeywordCxt(i,axe.default,"additionalProperties"));let a=(0,ixe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=TU.mergeEvaluated.props(e,(0,TU.toHash)(a),i.props));let o=a.filter(d=>!(0,TU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,ixe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};wU.default=jwt});var dxe=_(RU=>{"use strict";Object.defineProperty(RU,"__esModule",{value:!0});var cxe=nc(),OO=Vt(),uxe=Wr(),lxe=Wr(),Qwt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,cxe.allSchemaProperties)(r),c=o.filter(h=>(0,uxe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof OO.Name)&&(i.props=(0,lxe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,uxe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,OO._)`${(0,cxe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:lxe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,OO._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,OO.not)(l),()=>e.break())})})}}};RU.default=Qwt});var fxe=_(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var Hwt=Wr(),Gwt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Hwt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};NU.default=Gwt});var pxe=_(OU=>{"use strict";Object.defineProperty(OU,"__esModule",{value:!0});var zwt=nc(),Kwt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:zwt.validateUnion,error:{message:"must match a schema in anyOf"}};OU.default=Kwt});var mxe=_(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var kO=Vt(),Vwt=Wr(),Ywt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,kO._)`{passingSchemas: ${t.passing}}`},Jwt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Ywt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Vwt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,kO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,kO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,kO.Name)})})}}};kU.default=Jwt});var hxe=_(PU=>{"use strict";Object.defineProperty(PU,"__esModule",{value:!0});var Xwt=Wr(),Zwt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,Xwt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};PU.default=Zwt});var Axe=_(DU=>{"use strict";Object.defineProperty(DU,"__esModule",{value:!0});var PO=Vt(),yxe=Wr(),eRt={message:({params:t})=>(0,PO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,PO._)`{failingKeyword: ${t.ifClause}}`},tRt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:eRt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,yxe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=gxe(n,"then"),i=gxe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,PO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,PO._)`${l}`):t.setParams({ifClause:l})}}}};function gxe(t,e){let r=t.schema[e];return r!==void 0&&!(0,yxe.alwaysValidSchema)(t,r)}DU.default=tRt});var xxe=_(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var rRt=Wr(),nRt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,rRt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};BU.default=nRt});var bxe=_(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var sRt=AU(),iRt=YAe(),aRt=xU(),oRt=XAe(),cRt=ZAe(),uRt=rxe(),lRt=sxe(),dRt=CU(),fRt=oxe(),pRt=dxe(),mRt=fxe(),hRt=pxe(),gRt=mxe(),yRt=hxe(),ARt=Axe(),xRt=xxe();function bRt(t=!1){let e=[mRt.default,hRt.default,gRt.default,yRt.default,ARt.default,xRt.default,lRt.default,dRt.default,uRt.default,fRt.default,pRt.default];return t?e.push(iRt.default,oRt.default):e.push(sRt.default,aRt.default),e.push(cRt.default),e}LU.default=bRt});var _xe=_(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var ls=Vt(),_Rt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},ERt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:_Rt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(y,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),x()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function x(){let A=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,S=(0,ls._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,ls.regexpCode)(S):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,ls._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof y=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};MU.default=ERt});var Exe=_(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var vRt=_xe(),SRt=[vRt.default];WU.default=SRt});var vxe=_(DA=>{"use strict";Object.defineProperty(DA,"__esModule",{value:!0});DA.contentVocabulary=DA.metadataVocabulary=void 0;DA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];DA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Ixe=_($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var IRt=kAe(),CRt=GAe(),TRt=bxe(),wRt=Exe(),Sxe=vxe(),RRt=[IRt.default,CRt.default,(0,TRt.default)(),wRt.default,Sxe.metadataVocabulary,Sxe.contentVocabulary];$U.default=RRt});var Txe=_(DO=>{"use strict";Object.defineProperty(DO,"__esModule",{value:!0});DO.DiscrError=void 0;var Cxe;(function(t){t.Tag="tag",t.Mapping="mapping"})(Cxe||(DO.DiscrError=Cxe={}))});var Rxe=_(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var BA=Vt(),UU=Txe(),wxe=gO(),NRt=NE(),ORt=Wr(),kRt={message:({params:{discrError:t,tagName:e}})=>t===UU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,BA._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},PRt={keyword:"discriminator",type:"object",schemaType:"object",error:kRt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,BA._)`${r}${(0,BA.getProperty)(o)}`);e.if((0,BA._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:UU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,BA._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:UU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,BA.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A<a.length;A++){let S=a[A];if(S?.$ref&&!(0,ORt.schemaHasRulesButRef)(S,i.self.RULES)){let R=S.$ref;if(S=wxe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),S instanceof wxe.SchemaEnv&&(S=S.schema),S===void 0)throw new NRt.default(i.opts.uriResolver,i.baseId,R)}let I=(p=S?.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}"`);y=y&&(h||g(S)),b(I,A)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:A}){return Array.isArray(A)&&A.includes(o)}function b(A,S){if(A.const)x(A.const,S);else if(A.enum)for(let I of A.enum)x(I,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function x(A,S){if(typeof A!="string"||A in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[A]=S}}}};FU.default=PRt});var Nxe=_((K8r,DRt)=>{DRt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var jU=_((Nn,qU)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var BRt=CAe(),LRt=Ixe(),MRt=Rxe(),Oxe=Nxe(),WRt=["/properties"],BO="http://json-schema.org/draft-07/schema",LA=class extends BRt.default{_addVocabularies(){super._addVocabularies(),LRt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(MRt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Oxe,WRt):Oxe;this.addMetaSchema(e,BO,!1),this.refs["http://json-schema.org/schema"]=BO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(BO)?BO:void 0)}};Nn.Ajv=LA;qU.exports=Nn=LA;qU.exports.Ajv=LA;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=LA;var $Rt=RE();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return $Rt.KeywordCxt}});var MA=Vt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return MA._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return MA.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return MA.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return MA.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return MA.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return MA.CodeGen}});var URt=mO();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return URt.default}});var FRt=NE();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return FRt.default}})});var Pxe=_((V8r,kxe)=>{"use strict";var qRt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};kxe.exports={HEX:qRt}});var Fxe=_((Y8r,Uxe)=>{"use strict";var{HEX:jRt}=Pxe();function Mxe(t){if($xe(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=e;return r?{host:HRt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function QU(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),jRt[n]===void 0)return;r||(e+=n)}return e}function QRt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=QU(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;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(QU(s.join("")))),r.address=n.join(""),r}function Wxe(t,e={}){if($xe(t,":")<2)return{host:t,isIPV6:!1};let r=QRt(t);if(r.error)return{host:t,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function HRt(t,e){let r="",n=!0,s=t.length;for(let i=0;i<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 $xe(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}var Dxe=/^\.\.?\//u,Bxe=/^\/\.(?:\/|$)/u,Lxe=/^\/\.\.(?:\/|$)/u,GRt=/^\/?(?:.|\n)*?(?=\/|$)/u;function zRt(t){let e=[];for(;t.length;)if(t.match(Dxe))t=t.replace(Dxe,"");else if(t.match(Bxe))t=t.replace(Bxe,"/");else if(t.match(Lxe))t=t.replace(Lxe,"/"),e.pop();else if(t==="."||t==="..")t="";else{let r=t.match(GRt);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 KRt(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 VRt(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=Mxe(n);if(s.isIPV4)n=s.host;else{let i=Wxe(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}Uxe.exports={recomposeAuthority:VRt,normalizeComponentEncoding:KRt,removeDotSegments:zRt,normalizeIPv4:Mxe,normalizeIPv6:Wxe,stringToHexStripped:QU}});var zxe=_((J8r,Gxe)=>{"use strict";var YRt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,JRt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function qxe(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function jxe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Qxe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function XRt(t){return t.secure=qxe(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function ZRt(t){if((t.port===(qxe(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function eNt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(JRt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=HU[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function tNt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=HU[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function rNt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!YRt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function nNt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Hxe={scheme:"http",domainHost:!0,parse:jxe,serialize:Qxe},sNt={scheme:"https",domainHost:Hxe.domainHost,parse:jxe,serialize:Qxe},LO={scheme:"ws",domainHost:!0,parse:XRt,serialize:ZRt},iNt={scheme:"wss",domainHost:LO.domainHost,parse:LO.parse,serialize:LO.serialize},aNt={scheme:"urn",parse:eNt,serialize:tNt,skipNormalize:!0},oNt={scheme:"urn:uuid",parse:rNt,serialize:nNt,skipNormalize:!0},HU={http:Hxe,https:sNt,ws:LO,wss:iNt,urn:aNt,"urn:uuid":oNt};Gxe.exports=HU});var zU=_((X8r,WO)=>{"use strict";var{normalizeIPv6:cNt,normalizeIPv4:uNt,removeDotSegments:HE,recomposeAuthority:lNt,normalizeComponentEncoding:MO}=Fxe(),Kxe=zxe();function dNt(t,e){return typeof t=="string"?t=nl(Bd(t,e),e):typeof t=="object"&&(t=Bd(nl(t,e),e)),t}function fNt(t,e,r){let n=Object.assign({scheme:"null"},r),s=Vxe(Bd(t,n),Bd(e,n),n,!0);return nl(s,{...n,skipEscape:!0})}function Vxe(t,e,r,n){let s={};return n||(t=Bd(nl(t,r),r),e=Bd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=HE(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=HE(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=HE(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=HE(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function pNt(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(MO(Bd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(MO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(MO(Bd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(MO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Kxe[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=lNt(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=HE(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var mNt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function hNt(t){let e=0;for(let r=0,n=t.length;r<n;++r)if(e=t.charCodeAt(r),e>126||mNt[e])return!0;return!1}var gNt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Bd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(gNt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=uNt(n.host);o.isIPV4===!1?n.host=cNt(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Kxe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&hNt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var GU={normalize:dNt,resolve:fNt,resolveComponents:Vxe,equal:pNt,serialize:nl,parse:Bd};WO.exports=GU;WO.exports.default=GU;WO.exports.fastUri=GU});var $O=_(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.formatNames=il.fastFormats=il.fullFormats=void 0;function sl(t,e){return{validate:t,compare:e}}il.fullFormats={date:sl(Zxe,JU),time:sl(VU(!0),XU),"date-time":sl(Yxe(!0),tbe),"iso-time":sl(VU(),ebe),"iso-date-time":sl(Yxe(),rbe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:ENt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:RNt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:vNt,int32:{type:"number",validate:CNt},int64:{type:"number",validate:TNt},float:{type:"number",validate:Xxe},double:{type:"number",validate:Xxe},password:!0,binary:!0};il.fastFormats={...il.fullFormats,date:sl(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,JU),time:sl(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,XU),"date-time":sl(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,tbe),"iso-time":sl(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,ebe),"iso-date-time":sl(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,rbe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};il.formatNames=Object.keys(il.fullFormats);function yNt(t){return t%4===0&&(t%100!==0||t%400===0)}var ANt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xNt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Zxe(t){let e=ANt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&yNt(r)?29:xNt[n])}function JU(t,e){if(t&&e)return t>e?1:t<e?-1:0}var KU=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function VU(t){return function(r){let n=KU.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 XU(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function ebe(t,e){if(!(t&&e))return;let r=KU.exec(t),n=KU.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var YU=/t|\s/i;function Yxe(t){let e=VU(t);return function(n){let s=n.split(YU);return s.length===2&&Zxe(s[0])&&e(s[1])}}function tbe(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function rbe(t,e){if(!(t&&e))return;let[r,n]=t.split(YU),[s,i]=e.split(YU),a=JU(r,s);if(a!==void 0)return a||XU(n,i)}var bNt=/\/|:/,_Nt=/^(?:[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 ENt(t){return bNt.test(t)&&_Nt.test(t)}var Jxe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function vNt(t){return Jxe.lastIndex=0,Jxe.test(t)}var SNt=-(2**31),INt=2**31-1;function CNt(t){return Number.isInteger(t)&&t<=INt&&t>=SNt}function TNt(t){return Number.isInteger(t)}function Xxe(){return!0}var wNt=/[^\\]\\Z/;function RNt(t){if(wNt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var nbe=_(WA=>{"use strict";Object.defineProperty(WA,"__esModule",{value:!0});WA.formatLimitDefinition=void 0;var NNt=jU(),tu=Vt(),Fp=tu.operators,UO={formatMaximum:{okStr:"<=",ok:Fp.LTE,fail:Fp.GT},formatMinimum:{okStr:">=",ok:Fp.GTE,fail:Fp.LT},formatExclusiveMaximum:{okStr:"<",ok:Fp.LT,fail:Fp.GTE},formatExclusiveMinimum:{okStr:">",ok:Fp.GT,fail:Fp.LTE}},ONt={message:({keyword:t,schemaCode:e})=>(0,tu.str)`should be ${UO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,tu._)`{comparison: ${UO[t].okStr}, limit: ${e}}`};WA.formatLimitDefinition={keyword:Object.keys(UO),type:"string",schemaType:"string",$data:!0,error:ONt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new NNt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,tu._)`${f}[${c.schemaCode}]`);t.fail$data((0,tu.or)((0,tu._)`typeof ${p} != "object"`,(0,tu._)`${p} instanceof RegExp`,(0,tu._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,tu._)`${a.code.formats}${(0,tu.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,tu._)`${f}.compare(${r}, ${n}) ${UO[s].fail} 0`}},dependencies:["format"]};var kNt=t=>(t.addKeyword(WA.formatLimitDefinition),t);WA.default=kNt});var obe=_((GE,abe)=>{"use strict";Object.defineProperty(GE,"__esModule",{value:!0});var $A=$O(),PNt=nbe(),ZU=Vt(),sbe=new ZU.Name("fullFormats"),DNt=new ZU.Name("fastFormats"),eF=(t,e={keywords:!0})=>{if(Array.isArray(e))return ibe(t,e,$A.fullFormats,sbe),t;let[r,n]=e.mode==="fast"?[$A.fastFormats,DNt]:[$A.fullFormats,sbe],s=e.formats||$A.formatNames;return ibe(t,s,r,n),e.keywords&&(0,PNt.default)(t),t};eF.get=(t,e="full")=>{let n=(e==="fast"?$A.fastFormats:$A.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ibe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,ZU._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}abe.exports=GE=eF;Object.defineProperty(GE,"__esModule",{value:!0});GE.default=eF});var rF=_((t$r,cbe)=>{"use strict";var BNt=jU(),LNt=zU(),MNt=obe(),WNt=eO()({proto:!0}),tF=class t{constructor(e){this.ajv=new BNt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:LNt}),MNt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=WNt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};cbe.exports=tF});var sF=_((r$r,nF)=>{"use strict";function $Nt(t,e,r,n){let s="";e.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator')
|
|
`,s+=`const validatorState = ${JSON.stringify(n.getState())}
|
|
`,s+=`const validator = Validator.restoreFromState(validatorState)
|
|
`):s+=`const validator = null
|
|
`;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)`}nF.exports=$Nt;nF.exports.dependencies={Serializer:i$(),Validator:rF()}});var lbe=_((s$r,ube)=>{"use strict";var{dependencies:UNt}=sF(),{Serializer:FNt,Validator:n$r}=UNt,qNt={mode:"standalone"},jNt=FNt.restoreFromState(qNt),QNt=null;ube.exports=function(e,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(QNt,jNt)});var zE=_((i$r,mbe)=>{"use strict";var dbe=require("node:http").STATUS_CODES,HNt=r8(),{kReplyHeaders:rh,kReplyNextErrorHandler:FO,kReplyIsRunningOnErrorHook:GNt,kReplyHasStatusCode:zNt,kRouteContext:pbe}=zs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:KNt,FST_ERR_FAILED_ERROR_SERIALIZATION:VNt}=Di(),{getSchemaSerializer:YNt}=hE(),iF=lbe(),JNt={func:ZNt,toJSON(){return this.func.name.toString()+"()"}};function XNt(t,e,r){t[GNt]=!1;let n=t[pbe];if(t[FO]===!1){fbe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[rh])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=t[FO]||n.errorHandler;t[FO]=Object.getPrototypeOf(s),delete t[rh]["content-type"],delete t[rh]["content-length"];let i=s.func;if(!i){t[FO]=!1,fbe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?HNt(a,t):t.send(a))}function ZNt(t,e,r){if(tOt(t,r),!r[zNt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function fbe(t,e,r){let n=e.raw,s=e.statusCode;e[rh]["content-type"]=e[rh]["content-type"]??"application/json; charset=utf-8";let i;try{let a=YNt(e[pbe],s,e[rh]["content-type"]);i=a===!1?iF({error:dbe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:dbe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=iF(new VNt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=iF(new KNt(typeof i))),e[rh]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function eOt(t=JNt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function tOt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}mbe.exports={buildErrorHandler:eOt,handleError:XNt}});var zO=_((a$r,GO)=>{"use strict";var uF=require("node:stream").finished,rOt=require("node:stream").Readable,{kFourOhFourContext:hbe,kPublicRouteContext:gbe,kReplyErrorHandlerCalled:Sbe,kReplyHijacked:KE,kReplyStartTime:VE,kReplyEndTime:dF,kReplySerializer:Ld,kReplySerializerDefault:jO,kReplyIsError:QO,kReplyHeaders:bn,kReplyTrailers:Ks,kReplyHasStatusCode:fF,kReplyIsRunningOnErrorHook:pF,kReplyNextErrorHandler:nOt,kDisableRequestLogging:Ibe,kSchemaResponse:HO,kReplyCacheSerializeFns:qp,kSchemaController:aF,kOptions:sOt,kRouteContext:ar}=zs(),{onSendHookRunner:Cbe,onResponseHookRunner:iOt,preHandlerHookRunner:aOt,preSerializationHookRunner:oOt}=Rp(),ybe=a8()[Symbol.for("internals")],cOt=mE(),lF=cOt.now,{handleError:Abe}=zE(),{getSchemaSerializer:uOt}=hE(),oF={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:lOt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:dOt,FST_ERR_REP_ALREADY_SENT:Tbe,FST_ERR_REP_SENT_VALUE:fOt,FST_ERR_SEND_INSIDE_ONERR:pOt,FST_ERR_BAD_STATUS_CODE:mOt,FST_ERR_BAD_TRAILER_NAME:hOt,FST_ERR_BAD_TRAILER_VALUE:gOt,FST_ERR_MISSING_SERIALIZATION_FN:yOt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:AOt}=Di(),{FSTDEP010:xOt,FSTDEP013:bOt,FSTDEP019:_Ot,FSTDEP020:EOt}=wd(),wbe=Object.prototype.toString;function ln(t,e,r){this.raw=t,this[Ld]=null,this[Sbe]=!1,this[QO]=!1,this[pF]=!1,this.request=e,this[bn]={},this[Ks]=null,this[fF]=!1,this[VE]=void 0,this.log=r}ln.props=[];Object.defineProperties(ln.prototype,{[ar]:{get(){return this.request[ar]}},context:{get(){return _Ot(),this.request[ar]}},elapsedTime:{get(){return this[VE]===void 0?0:(this[dF]||lF())-this[VE]}},server:{get(){return this.request[ar].server}},sent:{enumerable:!0,get(){return(this[KE]||this.raw.writableEnded)===!0},set(t){if(xOt(),t!==!0)throw new fOt;if(this.sent&&this[KE])throw new Tbe(this.request.url,this.request.method);this[KE]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[gbe]:{get(){return this.request[gbe]}}});ln.prototype.hijack=function(){return this[KE]=!0,this};ln.prototype.send=function(t){if(this[pF]===!0)throw new pOt;if(this.sent)return this.log.warn({err:new Tbe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[QO]===!0)return this[QO]=!1,YE(this,t,nh),this;if(t===void 0)return nh(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||wbe.call(t)==="[object Response]")return nh(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=oF.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return nh(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=oF.PLAIN,nh(this,t),this}if(this[Ld]!==null){if(typeof t!="string")return xbe(this,t),this;t=this[Ld](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=oF.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return xbe(this,t),this}return nh(this,t),this};ln.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};ln.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};ln.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};ln.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};ln.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};ln.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var vOt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);ln.prototype.trailer=function(t,e){if(t=t.toLowerCase(),vOt.has(t))throw new hOt(t);if(typeof e!="function")throw new gOt(t,typeof e);return this[Ks]===null&&(this[Ks]={}),this[Ks][t]=e,this};ln.prototype.hasTrailer=function(t){return this[Ks]?.[t.toLowerCase()]!==void 0};ln.prototype.removeTrailer=function(t){return this[Ks]===null?this:(this[Ks][t.toLowerCase()]=void 0,this)};ln.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new mOt(t||String(t));return this.raw.statusCode=e,this[fF]=!0,this};ln.prototype.status=ln.prototype.code;ln.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[ar][HO]?.[t]?.[e]:r=this[ar][HO]?.[t]:typeof t=="object"&&(r=this[ar][qp]?.get(t)),r};ln.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[ar][qp]?.has(t))return this[ar][qp].get(t);let o=(this[ar].serializerCompiler||this.server[aF].serializerCompiler||this.server[aF].setupSerializer(this.server[sOt])||this.server[aF].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[ar][qp]==null&&(this[ar][qp]=new WeakMap),this[ar][qp].set(t,o),o};ln.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[ar][HO]?.[r]?.[n]:i=this[ar][HO]?.[r],i==null)throw n?new AOt(r,n):new yOt(r)}else this[ar][qp]?.has(e)?i=this[ar][qp].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};ln.prototype.serialize=function(t){return this[Ld]!==null?this[Ld](t):this[ar]&&this[ar][jO]?this[ar][jO](t,this.raw.statusCode):Obe(this[ar],t,this.raw.statusCode)};ln.prototype.serializer=function(t){return this[Ld]=t,this};ln.prototype.type=function(t){return this[bn]["content-type"]=t,this};ln.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[fF]?this.raw.statusCode:302),this.header("location",e).code(t).send()};ln.prototype.callNotFound=function(){return ROt(this),this};ln.prototype.getResponseTime=function(){return EOt(),this.elapsedTime};ln.prototype.then=function(t,e){if(this.sent){t();return}uF(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function xbe(t,e){t[ar].preSerialization!==null?oOt(t[ar].preSerialization,t.request,t,e,bbe):bbe(null,t.request,t,e)}function bbe(t,e,r,n){if(t!=null){YE(r,t);return}try{r[Ld]!==null?n=r[Ld](n):r[ar]&&r[ar][jO]?n=r[ar][jO](n,r.raw.statusCode):n=Obe(r[ar],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){SOt(s,r),YE(r,s);return}nh(r,n)}function SOt(t,e){t.serialization=e[ar].config}function nh(t,e){t[ar].onSend!==null?Cbe(t[ar].onSend,t.request,t,e,IOt):Rbe(t,e)}function IOt(t,e,r,n){t!=null?YE(r,t):Rbe(r,n)}function cF(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function Rbe(t,e){let r=t.raw,n=t.request;if(t[Ks]!==null){let a=Object.keys(t[Ks]),o="";for(let c of a)typeof t[Ks][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=wbe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Ks]===null&&(t[bn]["content-length"]="0"),cF(t,i),qO(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),cF(t,i),qO(void 0,r,t),typeof e.resume=="function"&&(e.on("error",kbe),e.resume());return}if(typeof e.pipe=="function"){Nbe(e,r,t);return}if(typeof e.getReader=="function"){Ebe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new dOt;Ebe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new lOt(typeof e);if(t[Ks]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}cF(t,i),r.write(e),qO(e,r,t)}function _be(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[Ibe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function Ebe(t,e,r){let n=rOt.fromWeb(t);Nbe(n,e,r)}function Nbe(t,e,r){let n=!0,s=!1;if(COt(t,e,r),uF(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,_be(r.log,i,e)),e.destroy()):YE(r,i))}),uF(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,_be(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(kbe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function qO(t,e,r){if(r[Ks]===null){e.end(null,null,null);return}let n=Object.keys(r[Ks]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[Ks][c]!="function")continue;a=!1,i--;let l=r[Ks][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(bOt(),u(null,l))}a&&e.end(null,null,null)}function COt(t,e,r){r[Ks]!==null&&t.on("end",()=>qO(null,e,r))}function YE(t,e,r){t[ar].onError!==null&&!t[nOt]?(t[pF]=!0,Cbe(t[ar].onError,t.request,t,e,()=>Abe(t,e,r))):Abe(t,e,r)}function TOt(t){t[VE]=lF();let e=r=>{t[dF]=lF(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[ar];n&&n.onResponse!==null?iOt(n.onResponse,t.request,t,vbe):vbe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function vbe(t,e,r){if(r.log[Ibe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function wOt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[QO]=!1,this[Sbe]=!1,this[KE]=!1,this[Ld]=null,this.request=s,this[bn]={},this[Ks]=null,this[VE]=void 0,this[dF]=void 0,this.log=i;for(var a,o=0;o<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 ROt(t){if(t[ar][hbe]===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[ar]=t[ar][hbe],t[ar].preHandler!==null?aOt(t[ar].preHandler,t.request,t,ybe.preHandlerCallback):ybe.preHandlerCallback(null,t.request,t)}function Obe(t,e,r,n){let s=uOt(t,r,n);return s?s(e):JSON.stringify(e)}function kbe(){}GO.exports=ln;GO.exports.buildReply=wOt;GO.exports.setupResponseListeners=TOt});var Dbe=_((o$r,Pbe)=>{"use strict";Pbe.exports=NOt;function NOt(t){if(!t)throw new TypeError("argument req is required");var e=kOt(t.headers["x-forwarded-for"]||""),r=OOt(t),n=[r].concat(e);return n}function OOt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function kOt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var Lbe=_((Bbe,JE)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof JE<"u"&&JE!==null&&JE.exports?JE.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,y;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f<p;f++)if(y=h[f],u.kind()===y[0].kind()&&u.match.apply(u,y))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,y;for(y={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 y){if(h=y[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,y,g,b;for(g=l.slice(1,6),b=[],h=0,y=g.length;h<y;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,y;for(y=[],p=h=0;h<=24;p=h+=8)y.push(m>>p&255);return y}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,y,g;if(l.length===16)for(this.parts=[],f=p=0;p<=14;f=p+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,m=0,h=g.length;m<h;m++)if(y=g[m],!(0<=y&&y<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");d&&(this.zoneId=d)}return u.prototype.kind=function(){return"ipv6"},u.prototype.toString=function(){return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/,"::")},u.prototype.toRFC5952String=function(){var l,d,f,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,y;for(h=this.parts,y=[],p=0,m=h.length;p<m;p++)d=h[p],y.push(d.toString(16));return y}.call(this).join(":"),f="",this.zoneId&&(f="%"+this.zoneId),l+f},u.prototype.toFixedLengthString=function(){var l,d,f;return l=function(){var p,m,h,y;for(h=this.parts,y=[],p=0,m=h.length;p<m;p++)d=h[p],y.push(d.toString(16).padStart(4,"0"));return y}.call(this).join(":"),f="",this.zoneId&&(f="%"+this.zoneId),l+f},u.prototype.match=function(l,d){var f;if(d===void 0&&(f=l,l=f[0],d=f[1]),l.kind()!=="ipv6")throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return a(this.parts,l.parts,16,d)},u.prototype.SpecialRanges={unspecified:[new u([0,0,0,0,0,0,0,0]),128],linkLocal:[new u([65152,0,0,0,0,0,0,0]),10],multicast:[new u([65280,0,0,0,0,0,0,0]),8],loopback:[new u([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new u([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new u([0,0,0,0,0,65535,0,0]),96],rfc6145:[new u([0,0,0,0,65535,0,0,0]),96],rfc6052:[new u([100,65435,0,0,0,0,0,0]),96],"6to4":[new u([8194,0,0,0,0,0,0,0]),16],teredo:[new u([8193,0,0,0,0,0,0,0]),32],reserved:[[new u([8193,3512,0,0,0,0,0,0]),32]]},u.prototype.range=function(){return e.subnetMatch(this,this.SpecialRanges)},u.prototype.isIPv4MappedAddress=function(){return this.range()==="ipv4Mapped"},u.prototype.toIPv4Address=function(){var l,d,f;if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");return f=this.parts.slice(-2),l=f[0],d=f[1],new e.IPv4([l>>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,m,h,y;for(y={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in y){if(h=y[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,f,p,m,h,y;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(y=(u.match(i.zoneIndex)||[])[0],y&&(y=y.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,x,A;for(x=u.split(":"),A=[],g=0,b=x.length;g<b;g++)p=x[g],A.push(parseInt(p,16));return A}(),{parts:l,zoneId:y}},e.IPv6.parser=function(u){var l,d,f,p,m,h,y;if(i.native.test(u))return t(u,8);if((p=u.match(i.transitional))&&(y=p[6]||"",l=t(p[1].slice(0,-1)+y,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(y){throw d=y,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(y){throw d=y,new Error("ipaddr: the address does not have IPv4 CIDR format")}},e.IPv6.parseCIDR=function(u){var l,d,f;if((d=u.match(/^(.+)\/(\d+)$/))&&(l=parseInt(d[2]),l>=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(Bbe)});var Fbe=_((c$r,YO)=>{"use strict";YO.exports=$Ot;YO.exports.all=$be;YO.exports.compile=Ube;var POt=Dbe(),Wbe=Lbe(),DOt=/^[0-9]+$/,KO=Wbe.isValid,VO=Wbe.parse,Mbe={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function $be(t,e){var r=POt(t);if(!e)return r;typeof e!="function"&&(e=Ube(e));for(var n=0;n<r.length-1;n++)e(r[n],n)||(r.length=n+1);return r}function Ube(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(Mbe,t)&&(t=Mbe[t],e.splice.apply(e,[r,1].concat(t)),r+=t.length-1);return LOt(BOt(e))}function BOt(t){for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=MOt(t[r]);return e}function LOt(t){var e=t.length;return e===0?UOt:e===1?qOt(t[0]):FOt(t)}function MOt(t){var e=t.lastIndexOf("/"),r=e!==-1?t.substring(0,e):t;if(!KO(r))throw new TypeError("invalid IP address: "+r);var n=VO(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:DOt.test(i)?i=parseInt(i,10):n.kind()==="ipv4"&&KO(i)?i=WOt(i):i=null,i<=0||i>s)throw new TypeError("invalid range on address: "+t);return[n,i]}function WOt(t){var e=VO(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function $Ot(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=$be(t,e),n=r[r.length-1];return n}function UOt(){return!1}function FOt(t){return function(r){if(!KO(r))return!1;for(var n=VO(r),s,i=n.kind(),a=0;a<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 qOt(t){var e=t[0],r=e.kind(),n=r==="ipv4",s=t[1];return function(a){if(!KO(a))return!1;var o=VO(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 XE=_((u$r,qbe)=>{"use strict";var jOt="2.0.0",QOt=Number.MAX_SAFE_INTEGER||9007199254740991,HOt=16,GOt=250,zOt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];qbe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:HOt,MAX_SAFE_BUILD_LENGTH:GOt,MAX_SAFE_INTEGER:QOt,RELEASE_TYPES:zOt,SEMVER_SPEC_VERSION:jOt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var ZE=_((l$r,jbe)=>{"use strict";var KOt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};jbe.exports=KOt});var UA=_((al,Qbe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:mF,MAX_SAFE_BUILD_LENGTH:VOt,MAX_LENGTH:YOt}=XE(),JOt=ZE();al=Qbe.exports={};var XOt=al.re=[],ZOt=al.safeRe=[],ze=al.src=[],ekt=al.safeSrc=[],Ke=al.t={},tkt=0,hF="[a-zA-Z0-9-]",rkt=[["\\s",1],["\\d",YOt],[hF,VOt]],nkt=t=>{for(let[e,r]of rkt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Mt=(t,e,r)=>{let n=nkt(e),s=tkt++;JOt(t,s,e),Ke[t]=s,ze[s]=e,ekt[s]=n,XOt[s]=new RegExp(e,r?"g":void 0),ZOt[s]=new RegExp(n,r?"g":void 0)};Mt("NUMERICIDENTIFIER","0|[1-9]\\d*");Mt("NUMERICIDENTIFIERLOOSE","\\d+");Mt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${hF}*`);Mt("MAINVERSION",`(${ze[Ke.NUMERICIDENTIFIER]})\\.(${ze[Ke.NUMERICIDENTIFIER]})\\.(${ze[Ke.NUMERICIDENTIFIER]})`);Mt("MAINVERSIONLOOSE",`(${ze[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${ze[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${ze[Ke.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASEIDENTIFIER",`(?:${ze[Ke.NONNUMERICIDENTIFIER]}|${ze[Ke.NUMERICIDENTIFIER]})`);Mt("PRERELEASEIDENTIFIERLOOSE",`(?:${ze[Ke.NONNUMERICIDENTIFIER]}|${ze[Ke.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASE",`(?:-(${ze[Ke.PRERELEASEIDENTIFIER]}(?:\\.${ze[Ke.PRERELEASEIDENTIFIER]})*))`);Mt("PRERELEASELOOSE",`(?:-?(${ze[Ke.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ze[Ke.PRERELEASEIDENTIFIERLOOSE]})*))`);Mt("BUILDIDENTIFIER",`${hF}+`);Mt("BUILD",`(?:\\+(${ze[Ke.BUILDIDENTIFIER]}(?:\\.${ze[Ke.BUILDIDENTIFIER]})*))`);Mt("FULLPLAIN",`v?${ze[Ke.MAINVERSION]}${ze[Ke.PRERELEASE]}?${ze[Ke.BUILD]}?`);Mt("FULL",`^${ze[Ke.FULLPLAIN]}$`);Mt("LOOSEPLAIN",`[v=\\s]*${ze[Ke.MAINVERSIONLOOSE]}${ze[Ke.PRERELEASELOOSE]}?${ze[Ke.BUILD]}?`);Mt("LOOSE",`^${ze[Ke.LOOSEPLAIN]}$`);Mt("GTLT","((?:<|>)?=?)");Mt("XRANGEIDENTIFIERLOOSE",`${ze[Ke.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Mt("XRANGEIDENTIFIER",`${ze[Ke.NUMERICIDENTIFIER]}|x|X|\\*`);Mt("XRANGEPLAIN",`[v=\\s]*(${ze[Ke.XRANGEIDENTIFIER]})(?:\\.(${ze[Ke.XRANGEIDENTIFIER]})(?:\\.(${ze[Ke.XRANGEIDENTIFIER]})(?:${ze[Ke.PRERELEASE]})?${ze[Ke.BUILD]}?)?)?`);Mt("XRANGEPLAINLOOSE",`[v=\\s]*(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ze[Ke.XRANGEIDENTIFIERLOOSE]})(?:${ze[Ke.PRERELEASELOOSE]})?${ze[Ke.BUILD]}?)?)?`);Mt("XRANGE",`^${ze[Ke.GTLT]}\\s*${ze[Ke.XRANGEPLAIN]}$`);Mt("XRANGELOOSE",`^${ze[Ke.GTLT]}\\s*${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${mF}})(?:\\.(\\d{1,${mF}}))?(?:\\.(\\d{1,${mF}}))?`);Mt("COERCE",`${ze[Ke.COERCEPLAIN]}(?:$|[^\\d])`);Mt("COERCEFULL",ze[Ke.COERCEPLAIN]+`(?:${ze[Ke.PRERELEASE]})?(?:${ze[Ke.BUILD]})?(?:$|[^\\d])`);Mt("COERCERTL",ze[Ke.COERCE],!0);Mt("COERCERTLFULL",ze[Ke.COERCEFULL],!0);Mt("LONETILDE","(?:~>?)");Mt("TILDETRIM",`(\\s*)${ze[Ke.LONETILDE]}\\s+`,!0);al.tildeTrimReplace="$1~";Mt("TILDE",`^${ze[Ke.LONETILDE]}${ze[Ke.XRANGEPLAIN]}$`);Mt("TILDELOOSE",`^${ze[Ke.LONETILDE]}${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("LONECARET","(?:\\^)");Mt("CARETTRIM",`(\\s*)${ze[Ke.LONECARET]}\\s+`,!0);al.caretTrimReplace="$1^";Mt("CARET",`^${ze[Ke.LONECARET]}${ze[Ke.XRANGEPLAIN]}$`);Mt("CARETLOOSE",`^${ze[Ke.LONECARET]}${ze[Ke.XRANGEPLAINLOOSE]}$`);Mt("COMPARATORLOOSE",`^${ze[Ke.GTLT]}\\s*(${ze[Ke.LOOSEPLAIN]})$|^$`);Mt("COMPARATOR",`^${ze[Ke.GTLT]}\\s*(${ze[Ke.FULLPLAIN]})$|^$`);Mt("COMPARATORTRIM",`(\\s*)${ze[Ke.GTLT]}\\s*(${ze[Ke.LOOSEPLAIN]}|${ze[Ke.XRANGEPLAIN]})`,!0);al.comparatorTrimReplace="$1$2$3";Mt("HYPHENRANGE",`^\\s*(${ze[Ke.XRANGEPLAIN]})\\s+-\\s+(${ze[Ke.XRANGEPLAIN]})\\s*$`);Mt("HYPHENRANGELOOSE",`^\\s*(${ze[Ke.XRANGEPLAINLOOSE]})\\s+-\\s+(${ze[Ke.XRANGEPLAINLOOSE]})\\s*$`);Mt("STAR","(<|>)?=?\\s*\\*");Mt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Mt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var JO=_((d$r,Hbe)=>{"use strict";var skt=Object.freeze({loose:!0}),ikt=Object.freeze({}),akt=t=>t?typeof t!="object"?skt:t:ikt;Hbe.exports=akt});var gF=_((f$r,Kbe)=>{"use strict";var Gbe=/^[0-9]+$/,zbe=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=Gbe.test(t),n=Gbe.test(e);return r&&n&&(t=+t,e=+e),t===e?0:r&&!n?-1:n&&!r?1:t<e?-1:1},okt=(t,e)=>zbe(e,t);Kbe.exports={compareIdentifiers:zbe,rcompareIdentifiers:okt}});var $i=_((p$r,Ybe)=>{"use strict";var XO=ZE(),{MAX_LENGTH:Vbe,MAX_SAFE_INTEGER:ZO}=XE(),{safeRe:ek,t:tk}=UA(),ckt=JO(),{compareIdentifiers:yF}=gF(),AF=class t{constructor(e,r){if(r=ckt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Vbe)throw new TypeError(`version is longer than ${Vbe} characters`);XO("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?ek[tk.LOOSE]:ek[tk.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ZO||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ZO||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ZO||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&i<ZO)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(XO("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(XO("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return yF(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(XO("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return yF(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?ek[tk.PRERELEASELOOSE]:ek[tk.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),yF(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Ybe.exports=AF});var sh=_((m$r,Xbe)=>{"use strict";var Jbe=$i(),ukt=(t,e,r=!1)=>{if(t instanceof Jbe)return t;try{return new Jbe(t,e)}catch(n){if(!r)return null;throw n}};Xbe.exports=ukt});var e1e=_((h$r,Zbe)=>{"use strict";var lkt=sh(),dkt=(t,e)=>{let r=lkt(t,e);return r?r.version:null};Zbe.exports=dkt});var r1e=_((g$r,t1e)=>{"use strict";var fkt=sh(),pkt=(t,e)=>{let r=fkt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};t1e.exports=pkt});var i1e=_((y$r,s1e)=>{"use strict";var n1e=$i(),mkt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new n1e(t instanceof n1e?t.version:t,r).inc(e,n,s).version}catch{return null}};s1e.exports=mkt});var c1e=_((A$r,o1e)=>{"use strict";var a1e=sh(),hkt=(t,e)=>{let r=a1e(t,null,!0),n=a1e(e,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};o1e.exports=hkt});var l1e=_((x$r,u1e)=>{"use strict";var gkt=$i(),ykt=(t,e)=>new gkt(t,e).major;u1e.exports=ykt});var f1e=_((b$r,d1e)=>{"use strict";var Akt=$i(),xkt=(t,e)=>new Akt(t,e).minor;d1e.exports=xkt});var m1e=_((_$r,p1e)=>{"use strict";var bkt=$i(),_kt=(t,e)=>new bkt(t,e).patch;p1e.exports=_kt});var g1e=_((E$r,h1e)=>{"use strict";var Ekt=sh(),vkt=(t,e)=>{let r=Ekt(t,e);return r&&r.prerelease.length?r.prerelease:null};h1e.exports=vkt});var oc=_((v$r,A1e)=>{"use strict";var y1e=$i(),Skt=(t,e,r)=>new y1e(t,r).compare(new y1e(e,r));A1e.exports=Skt});var b1e=_((S$r,x1e)=>{"use strict";var Ikt=oc(),Ckt=(t,e,r)=>Ikt(e,t,r);x1e.exports=Ckt});var E1e=_((I$r,_1e)=>{"use strict";var Tkt=oc(),wkt=(t,e)=>Tkt(t,e,!0);_1e.exports=wkt});var rk=_((C$r,S1e)=>{"use strict";var v1e=$i(),Rkt=(t,e,r)=>{let n=new v1e(t,r),s=new v1e(e,r);return n.compare(s)||n.compareBuild(s)};S1e.exports=Rkt});var C1e=_((T$r,I1e)=>{"use strict";var Nkt=rk(),Okt=(t,e)=>t.sort((r,n)=>Nkt(r,n,e));I1e.exports=Okt});var w1e=_((w$r,T1e)=>{"use strict";var kkt=rk(),Pkt=(t,e)=>t.sort((r,n)=>kkt(n,r,e));T1e.exports=Pkt});var ev=_((R$r,R1e)=>{"use strict";var Dkt=oc(),Bkt=(t,e,r)=>Dkt(t,e,r)>0;R1e.exports=Bkt});var nk=_((N$r,N1e)=>{"use strict";var Lkt=oc(),Mkt=(t,e,r)=>Lkt(t,e,r)<0;N1e.exports=Mkt});var xF=_((O$r,O1e)=>{"use strict";var Wkt=oc(),$kt=(t,e,r)=>Wkt(t,e,r)===0;O1e.exports=$kt});var bF=_((k$r,k1e)=>{"use strict";var Ukt=oc(),Fkt=(t,e,r)=>Ukt(t,e,r)!==0;k1e.exports=Fkt});var sk=_((P$r,P1e)=>{"use strict";var qkt=oc(),jkt=(t,e,r)=>qkt(t,e,r)>=0;P1e.exports=jkt});var ik=_((D$r,D1e)=>{"use strict";var Qkt=oc(),Hkt=(t,e,r)=>Qkt(t,e,r)<=0;D1e.exports=Hkt});var _F=_((B$r,B1e)=>{"use strict";var Gkt=xF(),zkt=bF(),Kkt=ev(),Vkt=sk(),Ykt=nk(),Jkt=ik(),Xkt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Gkt(t,r,n);case"!=":return zkt(t,r,n);case">":return Kkt(t,r,n);case">=":return Vkt(t,r,n);case"<":return Ykt(t,r,n);case"<=":return Jkt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};B1e.exports=Xkt});var M1e=_((L$r,L1e)=>{"use strict";var Zkt=$i(),ePt=sh(),{safeRe:ak,t:ok}=UA(),tPt=(t,e)=>{if(t instanceof Zkt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?ak[ok.COERCEFULL]:ak[ok.COERCE]);else{let c=e.includePrerelease?ak[ok.COERCERTLFULL]:ak[ok.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return ePt(`${n}.${s}.${i}${a}${o}`,e)};L1e.exports=tPt});var $1e=_((M$r,W1e)=>{"use strict";var EF=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};W1e.exports=EF});var cc=_((W$r,j1e)=>{"use strict";var rPt=/\s+/g,vF=class t{constructor(e,r){if(r=sPt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof SF)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(rPt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!F1e(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&dPt(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;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&&uPt)|(this.options.loose&&lPt))+":"+e,s=U1e.get(n);if(s)return s;let i=this.options.loose,a=i?da[Ui.HYPHENRANGELOOSE]:da[Ui.HYPHENRANGE];e=e.replace(a,_Pt(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(da[Ui.COMPARATORTRIM],aPt),On("comparator trim",e),e=e.replace(da[Ui.TILDETRIM],oPt),On("tilde trim",e),e=e.replace(da[Ui.CARETTRIM],cPt),On("caret trim",e);let o=e.split(" ").map(d=>fPt(d,this.options)).join(" ").split(/\s+/).map(d=>bPt(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(da[Ui.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new SF(d,this.options));for(let d of u){if(F1e(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return U1e.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>q1e(n,r)&&e.set.some(s=>q1e(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new iPt(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(EPt(this.set[r],e,this.options))return!0;return!1}};j1e.exports=vF;var nPt=$1e(),U1e=new nPt,sPt=JO(),SF=tv(),On=ZE(),iPt=$i(),{safeRe:da,t:Ui,comparatorTrimReplace:aPt,tildeTrimReplace:oPt,caretTrimReplace:cPt}=UA(),{FLAG_INCLUDE_PRERELEASE:uPt,FLAG_LOOSE:lPt}=XE(),F1e=t=>t.value==="<0.0.0-0",dPt=t=>t.value==="",q1e=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},fPt=(t,e)=>(t=t.replace(da[Ui.BUILD],""),On("comp",t,e),t=hPt(t,e),On("caret",t),t=pPt(t,e),On("tildes",t),t=yPt(t,e),On("xrange",t),t=xPt(t,e),On("stars",t),t),fa=t=>!t||t.toLowerCase()==="x"||t==="*",pPt=(t,e)=>t.trim().split(/\s+/).map(r=>mPt(r,e)).join(" "),mPt=(t,e)=>{let r=e.loose?da[Ui.TILDELOOSE]:da[Ui.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return fa(s)?c="":fa(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:fa(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},hPt=(t,e)=>t.trim().split(/\s+/).map(r=>gPt(r,e)).join(" "),gPt=(t,e)=>{On("caret",t,e);let r=e.loose?da[Ui.CARETLOOSE]:da[Ui.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return fa(i)?u="":fa(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:fa(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(On("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),On("caret return",u),u})},yPt=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>APt(r,e)).join(" ")),APt=(t,e)=>{t=t.trim();let r=e.loose?da[Ui.XRANGELOOSE]:da[Ui.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=fa(i),l=u||fa(a),d=l||fa(o),f=d;return s==="="&&f&&(s=""),c=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),On("xRange return",n),n})},xPt=(t,e)=>(On("replaceStars",t,e),t.trim().replace(da[Ui.STAR],"")),bPt=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(da[e.includePrerelease?Ui.GTE0PRE:Ui.GTE0],"")),_Pt=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(fa(n)?r="":fa(s)?r=`>=${n}.0.0${t?"-0":""}`:fa(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,fa(u)?c="":fa(l)?c=`<${+u+1}.0.0-0`:fa(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),EPt=(t,e,r)=>{for(let n=0;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!==SF.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 tv=_(($$r,V1e)=>{"use strict";var rv=Symbol("SemVer ANY"),TF=class t{static get ANY(){return rv}constructor(e,r){if(r=Q1e(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),CF("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===rv?this.value="":this.value=this.operator+this.semver.version,CF("comp",this)}parse(e){let r=this.options.loose?H1e[G1e.COMPARATORLOOSE]:H1e[G1e.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new z1e(n[2],this.options.loose):this.semver=rv}toString(){return this.value}test(e){if(CF("Comparator.test",e,this.options.loose),this.semver===rv||e===rv)return!0;if(typeof e=="string")try{e=new z1e(e,this.options)}catch{return!1}return IF(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new K1e(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new K1e(this.value,r).test(e.semver):(r=Q1e(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||IF(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||IF(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};V1e.exports=TF;var Q1e=JO(),{safeRe:H1e,t:G1e}=UA(),IF=_F(),CF=ZE(),z1e=$i(),K1e=cc()});var nv=_((U$r,Y1e)=>{"use strict";var vPt=cc(),SPt=(t,e,r)=>{try{e=new vPt(e,r)}catch{return!1}return e.test(t)};Y1e.exports=SPt});var X1e=_((F$r,J1e)=>{"use strict";var IPt=cc(),CPt=(t,e)=>new IPt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));J1e.exports=CPt});var e_e=_((q$r,Z1e)=>{"use strict";var TPt=$i(),wPt=cc(),RPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new wPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new TPt(n,r))}),n};Z1e.exports=RPt});var r_e=_((j$r,t_e)=>{"use strict";var NPt=$i(),OPt=cc(),kPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new OPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new NPt(n,r))}),n};t_e.exports=kPt});var i_e=_((Q$r,s_e)=>{"use strict";var wF=$i(),PPt=cc(),n_e=ev(),DPt=(t,e)=>{t=new PPt(t,e);let r=new wF("0.0.0");if(t.test(r)||(r=new wF("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n<t.set.length;++n){let s=t.set[n],i=null;s.forEach(a=>{let o=new wF(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||n_e(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||n_e(r,i))&&(r=i)}return r&&t.test(r)?r:null};s_e.exports=DPt});var o_e=_((H$r,a_e)=>{"use strict";var BPt=cc(),LPt=(t,e)=>{try{return new BPt(t,e).range||"*"}catch{return null}};a_e.exports=LPt});var ck=_((G$r,d_e)=>{"use strict";var MPt=$i(),l_e=tv(),{ANY:WPt}=l_e,$Pt=cc(),UPt=nv(),c_e=ev(),u_e=nk(),FPt=ik(),qPt=sk(),jPt=(t,e,r,n)=>{t=new MPt(t,n),e=new $Pt(e,n);let s,i,a,o,c;switch(r){case">":s=c_e,i=FPt,a=u_e,o=">",c=">=";break;case"<":s=u_e,i=qPt,a=c_e,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(UPt(t,e,n))return!1;for(let u=0;u<e.set.length;++u){let l=e.set[u],d=null,f=null;if(l.forEach(p=>{p.semver===WPt&&(p=new l_e(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};d_e.exports=jPt});var p_e=_((z$r,f_e)=>{"use strict";var QPt=ck(),HPt=(t,e,r)=>QPt(t,e,">",r);f_e.exports=HPt});var h_e=_((K$r,m_e)=>{"use strict";var GPt=ck(),zPt=(t,e,r)=>GPt(t,e,"<",r);m_e.exports=zPt});var A_e=_((V$r,y_e)=>{"use strict";var g_e=cc(),KPt=(t,e,r)=>(t=new g_e(t,r),e=new g_e(e,r),t.intersects(e,r));y_e.exports=KPt});var b_e=_((Y$r,x_e)=>{"use strict";var VPt=nv(),YPt=oc();x_e.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>YPt(l,d,r));for(let l of a)VPt(l,e,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return c.length<u.length?c:e}});var C_e=_((J$r,I_e)=>{"use strict";var __e=cc(),NF=tv(),{ANY:RF}=NF,sv=nv(),OF=oc(),JPt=(t,e,r={})=>{if(t===e)return!0;t=new __e(t,r),e=new __e(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=ZPt(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},XPt=[new NF(">=0.0.0-0")],E_e=[new NF(">=0.0.0")],ZPt=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===RF){if(e.length===1&&e[0].semver===RF)return!0;r.includePrerelease?t=XPt:t=E_e}if(e.length===1&&e[0].semver===RF){if(r.includePrerelease)return!0;e=E_e}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=v_e(s,p,r):p.operator==="<"||p.operator==="<="?i=S_e(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=OF(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!sv(p,String(s),r)||i&&!sv(p,String(i),r))return null;for(let m of e)if(!sv(p,String(m),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(o=v_e(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!sv(s.semver,String(p),r))return!1}if(i){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=S_e(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!sv(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},v_e=(t,e,r)=>{if(!t)return e;let n=OF(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},S_e=(t,e,r)=>{if(!t)return e;let n=OF(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};I_e.exports=JPt});var PF=_((X$r,R_e)=>{"use strict";var kF=UA(),T_e=XE(),e3t=$i(),w_e=gF(),t3t=sh(),r3t=e1e(),n3t=r1e(),s3t=i1e(),i3t=c1e(),a3t=l1e(),o3t=f1e(),c3t=m1e(),u3t=g1e(),l3t=oc(),d3t=b1e(),f3t=E1e(),p3t=rk(),m3t=C1e(),h3t=w1e(),g3t=ev(),y3t=nk(),A3t=xF(),x3t=bF(),b3t=sk(),_3t=ik(),E3t=_F(),v3t=M1e(),S3t=tv(),I3t=cc(),C3t=nv(),T3t=X1e(),w3t=e_e(),R3t=r_e(),N3t=i_e(),O3t=o_e(),k3t=ck(),P3t=p_e(),D3t=h_e(),B3t=A_e(),L3t=b_e(),M3t=C_e();R_e.exports={parse:t3t,valid:r3t,clean:n3t,inc:s3t,diff:i3t,major:a3t,minor:o3t,patch:c3t,prerelease:u3t,compare:l3t,rcompare:d3t,compareLoose:f3t,compareBuild:p3t,sort:m3t,rsort:h3t,gt:g3t,lt:y3t,eq:A3t,neq:x3t,gte:b3t,lte:_3t,cmp:E3t,coerce:v3t,Comparator:S3t,Range:I3t,satisfies:C3t,toComparators:T3t,maxSatisfying:w3t,minSatisfying:R3t,minVersion:N3t,validRange:O3t,outside:k3t,gtr:P3t,ltr:D3t,intersects:B3t,simplifyRange:L3t,subset:M3t,SemVer:e3t,re:kF.re,src:kF.src,tokens:kF.t,SEMVER_SPEC_VERSION:T_e.SEMVER_SPEC_VERSION,RELEASE_TYPES:T_e.RELEASE_TYPES,compareIdentifiers:w_e.compareIdentifiers,rcompareIdentifiers:w_e.rcompareIdentifiers}});var lk=_((Z$r,MF)=>{"use strict";var uk=Fbe(),W3t=PF(),{FSTDEP005:$3t,FSTDEP012:U3t,FSTDEP015:F3t,FSTDEP016:q3t,FSTDEP017:j3t,FSTDEP018:Q3t}=wd(),{kHasBeenDecorated:H3t,kSchemaBody:G3t,kSchemaHeaders:z3t,kSchemaParams:K3t,kSchemaQuerystring:N_e,kSchemaController:DF,kOptions:V3t,kRequestCacheValidateFns:jp,kRouteContext:ds,kPublicRouteContext:O_e,kRequestOriginalUrl:BF}=zs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:Y3t}=Di(),k_e={body:G3t,headers:z3t,params:K3t,querystring:N_e,query:N_e};function LF(t,e,r,n,s,i){this.id=t,this[ds]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}LF.props=[];function J3t(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return r<t};if(typeof t=="string"){let e=t.split(",").map(r=>r.trim());return uk.compile(e)}return uk.compile(t)}function X3t(t,e){return e?Z3t(t,e):D_e(t)}function D_e(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[ds]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;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 P_e(t){let e=t.lastIndexOf(",");return e===-1?t.trim():t.slice(e+1).trim()}function Z3t(t,e){let r=D_e(t),n=J3t(e);return r[H3t]=!0,Object.defineProperties(r.prototype,{ip:{get(){return uk(this.raw,n)}},ips:{get(){return uk.all(this.raw,n)}},hostname:{get(){return this.ip!==void 0&&this.headers["x-forwarded-host"]?P_e(this.headers["x-forwarded-host"]):this.headers.host||this.headers[":authority"]}},protocol:{get(){if(this.headers["x-forwarded-proto"])return P_e(this.headers["x-forwarded-proto"]);if(this.socket)return this.socket.encrypted?"https":"http"}}}),r}Object.defineProperties(LF.prototype,{server:{get(){return this[ds].server}},url:{get(){return this.raw.url}},originalUrl:{get(){return this[BF]||(this[BF]=this.raw.originalUrl||this.raw.url),this[BF]}},method:{get(){return this.raw.method}},context:{get(){return U3t(),this[ds]}},routerPath:{get(){return j3t(),this[ds].config?.url}},routeOptions:{get(){let t=this[ds],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 Q3t(),this[ds].config?.method}},routeConfig:{get(){return q3t(),this[ds][O_e]?.config}},routeSchema:{get(){return F3t(),this[ds][O_e].schema}},is404:{get(){return this[ds].config?.url===void 0}},connection:{get(){return W3t.gte(process.versions.node,"13.0.0")&&$3t(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=k_e[t];return this[ds][e]}else if(typeof t=="object")return this[ds][jp]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[ds][jp]?.has(t))return this[ds][jp].get(t);let i=(this[ds].validatorCompiler||this.server[DF].validatorCompiler||this.server[DF].setupValidator(this.server[V3t])||this.server[DF].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[ds][jp]==null&&(this[ds][jp]=new WeakMap),this[ds][jp].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&k_e[r],s;if(n&&(s=this[ds][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new Y3t(r);return s==null&&(this[ds][jp]?.has(e)?s=this[ds][jp].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});MF.exports=LF;MF.exports.buildRequest=X3t});var dk=_((eUr,B_e)=>{"use strict";var{kFourOhFourContext:eDt,kReplySerializerDefault:tDt,kSchemaErrorFormatter:rDt,kErrorHandler:nDt,kChildLoggerFactory:sDt,kOptions:iDt,kReply:aDt,kRequest:oDt,kBodyLimit:cDt,kLogLevel:uDt,kContentTypeParser:lDt,kRouteByFastify:dDt,kRequestCacheValidateFns:fDt,kReplyCacheSerializeFns:pDt,kPublicRouteContext:mDt}=zs();function hDt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:y,isFastify:g}){this.schema=t,this.handler=e,this.Reply=y[aDt],this.Request=y[oDt],this.contentTypeParser=y[lDt],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||y[nDt],this.requestIdLogLabel=n||y[iDt].requestIdLogLabel,this.childLoggerFactory=s||y[sDt],this._middie=null,this._parserOptions={limit:a||y[cDt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||y[uDt],this.logSerializers=c,this[eDt]=null,this.attachValidation=u,this[tDt]=f,this.schemaErrorFormatter=p||y[rDt]||yDt,this[dDt]=g,this[fDt]=null,this[pDt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[mDt]=gDt(this),this.server=y}function gDt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function yDt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}B_e.exports=hDt});var WF=_((tUr,L_e)=>{"use strict";L_e.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var jF=_((rUr,U_e)=>{"use strict";var{kReply:$F,kRequest:UF,kState:ADt,kHasBeenDecorated:xDt}=zs(),{FST_ERR_DEC_ALREADY_PRESENT:M_e,FST_ERR_DEC_MISSING_DEPENDENCY:bDt,FST_ERR_DEC_AFTER_START:_Dt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:EDt}=Di(),{FSTDEP006:vDt}=wd();function SDt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new M_e(e);FF(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function W_e(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||pk(t,e))throw new M_e(e);t[xDt]=!0,FF(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function $_e(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&vDt(t)}function IDt(t,e,r){return qF(this,t),SDt(this,t,e,r),this}function fk(t,e){return e?e in t||t.prototype&&e in t.prototype||pk(t,e):t in this}function pk(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function CDt(t){return t&&pk(this[UF],t)?!0:fk(this[UF].prototype,t)}function TDt(t){return t&&pk(this[$F],t)?!0:fk(this[$F].prototype,t)}function FF(t,e,r){if(r!=null){if(!Array.isArray(r))throw new EDt(e);for(var n=0;n!==r.length;++n)if(!fk(t,r[n]))throw new bDt(r[n])}}function wDt(t,e,r){return qF(this,t),$_e(t,e),W_e(this[$F],t,e,r),this}function RDt(t,e,r){return qF(this,t),$_e(t,e),W_e(this[UF],t,e,r),this}function qF(t,e){if(t[ADt].started)throw new _Dt(e)}U_e.exports={add:IDt,exist:fk,existRequest:CDt,existReply:TDt,dependencies:FF,decorateReply:wDt,decorateRequest:RDt}});var q_e=_(ol=>{"use strict";var QF=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},HF=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},iv=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},mk=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function F_e(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var GF=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=F_e(this.collectionStart),this.records=n||new mk,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=F_e(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},hk=class extends iv{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new GF(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},gk=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}};ol.Fifo=gk;ol.FifoMap=QF;ol.FifoObject=gk;ol.HitStatisticsRecord=mk;ol.Lru=iv;ol.LruHitStatistics=hk;ol.LruMap=HF;ol.LruObject=iv;ol.LruObjectHitStatistics=hk});var G_e=_((sUr,av)=>{"use strict";var xk=function(){};xk.prototype=Object.create(null);var yk=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,Ak=/\\([\v\u0020-\u00ff])/gu,j_e=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,ih={type:"",parameters:new xk};Object.freeze(ih.parameters);Object.freeze(ih);function Q_e(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(j_e.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new xk};if(e===-1)return n;let s,i,a;for(yk.lastIndex=e;i=yk.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),Ak.test(a)&&(a=a.replace(Ak,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function H_e(t){if(typeof t!="string")return ih;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(j_e.test(r)===!1)return ih;let n={type:r.toLowerCase(),parameters:new xk};if(e===-1)return n;let s,i,a;for(yk.lastIndex=e;i=yk.exec(t);){if(i.index!==e)return ih;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),Ak.test(a)&&(a=a.replace(Ak,"$1"))),n.parameters[s]=a}return e!==t.length?ih:n}av.exports.default={parse:Q_e,safeParse:H_e};av.exports.parse=Q_e;av.exports.safeParse=H_e;av.exports.defaultContentType=ih});var J_e=_((iUr,FA)=>{"use strict";var NDt=typeof Buffer<"u",z_e=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,K_e=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function V_e(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),NDt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(z_e.test(t)===!1&&K_e.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(z_e.test(t)===!1)return n}else if(K_e.test(t)===!1)return n;return Y_e(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function Y_e(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return t}function zF(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return V_e(t,e,r)}finally{Error.stackTraceLimit=n}}function ODt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return V_e(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}FA.exports=zF;FA.exports.default=zF;FA.exports.parse=zF;FA.exports.safeParse=ODt;FA.exports.scan=Y_e});var XF=_((aUr,cv)=>{"use strict";var{AsyncResource:kDt}=require("node:async_hooks"),{Fifo:Z_e}=q_e(),{safeParse:eEe,defaultContentType:PDt}=G_e(),DDt=J_e(),{kDefaultJsonParse:ov,kContentTypeParser:qA,kBodyLimit:BDt,kRequestPayloadStream:tEe,kState:VF,kTestInternals:LDt,kReplyIsError:rEe,kRouteContext:MDt}=zs(),{FST_ERR_CTP_INVALID_TYPE:nEe,FST_ERR_CTP_EMPTY_TYPE:WDt,FST_ERR_CTP_ALREADY_PRESENT:$Dt,FST_ERR_CTP_INVALID_HANDLER:UDt,FST_ERR_CTP_INVALID_PARSE_TYPE:FDt,FST_ERR_CTP_BODY_TOO_LARGE:X_e,FST_ERR_CTP_INVALID_MEDIA_TYPE:qDt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:jDt,FST_ERR_CTP_EMPTY_JSON_BODY:QDt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:YF}=Di();function Md(t,e,r){this[ov]=iEe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new KF(!0,!1,t,this[ov])),this.customParsers.set("text/plain",new KF(!0,!1,t,JF)),this.parserList=[new bk("application/json"),new bk("text/plain")],this.parserRegExpList=[],this.cache=new Z_e(100)}Md.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new nEe;if(n&&t.length===0)throw new WDt;if(typeof r!="function")throw new UDt;if(this.existingParser(t))throw new $Dt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new FDt(e.parseAs);let s=new KF(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new bk(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};Md.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};Md.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[ov]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==JF:this.hasParser(t)};Md.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=eEe(t);if(r===PDt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(YDt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(JDt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};Md.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new Z_e(100)};Md.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new nEe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};Md.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new qDt(t||void 0));return}let i=new kDt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)sEe(r,n,n[MDt]._parserOptions,s,a);else{let o=s.fn(r,r[tEe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[rEe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function sEe(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new X_e);return}let c=0,u=i===!0?"":[],l=t[tEe]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new X_e);return}i===!0?u+=p:u.push(p)}function f(p){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),p!==void 0){typeof p.statusCode=="number"&&p.statusCode>=400||(p.statusCode=400),e[rEe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new jDt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function iEe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new QDt,void 0);let a;try{a=DDt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function JF(t,e,r){r(null,e)}function KF(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function HDt(t){let e=new Md;return e[ov]=t[ov],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function GDt(t,e,r){if(this[VF].started)throw new YF("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[BDt]),Array.isArray(t)?t.forEach(n=>this[qA].add(n,e,r)):this[qA].add(t,e,r),this}function zDt(t){return this[qA].hasParser(t)}function KDt(t){if(this[VF].started)throw new YF("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[qA].remove(e);else this[qA].remove(t)}function VDt(){if(this[VF].started)throw new YF("removeAllContentTypeParsers");this[qA].removeAll()}function YDt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function JDt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function bk(t){this.name=t;let e=eEe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}bk.prototype.toString=function(){return this.name};cv.exports=Md;cv.exports.helpers={buildContentTypeParser:HDt,addContentTypeParser:GDt,hasContentTypeParser:zDt,removeContentTypeParser:KDt,removeAllContentTypeParsers:VDt};cv.exports.defaultParsers={getDefaultJsonParser:iEe,defaultTextParser:JF};cv.exports[LDt]={rawBody:sEe}});var uEe=_((oUr,cEe)=>{"use strict";var aEe=sc(),XDt=Symbol.for("json-schema-ref"),ZF=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:oEe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:oEe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[XDt]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(aEe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&aEe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function oEe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}cEe.exports={RefResolver:ZF}});var dEe=_((cUr,lEe)=>{"use strict";var e7=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};lEe.exports=e7});var gEe=_((uUr,r7)=>{"use strict";r7.exports=Le;r7.exports.default=Le;var ZDt={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},fEe={enum:["array","boolean","integer","null","number","object","string"]},pEe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,e4t=$O().fullFormats.uri,mEe=$O().fullFormats.regex;function uc(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(uc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(uc.errors=i,a===0):(uc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var t7={validate:Le};function pa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return pa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u<c;u++){let l=a;t7.validate(t[u],{instancePath:e+"/"+u,parentData:t,parentDataProperty:u,rootData:s})||(i=i===null?t7.validate.errors:i.concat(t7.validate.errors),a=i.length);var o=l===a;if(!o)break}}}else return pa.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return pa.errors=i,a===0}var hEe=UE().default;function Le(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(!(t&&typeof t=="object"&&!Array.isArray(t))&&typeof t!="boolean")return Le.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:ZDt.type},message:"must be object,boolean"}],!1;if(a===0&&t&&typeof t=="object"&&!Array.isArray(t)){if(t.$id!==void 0){let x=t.$id,A=a;if(a===A&&a===A)if(typeof x=="string"){if(!pEe.test(x))return Le.errors=[{instancePath:e+"/$id",schemaPath:"#/properties/%24id/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return Le.errors=[{instancePath:e+"/$id",schemaPath:"#/properties/%24id/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(t.$schema!==void 0){let x=t.$schema,A=a;if(a===A&&a===A)if(typeof x=="string"){if(!e4t(x))return Le.errors=[{instancePath:e+"/$schema",schemaPath:"#/properties/%24schema/format",keyword:"format",params:{format:"uri"},message:'must match format "uri"'}],!1}else return Le.errors=[{instancePath:e+"/$schema",schemaPath:"#/properties/%24schema/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(t.$ref!==void 0){let x=t.$ref,A=a;if(a===A&&a===A)if(typeof x=="string"){if(!pEe.test(x))return Le.errors=[{instancePath:e+"/$ref",schemaPath:"#/properties/%24ref/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return Le.errors=[{instancePath:e+"/$ref",schemaPath:"#/properties/%24ref/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(t.$comment!==void 0){let x=a;if(typeof t.$comment!="string")return Le.errors=[{instancePath:e+"/$comment",schemaPath:"#/properties/%24comment/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.title!==void 0){let x=a;if(typeof t.title!="string")return Le.errors=[{instancePath:e+"/title",schemaPath:"#/properties/title/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.description!==void 0){let x=a;if(typeof t.description!="string")return Le.errors=[{instancePath:e+"/description",schemaPath:"#/properties/description/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.readOnly!==void 0){let x=a;if(typeof t.readOnly!="boolean")return Le.errors=[{instancePath:e+"/readOnly",schemaPath:"#/properties/readOnly/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=x===a}else var o=!0;if(o){if(t.examples!==void 0){let x=a;if(a===x&&!Array.isArray(t.examples))return Le.errors=[{instancePath:e+"/examples",schemaPath:"#/properties/examples/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.multipleOf!==void 0){let x=t.multipleOf,A=a;if(a===A)if(typeof x=="number"&&isFinite(x)){if(x<=0||isNaN(x))return Le.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/exclusiveMinimum",keyword:"exclusiveMinimum",params:{comparison:">",limit:0},message:"must be > 0"}],!1}else return Le.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.maximum!==void 0){let x=t.maximum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let x=t.exclusiveMaximum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.minimum!==void 0){let x=t.minimum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let x=t.exclusiveMinimum,A=a;if(!(typeof x=="number"&&isFinite(x)))return Le.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=A===a}else var o=!0;if(o){if(t.maxLength!==void 0){let x=t.maxLength,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minLength!==void 0){let x=a;uc(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.pattern!==void 0){let x=t.pattern,A=a;if(a===A&&a===A)if(typeof x=="string"){if(!mEe(x))return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let x=a;Le(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.items!==void 0){let x=t.items,A=a,S=a,I=!1,R=a;Le(x,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var c=R===a;if(I=I||c,!I){let N=a;pa(x,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var c=N===a;I=I||c}if(I)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=A===a}else var o=!0;if(o){if(t.maxItems!==void 0){let x=t.maxItems,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minItems!==void 0){let x=a;uc(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let x=a;if(typeof t.uniqueItems!="boolean")return Le.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=x===a}else var o=!0;if(o){if(t.contains!==void 0){let x=a;Le(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let x=t.maxProperties,A=a,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x)))return Le.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof x=="number"&&isFinite(x)&&(x<0||isNaN(x)))return Le.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=A===a}else var o=!0;if(o){if(t.minProperties!==void 0){let x=a;uc(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?uc.errors:i.concat(uc.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.required!==void 0){let x=t.required,A=a;if(a===a)if(Array.isArray(x)){var u=!0;let R=x.length;for(let w=0;w<R;w++){let N=a;if(typeof x[w]!="string")return Le.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=x.length,N;if(w>1){let k={};for(;w--;){let B=x[w];if(typeof B=="string"){if(typeof k[B]=="number"){return N=k[B],Le.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}k[B]=w}}}}}else return Le.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=A===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let x=a;Le(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.definitions!==void 0){let x=t.definitions,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=a;Le(x[I],{instancePath:e+"/definitions/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var l=R===a;if(!l)break}else return Le.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.properties!==void 0){let x=t.properties,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=a;Le(x[I],{instancePath:e+"/properties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var d=R===a;if(!d)break}else return Le.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let x=t.patternProperties,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x)){for(let I in x){let R=a;if(a===R&&typeof I=="string"&&!mEe(I)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:I};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:I},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,Le.errors=i,!1;break}}if(f)for(let I in x){let R=a;Le(x[I],{instancePath:e+"/patternProperties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var p=R===a;if(!p)break}}else return Le.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.dependencies!==void 0){let x=t.dependencies,A=a;if(a===A)if(x&&typeof x=="object"&&!Array.isArray(x))for(let I in x){let R=x[I],w=a,N=a,k=!1,B=a;Le(R,{instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:x,parentDataProperty:I,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var m=B===a;if(k=k||m,!k){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W<Z;W++){let U=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=U===a;if(!h)break}if(h){let W=R.length,U;if(W>1){let z={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof z[j]=="number"){U=z[j];let J={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:U},message:"must NOT have duplicate items (items ## "+U+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}z[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;k=k||m}if(k)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,Le.errors=i,!1}var y=w===a;if(!y)break}else return Le.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=A===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let x=a;Le(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.enum!==void 0){let x=t.enum,A=a;if(a===A)if(Array.isArray(x)){if(x.length<1)return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let I=x.length,R;if(I>1){e:for(;I--;)for(R=I;R--;)if(hEe(x[I],x[R])){return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:I,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+I+" are identical)"}],!1;break e}}}}else return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=A===a}else var o=!0;if(o){if(t.type!==void 0){let x=t.type,A=a,S=a,I=!1,R=a;if(!(x==="array"||x==="boolean"||x==="integer"||x==="null"||x==="number"||x==="object"||x==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:fEe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(I=I||g,!I){let N=a;if(a===N)if(Array.isArray(x))if(x.length<1){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[B]:i.push(B),a++}else{var b=!0;let B=x.length;for(let M=0;M<B;M++){let D=x[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:fEe.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=x.length,D;if(M>1){e:for(;M--;)for(D=M;D--;)if(hEe(x[M],x[D])){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:D},message:"must NOT have duplicate items (items ## "+D+" and "+M+" are identical)"};i===null?i=[L]:i.push(L),a++;break e}}}}else{let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[B]:i.push(B),a++}var g=N===a;I=I||g}if(I)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=A===a}else var o=!0;if(o){if(t.format!==void 0){let x=a;if(typeof t.format!="string")return Le.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let x=a;if(typeof t.contentMediaType!="string")return Le.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let x=a;if(typeof t.contentEncoding!="string")return Le.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.if!==void 0){let x=a;Le(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.then!==void 0){let x=a;Le(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.else!==void 0){let x=a;Le(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.allOf!==void 0){let x=a;pa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.anyOf!==void 0){let x=a;pa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o){if(t.oneOf!==void 0){let x=a;pa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=x===a}else var o=!0;if(o)if(t.not!==void 0){let x=a;Le(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=x===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return Le.errors=i,a===0}});var a7=_((lUr,yEe)=>{"use strict";var n7=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},s7=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},i7=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};yEe.exports={MergeError:n7,ResolverNotFoundError:s7,InvalidOnConflictOptionError:i7}});var bEe=_((dUr,xEe)=>{"use strict";var t4t=sc(),{MergeError:o7}=a7();function AEe(t){let e=t[0];for(let r=1;r<t.length;r++)e=e.filter(n=>t[r].includes(n));return e}function r4t(t,e,r){let n=AEe(e);if(n.length===0)throw new o7(t,e);r[t]=n}function n4t(t,e,r){for(let s=0;s<e.length;s++)Array.isArray(e[s])||(e[s]=[e[s]]);let n=AEe(e);if(n.length===0)throw new o7(t,e);n.length===1?r[t]=n[0]:r[t]=n}function s4t(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 i4t(t,e,r){r[t]=Math.min(...e)}function a4t(t,e,r){r[t]=Math.max(...e)}function o4t(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 c4t(t,e,r){let n=e[0];for(let s=1;s<e.length;s++)if(!t4t(e[s],n))throw new o7(t,e);r[t]=n}function u4t(){}function l4t(t,e,r){for(let n of e)if(n===!1){r[t]=!1;return}r[t]=!0}function d4t(t,e,r){for(let n of e)if(n===!0){r[t]=!0;return}r[t]=!1}xEe.exports={arraysIntersection:r4t,hybridArraysIntersection:n4t,arraysUnion:s4t,minNumber:i4t,maxNumber:a4t,commonMultiple:o4t,allEqual:c4t,booleanAnd:l4t,booleanOr:d4t,skip:u4t}});var CEe=_((fUr,IEe)=>{"use strict";var f4t=sc(),Qn=bEe(),vk=a7(),vEe={$id:Qn.skip,type:Qn.hybridArraysIntersection,enum:Qn.arraysIntersection,minLength:Qn.maxNumber,maxLength:Qn.minNumber,minimum:Qn.maxNumber,maximum:Qn.minNumber,multipleOf:Qn.commonMultiple,exclusiveMinimum:Qn.maxNumber,exclusiveMaximum:Qn.minNumber,minItems:Qn.maxNumber,maxItems:Qn.minNumber,maxProperties:Qn.minNumber,minProperties:Qn.maxNumber,const:Qn.allEqual,default:Qn.allEqual,format:Qn.allEqual,required:Qn.arraysUnion,properties:A4t,patternProperties:Ek,additionalProperties:_k,items:h4t,additionalItems:g4t,definitions:Ek,$defs:Ek,nullable:Qn.booleanAnd,oneOf:_Ee,anyOf:_Ee,allOf:Qn.arraysUnion,not:_k,if:x4t,then:Qn.skip,else:Qn.skip,dependencies:EEe,dependentRequired:EEe,dependentSchemas:Ek,propertyNames:_k,uniqueItems:Qn.booleanOr,contains:_k};function _k(t,e,r,n,s){r[t]=ru(e,s)}function p4t(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function _Ee(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=p4t(e),a=[];for(let o of i)try{let c=ru(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof vk.MergeError)continue;throw c}r[t]=a}function m4t(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e<r.length?r[e]:n:r!==void 0?r:n}function h4t(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]=ru(e,s);return}let a=[];for(let o=0;o<i;o++){let c=[];for(let u of n){let l=m4t(u,o);l!==void 0&&c.push(l)}a[o]=ru(c,s)}r[t]=a}function g4t(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]=ru(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]=ru(a,s)}function y4t(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 A4t(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=y4t(d,u);f!==void 0&&i[u].push(f)}}}let a={};for(let o of Object.keys(i)){let c=i[o];a[o]=ru(c,s)}r[t]=a}function Ek(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=ru(c,s);a[o]=u}r[t]=a}function x4t(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=ru([r.then,a],s)),r.else!==void 0&&(r.else=ru([r.else,a],s))}}}function EEe(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 ru(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 SEe(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(!f4t(e[o],e[0])){a=!1;break}if(a){r[t]=e[0];return}if(i==="throw")throw new vk.ResolverNotFoundError(t,e);if(i!=="skip")throw new vk.InvalidOnConflictOptionError(i)}function b4t(t,e={}){return e.defaultResolver===void 0&&(e.defaultResolver=SEe),e.resolvers={...vEe,...e.resolvers},ru(t,e)}IEe.exports={mergeSchemas:b4t,keywordsResolvers:vEe,defaultResolver:SEe,...vk}});var wEe=_((pUr,TEe)=>{"use strict";var{mergeSchemas:_4t}=CEe();function E4t(t){return _4t(t,{onConflict:"skip"})}TEe.exports=E4t});var MEe=_((mUr,jA)=>{"use strict";var{RefResolver:v4t}=uEe(),S4t=i$(),I4t=rF(),ah=dEe(),REe=gEe(),C4t=wEe(),T4t=/'/g,Sk=2e4,OEe="default",w4t=["floor","ceil","round","trunc"],kEe=["default","json-stringify"],uv=0;function c7(t,e){if(!REe(t)){e?e=`"${e}" `:e="";let r=REe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=c7.errors,n}}function lv(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new ah(a,s,i);return a.$ref!==void 0?lv(t,o):o}function Ik(t,e){let r=t.refResolver.getSchema(e,"#");return new ah(r,e,"#")}function NEe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function u7(t,e){c7(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new v4t,rootSchemaId:t.$id||`__fjs_root_${uv++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=NEe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=NEe(d,l);r.refResolver.hasSchema(f)||(c7(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!w4t.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(kEe.includes(e.largeArrayMechanism))OEe=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))Sk=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))Sk=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")Sk=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new ah(t,r.rootSchemaId),i=Ro(r,s,"input"),a=`
|
|
const JSON_STR_BEGIN_OBJECT = '{'
|
|
const JSON_STR_END_OBJECT = '}'
|
|
const JSON_STR_BEGIN_ARRAY = '['
|
|
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 S4t(e),c=new I4t(e.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator
|
|
serializer
|
|
${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?sF()(u,r,o,c):u(c,o)}var R4t=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],N4t=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],O4t=["maxLength","minLength","pattern"],k4t=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function P4t(t){for(var e of R4t)if(e in t)return"object";for(var e of N4t)if(e in t)return"array";for(var e of O4t)if(e in t)return"string";for(var e of k4t)if(e in t)return"number";return t.type}function D4t(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=`
|
|
const propertiesKeys = ${JSON.stringify(s)}
|
|
for (const [key, value] of Object.entries(obj)) {
|
|
if (
|
|
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
|
|
${Ro(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
|
|
${Ro(t,l,"value")}
|
|
`}return i+=`
|
|
}
|
|
`,i}function B4t(t,e){let r=e.schema,n=e.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value
|
|
`;for(let u of s)if(!i.includes(u)){let l=JSON.stringify(u);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!')
|
|
`}o+=`let json = JSON_STR_BEGIN_OBJECT
|
|
`;let c="";a||(o+=`let addComma = false
|
|
`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=lv(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=`
|
|
value = obj[${d}]
|
|
if (value !== undefined) {
|
|
${c}
|
|
json += ${JSON.stringify(d+":")}
|
|
${Ro(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+=D4t(t,e,c)),o+=`
|
|
return json + JSON_STR_END_OBJECT
|
|
`,o}function Ck(t,e,r){for(let a=0;a<r.length;a++){let o=r[a];o.schema.$ref&&(r[a]=lv(t,o))}let n=[];for(let a of r){let o=PEe(t,a.schema,a.schemaId);delete o.$id,n.push(o)}let s=C4t(n),i=new ah(s,e);return t.refResolver.addSchema(s,e),i}function PEe(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=PEe(t,a,r)),n[i]=a}return n}function L4t(t){return`(${t} && typeof ${t}.toJSON === 'function')
|
|
? ${t}.toJSON()
|
|
: ${t}
|
|
`}function M4t(t,e){let r=e.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let n=BEe(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 = ${L4t("input")}
|
|
${a?"":"if (obj === null) return JSON_STR_EMPTY_OBJECT"}
|
|
|
|
${B4t(t,e)}
|
|
}
|
|
`,t.functions.push(i),n}function W4t(t,e){let r=e.schema,n=e.getPropertyLocation("items");n.schema=n.schema||{},n.schema.$ref&&(n=lv(t,n));let s=n.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let i=BEe(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.\`)
|
|
}
|
|
`),OEe==="json-stringify"&&(o+=`if (arrayLength >= ${Sk}) return JSON.stringify(obj)
|
|
`),o+=`
|
|
const arrayEnd = arrayLength - 1
|
|
let value
|
|
let json = ''
|
|
`,Array.isArray(s)){for(let u=0;u<s.length;u++){let l=s[u];o+=`value = obj[${u}]`;let d=Ro(t,n.getPropertyLocation(u),"value");o+=`
|
|
if (${u} < arrayLength) {
|
|
if (${DEe(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=Ro(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 DEe(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=>DEe(s,e)).join(" || ")})`)}return r}function BEe(t){return"anonymous"+t.functionsCounter++}function $4t(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=LEe(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=`
|
|
${l} (${r} === null)
|
|
${u}
|
|
`;break;case"string":{i+=`
|
|
${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 LEe(t,e,r){let n=e.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:`
|
|
if (typeof ${r} !== 'string') {
|
|
if (${r} === null) {
|
|
json += JSON_STR_EMPTY_STRING
|
|
} 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 += ${M4t(t,e)}(${r})`;case"array":return`json += ${W4t(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function U4t(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=`
|
|
if (${e} === null) {
|
|
json += JSON_STR_NULL
|
|
} else {
|
|
`),i+=`json += '${JSON.stringify(r.const).replace(T4t,"\\'")}'`,s&&(i+=`
|
|
}
|
|
`),i}function F4t(t,e,r){let n=e.schema,s=t.mergedSchemasIds.get(n);if(s){let l=Ik(t,s);return Ro(t,l,r)}s=`__fjs_merged_${uv++}`,t.mergedSchemasIds.set(n,s);let{allOf:i,...a}=e.schema,o=[new ah(a,e.schemaId,e.jsonPointer)],c=e.getPropertyLocation("allOf");for(let l=0;l<i.length;l++)o.push(c.getPropertyLocation(l));let u=Ck(t,s,o);return Ro(t,u,r)}function q4t(t,e,r){t.validatorSchemasIds.add(e.schemaId);let s=e.schema.anyOf?"anyOf":"oneOf",{[s]:i,...a}=e.schema,o=new ah(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=Ik(t,m):(m=`__fjs_merged_${uv++}`,t.mergedSchemasIds.set(p,m),h=Ck(t,m,[o,f]));let y=Ro(t,h,r),g=f.getSchemaRef();u+=`
|
|
${d===0?"if":"else if"}(validator.validate("${g}", ${r}))
|
|
${y}
|
|
`}let l=e.getSchemaRef();return l.startsWith(t.rootSchemaId)&&(l=l.replace(t.rootSchemaId,"")),u+=`
|
|
else throw new TypeError(\`The value of '${l}' does not match schema definition.\`)
|
|
`,u}function j4t(t,e,r){t.validatorSchemasIds.add(e.schemaId);let{if:n,then:s,else:i,...a}=e.schema,o=new ah(a,e.schemaId,e.jsonPointer),u=e.getPropertyLocation("if").getSchemaRef(),l=e.getPropertyLocation("then"),d=t.mergedSchemasIds.get(s),f=null;if(d?f=Ik(t,d):(d=`__fjs_merged_${uv++}`,t.mergedSchemasIds.set(s,d),f=Ck(t,d,[o,l])),!i)return`
|
|
if (validator.validate("${u}", ${r})) {
|
|
${Ro(t,f,r)}
|
|
} else {
|
|
${Ro(t,o,r)}
|
|
}
|
|
`;let p=e.getPropertyLocation("else"),m=t.mergedSchemasIds.get(i),h=null;return m?h=Ik(t,m):(m=`__fjs_merged_${uv++}`,t.mergedSchemasIds.set(i,m),h=Ck(t,m,[o,p])),`
|
|
if (validator.validate("${u}", ${r})) {
|
|
${Ro(t,f,r)}
|
|
} else {
|
|
${Ro(t,h,r)}
|
|
}
|
|
`}function Ro(t,e,r){let n=e.schema;if(typeof n=="boolean")return`json += JSON.stringify(${r})`;if(n.$ref&&(e=lv(t,e),n=e.schema),n.allOf)return F4t(t,e,r);if(n.anyOf||n.oneOf)return q4t(t,e,r);if(n.if&&n.then)return j4t(t,e,r);if(n.type===void 0){let o=P4t(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+=U4t(e,r):Array.isArray(i)?s+=$4t(t,e,r):s+=LEe(t,e,r),a&&(s+=`
|
|
}
|
|
`),s}jA.exports=u7;jA.exports.default=u7;jA.exports.build=u7;jA.exports.validLargeArrayMechanisms=kEe;jA.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var $Ee=_((hUr,l7)=>{"use strict";var Q4t=d7();function WEe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=Q4t();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}l7.exports=WEe;l7.exports.default=WEe});var d7=_((gUr,dv)=>{"use strict";var H4t=MEe();function f7(){return function(e,r){let n=Object.assign({},r,{schema:e});return G4t.bind(null,n)}}function G4t(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),H4t(e,t)}dv.exports=f7;dv.exports.default=f7;dv.exports.SerializerSelector=f7;dv.exports.StandaloneSerializer=$Ee()});var QA=_($r=>{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.regexpCode=$r.getEsmExportName=$r.getProperty=$r.safeStringify=$r.stringify=$r.strConcat=$r.addCodeArg=$r.str=$r._=$r.nil=$r._Code=$r.Name=$r.IDENTIFIER=$r._CodeOrName=void 0;var fv=class{};$r._CodeOrName=fv;$r.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var oh=class extends fv{constructor(e){if(super(),!$r.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};$r.Name=oh;var lc=class extends fv{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof oh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};$r._Code=lc;$r.nil=new lc("");function UEe(t,...e){let r=[t[0]],n=0;for(;n<e.length;)m7(r,e[n]),r.push(t[++n]);return new lc(r)}$r._=UEe;var p7=new lc("+");function FEe(t,...e){let r=[pv(t[0])],n=0;for(;n<e.length;)r.push(p7),m7(r,e[n]),r.push(p7,pv(t[++n]));return z4t(r),new lc(r)}$r.str=FEe;function m7(t,e){e instanceof lc?t.push(...e._items):e instanceof oh?t.push(e):t.push(Y4t(e))}$r.addCodeArg=m7;function z4t(t){let e=1;for(;e<t.length-1;){if(t[e]===p7){let r=K4t(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function K4t(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof oh||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 oh))return`"${t}${e.slice(1)}`}function V4t(t,e){return e.emptyStr()?t:t.emptyStr()?e:FEe`${t}${e}`}$r.strConcat=V4t;function Y4t(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:pv(Array.isArray(t)?t.join(","):t)}function J4t(t){return new lc(pv(t))}$r.stringify=J4t;function pv(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}$r.safeStringify=pv;function X4t(t){return typeof t=="string"&&$r.IDENTIFIER.test(t)?new lc(`.${t}`):UEe`[${t}]`}$r.getProperty=X4t;function Z4t(t){if(typeof t=="string"&&$r.IDENTIFIER.test(t))return new lc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}$r.getEsmExportName=Z4t;function eBt(t){return new lc(t.toString())}$r.regexpCode=eBt});var Nk=_(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.ValueScope=Ga.ValueScopeName=Ga.Scope=Ga.varKinds=Ga.UsedValueState=void 0;var Ha=QA(),h7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Tk;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Tk||(Ga.UsedValueState=Tk={}));Ga.varKinds={const:new Ha.Name("const"),let:new Ha.Name("let"),var:new Ha.Name("var")};var wk=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ha.Name?e:this.name(e)}name(e){return new Ha.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ga.Scope=wk;var Rk=class extends Ha.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ha._)`.${new Ha.Name(r)}[${n}]`}};Ga.ValueScopeName=Rk;var tBt=(0,Ha._)`\n`,g7=class extends wk{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?tBt:Ha.nil}}get(){return this._scope}name(e){return new Rk(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ha._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Ha.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,Tk.Started);let l=r(u);if(l){let d=this.opts.es5?Ga.varKinds.var:Ga.varKinds.const;i=(0,Ha._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Ha._)`${i}${l}${this.opts._n}`;else throw new h7(u);c.set(u,Tk.Completed)})}return i}};Ga.ValueScope=g7});var Et=_(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.or=nr.and=nr.not=nr.CodeGen=nr.operators=nr.varKinds=nr.ValueScopeName=nr.ValueScope=nr.Scope=nr.Name=nr.regexpCode=nr.stringify=nr.getProperty=nr.nil=nr.strConcat=nr.str=nr._=void 0;var vr=QA(),nu=Nk(),Qp=QA();Object.defineProperty(nr,"_",{enumerable:!0,get:function(){return Qp._}});Object.defineProperty(nr,"str",{enumerable:!0,get:function(){return Qp.str}});Object.defineProperty(nr,"strConcat",{enumerable:!0,get:function(){return Qp.strConcat}});Object.defineProperty(nr,"nil",{enumerable:!0,get:function(){return Qp.nil}});Object.defineProperty(nr,"getProperty",{enumerable:!0,get:function(){return Qp.getProperty}});Object.defineProperty(nr,"stringify",{enumerable:!0,get:function(){return Qp.stringify}});Object.defineProperty(nr,"regexpCode",{enumerable:!0,get:function(){return Qp.regexpCode}});Object.defineProperty(nr,"Name",{enumerable:!0,get:function(){return Qp.Name}});var Dk=Nk();Object.defineProperty(nr,"Scope",{enumerable:!0,get:function(){return Dk.Scope}});Object.defineProperty(nr,"ValueScope",{enumerable:!0,get:function(){return Dk.ValueScope}});Object.defineProperty(nr,"ValueScopeName",{enumerable:!0,get:function(){return Dk.ValueScopeName}});Object.defineProperty(nr,"varKinds",{enumerable:!0,get:function(){return Dk.varKinds}});nr.operators={GT:new vr._Code(">"),GTE:new vr._Code(">="),LT:new vr._Code("<"),LTE:new vr._Code("<="),EQ:new vr._Code("==="),NEQ:new vr._Code("!=="),NOT:new vr._Code("!"),OR:new vr._Code("||"),AND:new vr._Code("&&"),ADD:new vr._Code("+")};var Wd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},y7=class extends Wd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?nu.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=GA(this.rhs,e,r)),this}get names(){return this.rhs instanceof vr._CodeOrName?this.rhs.names:{}}},Ok=class extends Wd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof vr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=GA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof vr.Name?{}:{...this.lhs.names};return Pk(e,this.rhs)}},A7=class extends Ok{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},x7=class extends Wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},b7=class extends Wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},_7=class extends Wd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},E7=class extends Wd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=GA(this.code,e,r),this}get names(){return this.code instanceof vr._CodeOrName?this.code.names:{}}},mv=class extends Wd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(rBt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>lh(e,r.names),{})}},$d=class extends mv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},v7=class extends mv{},HA=class extends $d{};HA.kind="else";var ch=class t extends $d{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new HA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(qEe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=GA(this.condition,e,r),this}get names(){let e=super.names;return Pk(e,this.condition),this.else&&lh(e,this.else.names),e}};ch.kind="if";var uh=class extends $d{};uh.kind="for";var S7=class extends uh{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=GA(this.iteration,e,r),this}get names(){return lh(super.names,this.iteration.names)}},I7=class extends uh{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?nu.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=Pk(super.names,this.from);return Pk(e,this.to)}},kk=class extends uh{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=GA(this.iterable,e,r),this}get names(){return lh(super.names,this.iterable.names)}},hv=class extends $d{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};hv.kind="func";var gv=class extends mv{render(e){return"return "+super.render(e)}};gv.kind="return";var C7=class extends $d{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&lh(e,this.catch.names),this.finally&&lh(e,this.finally.names),e}},yv=class extends $d{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};yv.kind="catch";var Av=class extends $d{render(e){return"finally"+super.render(e)}};Av.kind="finally";var T7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
`:""},this._extScope=e,this._scope=new nu.Scope({parent:e}),this._nodes=[new v7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new y7(e,i,n)),i}const(e,r,n){return this._def(nu.varKinds.const,e,r,n)}let(e,r,n){return this._def(nu.varKinds.let,e,r,n)}var(e,r,n){return this._def(nu.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ok(e,r,n))}add(e,r){return this._leafNode(new A7(e,nr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==vr.nil&&this._leafNode(new E7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,vr.addCodeArg)(r,s));return r.push("}"),new vr._Code(r)}if(e,r,n){if(this._blockNode(new ch(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new ch(e))}else(){return this._elseNode(new HA)}endIf(){return this._endBlockNode(ch,HA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new S7(e),r)}forRange(e,r,n,s,i=this.opts.es5?nu.varKinds.var:nu.varKinds.let){let a=this._scope.toName(e);return this._for(new I7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=nu.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof vr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,vr._)`${a}.length`,o=>{this.var(i,(0,vr._)`${a}[${o}]`),n(i)})}return this._for(new kk("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?nu.varKinds.var:nu.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,vr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new kk("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(uh)}label(e){return this._leafNode(new x7(e))}break(e){return this._leafNode(new b7(e))}return(e){let r=new gv;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(gv)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new C7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new yv(i),r(i)}return n&&(this._currNode=s.finally=new Av,this.code(n)),this._endBlockNode(yv,Av)}throw(e){return this._leafNode(new _7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=vr.nil,n,s){return this._blockNode(new hv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(hv)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof ch))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};nr.CodeGen=T7;function lh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Pk(t,e){return e instanceof vr._CodeOrName?lh(t,e.names):t}function GA(t,e,r){if(t instanceof vr.Name)return n(t);if(!s(t))return t;return new vr._Code(t._items.reduce((i,a)=>(a instanceof vr.Name&&(a=n(a)),a instanceof vr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof vr._Code&&i._items.some(a=>a instanceof vr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function rBt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function qEe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,vr._)`!${w7(t)}`}nr.not=qEe;var nBt=jEe(nr.operators.AND);function sBt(...t){return t.reduce(nBt)}nr.and=sBt;var iBt=jEe(nr.operators.OR);function aBt(...t){return t.reduce(iBt)}nr.or=aBt;function jEe(t){return(e,r)=>e===vr.nil?r:r===vr.nil?e:(0,vr._)`${w7(e)} ${t} ${w7(r)}`}function w7(t){return t instanceof vr.Name?t:(0,vr._)`(${t})`}});var Yt=_(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.checkStrictMode=or.getErrorPath=or.Type=or.useFunc=or.setEvaluated=or.evaluatedPropsToName=or.mergeEvaluated=or.eachItem=or.unescapeJsonPointer=or.escapeJsonPointer=or.escapeFragment=or.unescapeFragment=or.schemaRefOrVal=or.schemaHasRulesButRef=or.schemaHasRules=or.checkUnknownRules=or.alwaysValidSchema=or.toHash=void 0;var dn=Et(),oBt=QA();function cBt(t){let e={};for(let r of t)e[r]=!0;return e}or.toHash=cBt;function uBt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(GEe(t,e),!zEe(e,t.self.RULES.all))}or.alwaysValidSchema=uBt;function GEe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||YEe(t,`unknown keyword: "${i}"`)}or.checkUnknownRules=GEe;function zEe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}or.schemaHasRules=zEe;function lBt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}or.schemaHasRulesButRef=lBt;function dBt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,dn._)`${r}`}return(0,dn._)`${t}${e}${(0,dn.getProperty)(n)}`}or.schemaRefOrVal=dBt;function fBt(t){return KEe(decodeURIComponent(t))}or.unescapeFragment=fBt;function pBt(t){return encodeURIComponent(N7(t))}or.escapeFragment=pBt;function N7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}or.escapeJsonPointer=N7;function KEe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}or.unescapeJsonPointer=KEe;function mBt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}or.eachItem=mBt;function QEe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof dn.Name?(i instanceof dn.Name?t(s,i,a):e(s,i,a),a):i instanceof dn.Name?(e(s,a,i),i):r(i,a);return o===dn.Name&&!(c instanceof dn.Name)?n(s,c):c}}or.mergeEvaluated={props:QEe({mergeNames:(t,e,r)=>t.if((0,dn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,dn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,dn._)`${r} || {}`).code((0,dn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,dn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,dn._)`${r} || {}`),O7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:VEe}),items:QEe({mergeNames:(t,e,r)=>t.if((0,dn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,dn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,dn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,dn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function VEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,dn._)`{}`);return e!==void 0&&O7(t,r,e),r}or.evaluatedPropsToName=VEe;function O7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,dn._)`${e}${(0,dn.getProperty)(n)}`,!0))}or.setEvaluated=O7;var HEe={};function hBt(t,e){return t.scopeValue("func",{ref:e,code:HEe[e.code]||(HEe[e.code]=new oBt._Code(e.code))})}or.useFunc=hBt;var R7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(R7||(or.Type=R7={}));function gBt(t,e,r){if(t instanceof dn.Name){let n=e===R7.Num;return r?n?(0,dn._)`"[" + ${t} + "]"`:(0,dn._)`"['" + ${t} + "']"`:n?(0,dn._)`"/" + ${t}`:(0,dn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,dn.getProperty)(t).toString():"/"+N7(t)}or.getErrorPath=gBt;function YEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}or.checkStrictMode=YEe});var dc=_(k7=>{"use strict";Object.defineProperty(k7,"__esModule",{value:!0});var Fi=Et(),yBt={data:new Fi.Name("data"),valCxt:new Fi.Name("valCxt"),instancePath:new Fi.Name("instancePath"),parentData:new Fi.Name("parentData"),parentDataProperty:new Fi.Name("parentDataProperty"),rootData:new Fi.Name("rootData"),dynamicAnchors:new Fi.Name("dynamicAnchors"),vErrors:new Fi.Name("vErrors"),errors:new Fi.Name("errors"),this:new Fi.Name("this"),self:new Fi.Name("self"),scope:new Fi.Name("scope"),json:new Fi.Name("json"),jsonPos:new Fi.Name("jsonPos"),jsonLen:new Fi.Name("jsonLen"),jsonPart:new Fi.Name("jsonPart")};k7.default=yBt});var xv=_(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.extendErrors=qi.resetErrorsCount=qi.reportExtraError=qi.reportError=qi.keyword$DataError=qi.keywordError=void 0;var Nr=Et(),Bk=Yt(),ma=dc();qi.keywordError={message:({keyword:t})=>(0,Nr.str)`must pass "${t}" keyword validation`};qi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Nr.str)`"${t}" keyword must be ${e} ($data)`:(0,Nr.str)`"${t}" keyword is invalid ($data)`};function ABt(t,e=qi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=ZEe(t,e,r);n??(a||o)?JEe(i,c):XEe(s,(0,Nr._)`[${c}]`)}qi.reportError=ABt;function xBt(t,e=qi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=ZEe(t,e,r);JEe(s,o),i||a||XEe(n,ma.default.vErrors)}qi.reportExtraError=xBt;function bBt(t,e){t.assign(ma.default.errors,e),t.if((0,Nr._)`${ma.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Nr._)`${ma.default.vErrors}.length`,e),()=>t.assign(ma.default.vErrors,null)))}qi.resetErrorsCount=bBt;function _Bt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ma.default.errors,o=>{t.const(a,(0,Nr._)`${ma.default.vErrors}[${o}]`),t.if((0,Nr._)`${a}.instancePath === undefined`,()=>t.assign((0,Nr._)`${a}.instancePath`,(0,Nr.strConcat)(ma.default.instancePath,i.errorPath))),t.assign((0,Nr._)`${a}.schemaPath`,(0,Nr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Nr._)`${a}.schema`,r),t.assign((0,Nr._)`${a}.data`,n))})}qi.extendErrors=_Bt;function JEe(t,e){let r=t.const("err",e);t.if((0,Nr._)`${ma.default.vErrors} === null`,()=>t.assign(ma.default.vErrors,(0,Nr._)`[${r}]`),(0,Nr._)`${ma.default.vErrors}.push(${r})`),t.code((0,Nr._)`${ma.default.errors}++`)}function XEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Nr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Nr._)`${n}.errors`,e),r.return(!1))}var dh={keyword:new Nr.Name("keyword"),schemaPath:new Nr.Name("schemaPath"),params:new Nr.Name("params"),propertyName:new Nr.Name("propertyName"),message:new Nr.Name("message"),schema:new Nr.Name("schema"),parentSchema:new Nr.Name("parentSchema")};function ZEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Nr._)`{}`:EBt(t,e,r)}function EBt(t,e,r={}){let{gen:n,it:s}=t,i=[vBt(s,r),SBt(t,r)];return IBt(t,e,i),n.object(...i)}function vBt({errorPath:t},{instancePath:e}){let r=e?(0,Nr.str)`${t}${(0,Bk.getErrorPath)(e,Bk.Type.Str)}`:t;return[ma.default.instancePath,(0,Nr.strConcat)(ma.default.instancePath,r)]}function SBt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Nr.str)`${e}/${t}`;return r&&(s=(0,Nr.str)`${s}${(0,Bk.getErrorPath)(r,Bk.Type.Str)}`),[dh.schemaPath,s]}function IBt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([dh.keyword,s],[dh.params,typeof e=="function"?e(t):e||(0,Nr._)`{}`]),c.messages&&n.push([dh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([dh.schema,a],[dh.parentSchema,(0,Nr._)`${l}${d}`],[ma.default.data,i]),u&&n.push([dh.propertyName,u])}});var tve=_(zA=>{"use strict";Object.defineProperty(zA,"__esModule",{value:!0});zA.boolOrEmptySchema=zA.topBoolOrEmptySchema=void 0;var CBt=xv(),TBt=Et(),wBt=dc(),RBt={message:"boolean schema is false"};function NBt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?eve(t,!1):typeof r=="object"&&r.$async===!0?e.return(wBt.default.data):(e.assign((0,TBt._)`${n}.errors`,null),e.return(!0))}zA.topBoolOrEmptySchema=NBt;function OBt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),eve(t)):r.var(e,!0)}zA.boolOrEmptySchema=OBt;function eve(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,CBt.reportError)(s,RBt,void 0,e)}});var P7=_(KA=>{"use strict";Object.defineProperty(KA,"__esModule",{value:!0});KA.getRules=KA.isJSONType=void 0;var kBt=["string","number","integer","boolean","null","object","array"],PBt=new Set(kBt);function DBt(t){return typeof t=="string"&&PBt.has(t)}KA.isJSONType=DBt;function BBt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}KA.getRules=BBt});var D7=_(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});Hp.shouldUseRule=Hp.shouldUseGroup=Hp.schemaHasRulesForType=void 0;function LBt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&rve(t,n)}Hp.schemaHasRulesForType=LBt;function rve(t,e){return e.rules.some(r=>nve(t,r))}Hp.shouldUseGroup=rve;function nve(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Hp.shouldUseRule=nve});var bv=_(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.reportTypeError=ji.checkDataTypes=ji.checkDataType=ji.coerceAndCheckDataType=ji.getJSONTypes=ji.getSchemaTypes=ji.DataType=void 0;var MBt=P7(),WBt=D7(),$Bt=xv(),Qt=Et(),sve=Yt(),VA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(VA||(ji.DataType=VA={}));function UBt(t){let e=ive(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}ji.getSchemaTypes=UBt;function ive(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(MBt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ji.getJSONTypes=ive;function FBt(t,e){let{gen:r,data:n,opts:s}=t,i=qBt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,WBt.schemaHasRulesForType)(t,e[0]));if(a){let o=L7(e,n,s.strictNumbers,VA.Wrong);r.if(o,()=>{i.length?jBt(t,e,i):M7(t)})}return a}ji.coerceAndCheckDataType=FBt;var ave=new Set(["string","number","integer","boolean","null"]);function qBt(t,e){return e?t.filter(r=>ave.has(r)||e==="array"&&r==="array"):[]}function jBt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Qt._)`typeof ${s}`),o=n.let("coerced",(0,Qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,Qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Qt._)`${s}[0]`).assign(a,(0,Qt._)`typeof ${s}`).if(L7(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Qt._)`${o} !== undefined`);for(let u of r)(ave.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),M7(t),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(s,o),QBt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Qt._)`"" + ${s}`).elseIf((0,Qt._)`${s} === null`).assign(o,(0,Qt._)`""`);return;case"number":n.elseIf((0,Qt._)`${a} == "boolean" || ${s} === null
|
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Qt._)`+${s}`);return;case"integer":n.elseIf((0,Qt._)`${a} === "boolean" || ${s} === null
|
|
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Qt._)`+${s}`);return;case"boolean":n.elseIf((0,Qt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Qt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Qt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Qt._)`${a} === "string" || ${a} === "number"
|
|
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,Qt._)`[${s}]`)}}}function QBt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Qt._)`${e} !== undefined`,()=>t.assign((0,Qt._)`${e}[${r}]`,n))}function B7(t,e,r,n=VA.Correct){let s=n===VA.Correct?Qt.operators.EQ:Qt.operators.NEQ,i;switch(t){case"null":return(0,Qt._)`${e} ${s} null`;case"array":i=(0,Qt._)`Array.isArray(${e})`;break;case"object":i=(0,Qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Qt._)`typeof ${e} ${s} ${t}`}return n===VA.Correct?i:(0,Qt.not)(i);function a(o=Qt.nil){return(0,Qt.and)((0,Qt._)`typeof ${e} == "number"`,o,r?(0,Qt._)`isFinite(${e})`:Qt.nil)}}ji.checkDataType=B7;function L7(t,e,r,n){if(t.length===1)return B7(t[0],e,r,n);let s,i=(0,sve.toHash)(t);if(i.array&&i.object){let a=(0,Qt._)`typeof ${e} != "object"`;s=i.null?a:(0,Qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,Qt.and)(s,B7(a,e,r,n));return s}ji.checkDataTypes=L7;var HBt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Qt._)`{type: ${t}}`:(0,Qt._)`{type: ${e}}`};function M7(t){let e=GBt(t);(0,$Bt.reportError)(e,HBt)}ji.reportTypeError=M7;function GBt(t){let{gen:e,data:r,schema:n}=t,s=(0,sve.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var cve=_(Lk=>{"use strict";Object.defineProperty(Lk,"__esModule",{value:!0});Lk.assignDefaults=void 0;var YA=Et(),zBt=Yt();function KBt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)ove(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>ove(t,i,s.default))}Lk.assignDefaults=KBt;function ove(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,YA._)`${i}${(0,YA.getProperty)(e)}`;if(s){(0,zBt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,YA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,YA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,YA._)`${o} = ${(0,YA.stringify)(r)}`)}});var Ai=_(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var kn=Et(),W7=Yt(),Gp=dc(),VBt=Yt();function YBt(t,e){let{gen:r,data:n,it:s}=t;r.if(U7(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,kn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=YBt;function JBt({gen:t,data:e,it:{opts:r}},n,s){return(0,kn.or)(...n.map(i=>(0,kn.and)(U7(t,e,i,r.ownProperties),(0,kn._)`${s} = ${i}`)))}Zr.checkMissingProp=JBt;function XBt(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=XBt;function uve(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,kn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=uve;function $7(t,e,r){return(0,kn._)`${uve(t)}.call(${e}, ${r})`}Zr.isOwnProperty=$7;function ZBt(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} !== undefined`;return n?(0,kn._)`${s} && ${$7(t,e,r)}`:s}Zr.propertyInData=ZBt;function U7(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} === undefined`;return n?(0,kn.or)(s,(0,kn.not)($7(t,e,r))):s}Zr.noPropertyInData=U7;function lve(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=lve;function eLt(t,e){return lve(e).filter(r=>!(0,W7.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=eLt;function tLt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,kn._)`${t}, ${e}, ${n}${s}`:e,d=[[Gp.default.instancePath,(0,kn.strConcat)(Gp.default.instancePath,i)],[Gp.default.parentData,a.parentData],[Gp.default.parentDataProperty,a.parentDataProperty],[Gp.default.rootData,Gp.default.rootData]];a.opts.dynamicRef&&d.push([Gp.default.dynamicAnchors,Gp.default.dynamicAnchors]);let f=(0,kn._)`${l}, ${r.object(...d)}`;return c!==kn.nil?(0,kn._)`${o}.call(${c}, ${f})`:(0,kn._)`${o}(${f})`}Zr.callValidateCode=tLt;var rLt=(0,kn._)`new RegExp`;function nLt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,kn._)`${s.code==="new RegExp"?rLt:(0,VBt.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=nLt;function sLt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,kn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:W7.Type.Num},i),e.if((0,kn.not)(i),o)})}}Zr.validateArray=sLt;function iLt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,W7.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,kn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,kn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=iLt});var pve=_(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});cl.validateKeywordUsage=cl.validSchemaType=cl.funcKeywordCode=cl.macroKeywordCode=void 0;var ha=Et(),fh=dc(),aLt=Ai(),oLt=xv();function cLt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=fve(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ha.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}cl.macroKeywordCode=cLt;function uLt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;dLt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=fve(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&dve(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&dve(t),y(()=>lLt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ha._)`await `),b=>n.assign(d,!1).if((0,ha._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ha._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ha._)`${l}.errors`;return n.assign(g,null),h(ha.nil),g}function h(g=e.async?(0,ha._)`await `:ha.nil){let b=c.opts.passContext?fh.default.this:fh.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ha._)`${g}${(0,aLt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,ha.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}cl.funcKeywordCode=uLt;function dve(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ha._)`${n.parentData}[${n.parentDataProperty}]`))}function lLt(t,e){let{gen:r}=t;r.if((0,ha._)`Array.isArray(${e})`,()=>{r.assign(fh.default.vErrors,(0,ha._)`${fh.default.vErrors} === null ? ${e} : ${fh.default.vErrors}.concat(${e})`).assign(fh.default.errors,(0,ha._)`${fh.default.vErrors}.length`),(0,oLt.extendErrors)(t)},()=>t.error())}function dLt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function fve(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ha.stringify)(r)})}function fLt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}cl.validSchemaType=fLt;function pLt({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}cl.validateKeywordUsage=pLt});var hve=_(zp=>{"use strict";Object.defineProperty(zp,"__esModule",{value:!0});zp.extendSubschemaMode=zp.extendSubschemaData=zp.getSubschema=void 0;var ul=Et(),mve=Yt();function mLt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,ul._)`${t.schemaPath}${(0,ul.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,ul._)`${t.schemaPath}${(0,ul.getProperty)(e)}${(0,ul.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,mve.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}zp.getSubschema=mLt;function hLt(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,ul._)`${e.data}${(0,ul.getProperty)(r)}`,!0);c(f),t.errorPath=(0,ul.str)`${u}${(0,mve.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,ul._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof ul.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}zp.extendSubschemaData=hLt;function gLt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}zp.extendSubschemaMode=gLt});var yve=_((OUr,gve)=>{"use strict";var Kp=gve.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Mk(e,n,s,t,"",t)};Kp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Kp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Kp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Kp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Mk(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Kp.arrayKeywords)for(var f=0;f<d.length;f++)Mk(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Kp.propsKeywords){if(d&&typeof d=="object")for(var p in d)Mk(t,e,r,d[p],s+"/"+l+"/"+yLt(p),i,s,l,n,p)}else(l in Kp.keywords||t.allKeys&&!(l in Kp.skipKeywords))&&Mk(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function yLt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var _v=_(za=>{"use strict";Object.defineProperty(za,"__esModule",{value:!0});za.getSchemaRefs=za.resolveUrl=za.normalizeId=za._getFullPath=za.getFullPath=za.inlineRef=void 0;var ALt=Yt(),xLt=sc(),bLt=yve(),_Lt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function ELt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!F7(t):e?Ave(t)<=e:!1}za.inlineRef=ELt;var vLt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function F7(t){for(let e in t){if(vLt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(F7)||typeof r=="object"&&F7(r))return!0}return!1}function Ave(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!_Lt.has(r)&&(typeof t[r]=="object"&&(0,ALt.eachItem)(t[r],n=>e+=Ave(n)),e===1/0))return 1/0}return e}function xve(t,e="",r){r!==!1&&(e=JA(e));let n=t.parse(e);return bve(t,n)}za.getFullPath=xve;function bve(t,e){return t.serialize(e).split("#")[0]+"#"}za._getFullPath=bve;var SLt=/#\/?$/;function JA(t){return t?t.replace(SLt,""):""}za.normalizeId=JA;function ILt(t,e,r){return r=JA(r),t.resolve(e,r)}za.resolveUrl=ILt;var CLt=/^[a-z_][-a-z0-9._]*$/i;function TLt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=JA(t[r]||e),i={"":s},a=xve(n,s,!1),o={},c=new Set;return bLt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=JA(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==JA(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!CLt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!xLt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}za.getSchemaRefs=TLt});var XA=_(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});Vp.getData=Vp.KeywordCxt=Vp.validateFunctionCode=void 0;var Ive=tve(),_ve=bv(),j7=D7(),Wk=bv(),wLt=cve(),vv=pve(),q7=hve(),ot=Et(),Nt=dc(),RLt=_v(),Ud=Yt(),Ev=xv();function NLt(t){if(wve(t)&&(Rve(t),Tve(t))){PLt(t);return}Cve(t,()=>(0,Ive.topBoolOrEmptySchema)(t))}Vp.validateFunctionCode=NLt;function Cve({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${Eve(r,s)}`),kLt(t,s),t.code(i)}):t.func(e,(0,ot._)`${Nt.default.data}, ${OLt(s)}`,n.$async,()=>t.code(Eve(r,s)).code(i))}function OLt(t){return(0,ot._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,ot._)`, ${Nt.default.dynamicAnchors}={}`:ot.nil}}={}`}function kLt(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,ot._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,ot._)`""`),t.var(Nt.default.parentData,(0,ot._)`undefined`),t.var(Nt.default.parentDataProperty,(0,ot._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`{}`)})}function PLt(t){let{schema:e,opts:r,gen:n}=t;Cve(t,()=>{r.$comment&&e.$comment&&Ove(t),WLt(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&DLt(t),Nve(t),FLt(t)})}function DLt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function Eve(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function BLt(t,e){if(wve(t)&&(Rve(t),Tve(t))){LLt(t,e);return}(0,Ive.boolOrEmptySchema)(t,e)}function Tve({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function wve(t){return typeof t.schema!="boolean"}function LLt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&Ove(t),$Lt(t),ULt(t);let i=n.const("_errs",Nt.default.errors);Nve(t,i),n.var(e,(0,ot._)`${i} === ${Nt.default.errors}`)}function Rve(t){(0,Ud.checkUnknownRules)(t),MLt(t)}function Nve(t,e){if(t.opts.jtd)return vve(t,[],!1,e);let r=(0,_ve.getSchemaTypes)(t.schema),n=(0,_ve.coerceAndCheckDataType)(t,r);vve(t,r,!n,e)}function MLt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ud.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function WLt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ud.checkStrictMode)(t,"default is ignored in the schema root")}function $Lt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,RLt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function ULt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Ove({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function FLt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,ot._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&qLt(t),e.return((0,ot._)`${Nt.default.errors} === 0`))}function qLt({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function vve(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Ud.schemaHasRulesButRef)(i,l))){s.block(()=>Pve(t,"$ref",l.all.$ref.definition));return}c.jtd||jLt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,j7.shouldUseGroup)(i,f)&&(f.type?(s.if((0,Wk.checkDataType)(f.type,a,c.strictNumbers)),Sve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,Wk.reportTypeError)(t)),s.endIf()):Sve(t,f),o||s.if((0,ot._)`${Nt.default.errors} === ${n||0}`))}}function Sve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,wLt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,j7.shouldUseRule)(n,i)&&Pve(t,i.keyword,i.definition,e.type)})}function jLt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(QLt(t,e),t.opts.allowUnionTypes||HLt(t,e),GLt(t,t.dataTypes))}function QLt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{kve(t.dataTypes,r)||Q7(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),KLt(t,e)}}function HLt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Q7(t,"use allowUnionTypes to allow union type keyword")}function GLt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,j7.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>zLt(e,a))&&Q7(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function zLt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function kve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function KLt(t,e){let r=[];for(let n of t.dataTypes)kve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Q7(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ud.checkStrictMode)(t,e,t.opts.strictTypes)}var $k=class{constructor(e,r,n){if((0,vv.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ud.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Dve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,vv.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Ev.reportExtraError:Ev.reportError)(this,this.def.error,r)}$dataError(){(0,Ev.reportError)(this,this.def.$dataError||Ev.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ev.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,Wk.checkDataTypes)(c,r,i.opts.strictNumbers,Wk.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,q7.getSubschema)(this.it,e);(0,q7.extendSubschemaData)(n,this.it,e),(0,q7.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return BLt(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ud.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ud.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Vp.KeywordCxt=$k;function Pve(t,e,r,n){let s=new $k(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,vv.funcKeywordCode)(s,r):"macro"in r?(0,vv.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,vv.funcKeywordCode)(s,r)}var VLt=/^\/(?:[^~]|~0|~1)*$/,YLt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Dve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!VLt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=YLt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Ud.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Vp.getData=Dve});var Sv=_(G7=>{"use strict";Object.defineProperty(G7,"__esModule",{value:!0});var H7=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};G7.default=H7});var Fd=_(V7=>{"use strict";Object.defineProperty(V7,"__esModule",{value:!0});var z7=_v(),K7=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,z7.resolveUrl)(e,r,n),this.missingSchema=(0,z7.normalizeId)((0,z7.getFullPath)(e,this.missingRef))}};V7.default=K7});var mh=_(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});fc.resolveSchema=fc.getCompilingSchema=fc.resolveRef=fc.compileSchema=fc.SchemaEnv=void 0;var su=Et(),JLt=Sv(),ph=dc(),iu=_v(),Bve=Yt(),XLt=XA(),ZA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,iu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};fc.SchemaEnv=ZA;function J7(t){let e=Lve.call(this,t);if(e)return e;let r=(0,iu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new su.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:JLt.default,code:(0,su._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:ph.default.data,parentData:ph.default.parentData,parentDataProperty:ph.default.parentDataProperty,dataNames:[ph.default.data],dataPathArr:[su.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,su.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:su.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,su._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,XLt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(ph.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${ph.default.self}`,`${ph.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof su.Name?void 0:m,items:h instanceof su.Name?void 0:h,dynamicProps:m instanceof su.Name,dynamicItems:h instanceof su.Name},p.source&&(p.source.evaluated=(0,su.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}fc.compileSchema=J7;function ZLt(t,e,r){var n;r=(0,iu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=r5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new ZA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=e5t.call(this,i)}fc.resolveRef=ZLt;function e5t(t){return(0,iu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:J7.call(this,t)}function Lve(t){for(let e of this._compilations)if(t5t(e,t))return e}fc.getCompilingSchema=Lve;function t5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function r5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Uk.call(this,t,e)}function Uk(t,e){let r=this.opts.uriResolver.parse(e),n=(0,iu._getFullPath)(this.opts.uriResolver,r),s=(0,iu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Y7.call(this,r,t);let i=(0,iu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=Uk.call(this,t,a);return typeof o?.schema!="object"?void 0:Y7.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||J7.call(this,a),i===(0,iu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,iu.resolveUrl)(this.opts.uriResolver,s,u)),new ZA({schema:o,schemaId:c,root:t,baseId:s})}return Y7.call(this,r,a)}}fc.resolveSchema=Uk;var n5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Y7(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Bve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!n5t.has(o)&&u&&(e=(0,iu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,Bve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,iu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Uk.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new ZA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var Mve=_((MUr,s5t)=>{s5t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Z7=_((WUr,Fve)=>{"use strict";var i5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),$ve=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function X7(t){let e="",r=0,n=0;for(n=0;n<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 a5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Wve(t){return t.length=0,!0}function o5t(t,e,r){if(t.length){let n=X7(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function c5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=o5t;for(let c=0;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=Wve}else{s.push(u);continue}}return s.length&&(o===Wve?r.zone=s.join(""):a?n.push(s.join("")):n.push(X7(s))),r.address=n.join(""),r}function Uve(t){if(u5t(t,":")<2)return{host:t,isIPV6:!1};let e=c5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function u5t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function l5t(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 d5t(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 f5t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!$ve(r)){let n=Uve(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}Fve.exports={nonSimpleDomain:a5t,recomposeAuthority:f5t,normalizeComponentEncoding:d5t,removeDotSegments:l5t,isIPv4:$ve,isUUID:i5t,normalizeIPv6:Uve,stringArrayToHexStripped:X7}});var Gve=_(($Ur,Hve)=>{"use strict";var{isUUID:p5t}=Z7(),m5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,h5t=["http","https","ws","wss","urn","urn:uuid"];function g5t(t){return h5t.indexOf(t)!==-1}function e9(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function qve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function jve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function y5t(t){return t.secure=e9(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function A5t(t){if((t.port===(e9(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function x5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(m5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=t9(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function b5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=t9(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function _5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!p5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function E5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Qve={scheme:"http",domainHost:!0,parse:qve,serialize:jve},v5t={scheme:"https",domainHost:Qve.domainHost,parse:qve,serialize:jve},Fk={scheme:"ws",domainHost:!0,parse:y5t,serialize:A5t},S5t={scheme:"wss",domainHost:Fk.domainHost,parse:Fk.parse,serialize:Fk.serialize},I5t={scheme:"urn",parse:x5t,serialize:b5t,skipNormalize:!0},C5t={scheme:"urn:uuid",parse:_5t,serialize:E5t,skipNormalize:!0},qk={http:Qve,https:v5t,ws:Fk,wss:S5t,urn:I5t,"urn:uuid":C5t};Object.setPrototypeOf(qk,null);function t9(t){return t&&(qk[t]||qk[t.toLowerCase()])||void 0}Hve.exports={wsIsSecure:e9,SCHEMES:qk,isValidSchemeName:g5t,getSchemeHandler:t9}});var Vve=_((UUr,Qk)=>{"use strict";var{normalizeIPv6:T5t,removeDotSegments:Iv,recomposeAuthority:w5t,normalizeComponentEncoding:jk,isIPv4:R5t,nonSimpleDomain:N5t}=Z7(),{SCHEMES:O5t,getSchemeHandler:zve}=Gve();function k5t(t,e){return typeof t=="string"?t=ll(qd(t,e),e):typeof t=="object"&&(t=qd(ll(t,e),e)),t}function P5t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Kve(qd(t,n),qd(e,n),n,!0);return n.skipEscape=!0,ll(s,n)}function Kve(t,e,r,n){let s={};return n||(t=qd(ll(t,r),r),e=qd(ll(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Iv(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Iv(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Iv(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=Iv(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function D5t(t,e,r){return typeof t=="string"?(t=unescape(t),t=ll(jk(qd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ll(jk(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=ll(jk(qd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ll(jk(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function ll(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=zve(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=w5t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=Iv(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var B5t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function qd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(B5t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(R5t(n.host)===!1){let c=T5t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=zve(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&N5t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var r9={SCHEMES:O5t,normalize:k5t,resolve:P5t,resolveComponent:Kve,equal:D5t,serialize:ll,parse:qd};Qk.exports=r9;Qk.exports.default=r9;Qk.exports.fastUri=r9});var Jve=_(n9=>{"use strict";Object.defineProperty(n9,"__esModule",{value:!0});var Yve=Vve();Yve.code='require("ajv/dist/runtime/uri").default';n9.default=Yve});var a9=_(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.CodeGen=xi.Name=xi.nil=xi.stringify=xi.str=xi._=xi.KeywordCxt=void 0;var L5t=XA();Object.defineProperty(xi,"KeywordCxt",{enumerable:!0,get:function(){return L5t.KeywordCxt}});var ex=Et();Object.defineProperty(xi,"_",{enumerable:!0,get:function(){return ex._}});Object.defineProperty(xi,"str",{enumerable:!0,get:function(){return ex.str}});Object.defineProperty(xi,"stringify",{enumerable:!0,get:function(){return ex.stringify}});Object.defineProperty(xi,"nil",{enumerable:!0,get:function(){return ex.nil}});Object.defineProperty(xi,"Name",{enumerable:!0,get:function(){return ex.Name}});Object.defineProperty(xi,"CodeGen",{enumerable:!0,get:function(){return ex.CodeGen}});var M5t=Sv(),rSe=Fd(),W5t=P7(),Cv=mh(),$5t=Et(),Tv=_v(),Hk=bv(),i9=Yt(),Xve=Mve(),U5t=Jve(),nSe=(t,e)=>new RegExp(t,e);nSe.code="new RegExp";var F5t=["removeAdditional","useDefaults","coerceTypes"],q5t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),j5t={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Q5t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Zve=200;function H5t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:nSe,L=(s=t.uriResolver)!==null&&s!==void 0?s:U5t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Zve,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:Zve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var wv=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...H5t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new $5t.ValueScope({scope:{},prefixes:q5t,es5:r,lines:n}),this.logger=J5t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,W5t.getRules)(),eSe.call(this,j5t,e,"NOT SUPPORTED"),eSe.call(this,Q5t,e,"DEPRECATED","warn"),this._metaOpts=V5t.call(this),e.formats&&z5t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&K5t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),G5t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=Xve;n==="id"&&(s={...Xve},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof rSe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Tv.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=tSe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Cv.SchemaEnv({schema:{},schemaId:n});if(r=Cv.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=tSe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Tv.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Z5t.call(this,n,r),!r)return(0,i9.eachItem)(n,i=>s9.call(this,i)),this;t6t.call(this,r);let s={...r,type:(0,Hk.getJSONTypes)(r.type),schemaType:(0,Hk.getJSONTypes)(r.schemaType)};return(0,i9.eachItem)(n,s.type.length===0?i=>s9.call(this,i,s):i=>s.type.forEach(a=>s9.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=sSe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Tv.normalizeId)(a||n);let u=Tv.getSchemaRefs.call(this,e,n);return c=new Cv.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Cv.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Cv.compileSchema.call(this,e)}finally{this.opts=r}}};wv.ValidationError=M5t.default;wv.MissingRefError=rSe.default;xi.default=wv;function eSe(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function tSe(t){return t=(0,Tv.normalizeId)(t),this.schemas[t]||this.refs[t]}function G5t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function z5t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function K5t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function V5t(){let t={...this.opts};for(let e of F5t)delete t[e];return t}var Y5t={log(){},warn(){},error(){}};function J5t(t){if(t===!1)return Y5t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var X5t=/^[a-z_$][a-z0-9_$:-]*$/i;function Z5t(t,e){let{RULES:r}=this;if((0,i9.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!X5t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function s9(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,Hk.getJSONTypes)(e.type),schemaType:(0,Hk.getJSONTypes)(e.schemaType)}};e.before?e6t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function e6t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function t6t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=sSe(e)),t.validateSchema=this.compile(e,!0))}var r6t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function sSe(t){return{anyOf:[t,r6t]}}});var iSe=_(o9=>{"use strict";Object.defineProperty(o9,"__esModule",{value:!0});var n6t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};o9.default=n6t});var c9=_(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.callRef=hh.getValidate=void 0;var s6t=Fd(),aSe=Ai(),Ka=Et(),tx=dc(),oSe=mh(),Gk=Yt(),i6t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=oSe.resolveRef.call(c,u,s,r);if(l===void 0)throw new s6t.default(n.opts.uriResolver,s,r);if(l instanceof oSe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return zk(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return zk(t,(0,Ka._)`${m}.validate`,u,u.$async)}function f(m){let h=cSe(t,m);zk(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Ka.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Ka.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function cSe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ka._)`${r.scopeValue("wrapper",{ref:e})}.validate`}hh.getValidate=cSe;function zk(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?tx.default.this:Ka.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Ka._)`await ${(0,aSe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Ka._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,aSe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Ka._)`${m}.errors`;s.assign(tx.default.vErrors,(0,Ka._)`${tx.default.vErrors} === null ? ${h} : ${tx.default.vErrors}.concat(${h})`),s.assign(tx.default.errors,(0,Ka._)`${tx.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=Gk.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Ka._)`${m}.evaluated.props`);i.props=Gk.mergeEvaluated.props(s,g,i.props,Ka.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=Gk.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Ka._)`${m}.evaluated.items`);i.items=Gk.mergeEvaluated.items(s,g,i.items,Ka.Name)}}}hh.callRef=zk;hh.default=i6t});var uSe=_(u9=>{"use strict";Object.defineProperty(u9,"__esModule",{value:!0});var a6t=iSe(),o6t=c9(),c6t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",a6t.default,o6t.default];u9.default=c6t});var lSe=_(l9=>{"use strict";Object.defineProperty(l9,"__esModule",{value:!0});var Kk=Et(),Yp=Kk.operators,Vk={maximum:{okStr:"<=",ok:Yp.LTE,fail:Yp.GT},minimum:{okStr:">=",ok:Yp.GTE,fail:Yp.LT},exclusiveMaximum:{okStr:"<",ok:Yp.LT,fail:Yp.GTE},exclusiveMinimum:{okStr:">",ok:Yp.GT,fail:Yp.LTE}},u6t={message:({keyword:t,schemaCode:e})=>(0,Kk.str)`must be ${Vk[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Kk._)`{comparison: ${Vk[t].okStr}, limit: ${e}}`},l6t={keyword:Object.keys(Vk),type:"number",schemaType:"number",$data:!0,error:u6t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Kk._)`${r} ${Vk[e].fail} ${n} || isNaN(${r})`)}};l9.default=l6t});var dSe=_(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var Rv=Et(),d6t={message:({schemaCode:t})=>(0,Rv.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Rv._)`{multipleOf: ${t}}`},f6t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:d6t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,Rv._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,Rv._)`${a} !== parseInt(${a})`;t.fail$data((0,Rv._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};d9.default=f6t});var pSe=_(f9=>{"use strict";Object.defineProperty(f9,"__esModule",{value:!0});function fSe(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}f9.default=fSe;fSe.code='require("ajv/dist/runtime/ucs2length").default'});var mSe=_(p9=>{"use strict";Object.defineProperty(p9,"__esModule",{value:!0});var gh=Et(),p6t=Yt(),m6t=pSe(),h6t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,gh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,gh._)`{limit: ${t}}`},g6t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:h6t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?gh.operators.GT:gh.operators.LT,a=s.opts.unicode===!1?(0,gh._)`${r}.length`:(0,gh._)`${(0,p6t.useFunc)(t.gen,m6t.default)}(${r})`;t.fail$data((0,gh._)`${a} ${i} ${n}`)}};p9.default=g6t});var hSe=_(m9=>{"use strict";Object.defineProperty(m9,"__esModule",{value:!0});var y6t=Ai(),Yk=Et(),A6t={message:({schemaCode:t})=>(0,Yk.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Yk._)`{pattern: ${t}}`},x6t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:A6t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,Yk._)`(new RegExp(${s}, ${a}))`:(0,y6t.usePattern)(t,n);t.fail$data((0,Yk._)`!${o}.test(${e})`)}};m9.default=x6t});var gSe=_(h9=>{"use strict";Object.defineProperty(h9,"__esModule",{value:!0});var Nv=Et(),b6t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Nv.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Nv._)`{limit: ${t}}`},_6t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:b6t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?Nv.operators.GT:Nv.operators.LT;t.fail$data((0,Nv._)`Object.keys(${r}).length ${s} ${n}`)}};h9.default=_6t});var ySe=_(g9=>{"use strict";Object.defineProperty(g9,"__esModule",{value:!0});var Ov=Ai(),kv=Et(),E6t=Yt(),v6t={message:({params:{missingProperty:t}})=>(0,kv.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,kv._)`{missingProperty: ${t}}`},S6t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:v6t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,E6t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(kv.nil,d);else for(let p of r)(0,Ov.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,Ov.checkMissingProp)(t,r,p)),(0,Ov.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,Ov.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,Ov.propertyInData)(e,s,p,o.ownProperties)),e.if((0,kv.not)(m),()=>{t.error(),e.break()})},kv.nil)}}};g9.default=S6t});var ASe=_(y9=>{"use strict";Object.defineProperty(y9,"__esModule",{value:!0});var Pv=Et(),I6t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Pv.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Pv._)`{limit: ${t}}`},C6t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:I6t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?Pv.operators.GT:Pv.operators.LT;t.fail$data((0,Pv._)`${r}.length ${s} ${n}`)}};y9.default=C6t});var Jk=_(A9=>{"use strict";Object.defineProperty(A9,"__esModule",{value:!0});var xSe=sc();xSe.code='require("ajv/dist/runtime/equal").default';A9.default=xSe});var bSe=_(b9=>{"use strict";Object.defineProperty(b9,"__esModule",{value:!0});var x9=bv(),bi=Et(),T6t=Yt(),w6t=Jk(),R6t={message:({params:{i:t,j:e}})=>(0,bi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,bi._)`{i: ${t}, j: ${e}}`},N6t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:R6t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,x9.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,bi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,bi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,bi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,x9.checkDataTypes)(u,y,o.opts.strictNumbers,x9.DataType.Wrong),b=e.const("indices",(0,bi._)`{}`);e.for((0,bi._)`;${m}--;`,()=>{e.let(y,(0,bi._)`${r}[${m}]`),e.if(g,(0,bi._)`continue`),u.length>1&&e.if((0,bi._)`typeof ${y} == "string"`,(0,bi._)`${y} += "_"`),e.if((0,bi._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,bi._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,bi._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,T6t.useFunc)(e,w6t.default),g=e.name("outer");e.label(g).for((0,bi._)`;${m}--;`,()=>e.for((0,bi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,bi._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};b9.default=N6t});var _Se=_(E9=>{"use strict";Object.defineProperty(E9,"__esModule",{value:!0});var _9=Et(),O6t=Yt(),k6t=Jk(),P6t={message:"must be equal to constant",params:({schemaCode:t})=>(0,_9._)`{allowedValue: ${t}}`},D6t={keyword:"const",$data:!0,error:P6t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,_9._)`!${(0,O6t.useFunc)(e,k6t.default)}(${r}, ${s})`):t.fail((0,_9._)`${i} !== ${r}`)}};E9.default=D6t});var ESe=_(v9=>{"use strict";Object.defineProperty(v9,"__esModule",{value:!0});var Dv=Et(),B6t=Yt(),L6t=Jk(),M6t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Dv._)`{allowedValues: ${t}}`},W6t={keyword:"enum",schemaType:"array",$data:!0,error:M6t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,B6t.useFunc)(e,L6t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,Dv.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,Dv._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,Dv._)`${u()}(${r}, ${p}[${m}])`:(0,Dv._)`${r} === ${h}`}}};v9.default=W6t});var vSe=_(S9=>{"use strict";Object.defineProperty(S9,"__esModule",{value:!0});var $6t=lSe(),U6t=dSe(),F6t=mSe(),q6t=hSe(),j6t=gSe(),Q6t=ySe(),H6t=ASe(),G6t=bSe(),z6t=_Se(),K6t=ESe(),V6t=[$6t.default,U6t.default,F6t.default,q6t.default,j6t.default,Q6t.default,H6t.default,G6t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},z6t.default,K6t.default];S9.default=V6t});var C9=_(Bv=>{"use strict";Object.defineProperty(Bv,"__esModule",{value:!0});Bv.validateAdditionalItems=void 0;var yh=Et(),I9=Yt(),Y6t={message:({params:{len:t}})=>(0,yh.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,yh._)`{limit: ${t}}`},J6t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Y6t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,I9.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}SSe(t,n)}};function SSe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,yh._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,yh._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,I9.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,yh._)`${o} <= ${e.length}`);r.if((0,yh.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:I9.Type.Num},u),a.allErrors||r.if((0,yh.not)(u),()=>r.break())})}}Bv.validateAdditionalItems=SSe;Bv.default=J6t});var T9=_(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.validateTuple=void 0;var ISe=Et(),Xk=Yt(),X6t=Ai(),Z6t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return CSe(t,"additionalItems",e);r.items=!0,!(0,Xk.alwaysValidSchema)(r,e)&&t.ok((0,X6t.validateArray)(t))}};function CSe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Xk.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,ISe._)`${i}.length`);r.forEach((d,f)=>{(0,Xk.alwaysValidSchema)(o,d)||(n.if((0,ISe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,Xk.checkStrictMode)(o,y,f.strictTuples)}}}Lv.validateTuple=CSe;Lv.default=Z6t});var TSe=_(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var eMt=T9(),tMt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,eMt.validateTuple)(t,"items")};w9.default=tMt});var RSe=_(R9=>{"use strict";Object.defineProperty(R9,"__esModule",{value:!0});var wSe=Et(),rMt=Yt(),nMt=Ai(),sMt=C9(),iMt={message:({params:{len:t}})=>(0,wSe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,wSe._)`{limit: ${t}}`},aMt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:iMt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,rMt.alwaysValidSchema)(n,e)&&(s?(0,sMt.validateAdditionalItems)(t,s):t.ok((0,nMt.validateArray)(t)))}};R9.default=aMt});var NSe=_(N9=>{"use strict";Object.defineProperty(N9,"__esModule",{value:!0});var pc=Et(),Zk=Yt(),oMt={message:({params:{min:t,max:e}})=>e===void 0?(0,pc.str)`must contain at least ${t} valid item(s)`:(0,pc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,pc._)`{minContains: ${t}}`:(0,pc._)`{minContains: ${t}, maxContains: ${e}}`},cMt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:oMt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,pc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Zk.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Zk.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Zk.alwaysValidSchema)(i,r)){let h=(0,pc._)`${l} >= ${a}`;o!==void 0&&(h=(0,pc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,pc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:Zk.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,pc._)`${h}++`),o===void 0?e.if((0,pc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,pc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,pc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};N9.default=cMt});var PSe=_(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.validateSchemaDeps=dl.validatePropertyDeps=dl.error=void 0;var O9=Et(),uMt=Yt(),Mv=Ai();dl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,O9.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,O9._)`{property: ${t},
|
|
missingProperty: ${n},
|
|
depsCount: ${e},
|
|
deps: ${r}}`};var lMt={keyword:"dependencies",type:"object",schemaType:"object",error:dl.error,code(t){let[e,r]=dMt(t);OSe(t,e),kSe(t,r)}};function dMt({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 OSe(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,Mv.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,Mv.checkReportMissingProp)(t,u)}):(r.if((0,O9._)`${c} && (${(0,Mv.checkMissingProp)(t,o,i)})`),(0,Mv.reportMissingProp)(t,i),r.else())}}dl.validatePropertyDeps=OSe;function kSe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,uMt.alwaysValidSchema)(i,e[o])||(r.if((0,Mv.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}dl.validateSchemaDeps=kSe;dl.default=lMt});var BSe=_(k9=>{"use strict";Object.defineProperty(k9,"__esModule",{value:!0});var DSe=Et(),fMt=Yt(),pMt={message:"property name must be valid",params:({params:t})=>(0,DSe._)`{propertyName: ${t.propertyName}}`},mMt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:pMt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,fMt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,DSe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};k9.default=mMt});var D9=_(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});var eP=Ai(),au=Et(),hMt=dc(),tP=Yt(),gMt={message:"must NOT have additional properties",params:({params:t})=>(0,au._)`{additionalProperty: ${t.additionalProperty}}`},yMt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:gMt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,tP.alwaysValidSchema)(a,r))return;let u=(0,eP.allSchemaProperties)(n.properties),l=(0,eP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,au._)`${i} === ${hMt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,tP.schemaRefOrVal)(a,n.properties,"properties");g=(0,eP.isOwnProperty)(e,b,y)}else u.length?g=(0,au.or)(...u.map(b=>(0,au._)`${y} === ${b}`)):g=au.nil;return l.length&&(g=(0,au.or)(g,...l.map(b=>(0,au._)`${(0,eP.usePattern)(t,b)}.test(${y})`))),(0,au.not)(g)}function p(y){e.code((0,au._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,tP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,au.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,au.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:tP.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};P9.default=yMt});var WSe=_(L9=>{"use strict";Object.defineProperty(L9,"__esModule",{value:!0});var AMt=XA(),LSe=Ai(),B9=Yt(),MSe=D9(),xMt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&MSe.default.code(new AMt.KeywordCxt(i,MSe.default,"additionalProperties"));let a=(0,LSe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=B9.mergeEvaluated.props(e,(0,B9.toHash)(a),i.props));let o=a.filter(d=>!(0,B9.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,LSe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};L9.default=xMt});var qSe=_(M9=>{"use strict";Object.defineProperty(M9,"__esModule",{value:!0});var $Se=Ai(),rP=Et(),USe=Yt(),FSe=Yt(),bMt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,$Se.allSchemaProperties)(r),c=o.filter(h=>(0,USe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof rP.Name)&&(i.props=(0,FSe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,USe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,rP._)`${(0,$Se.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:FSe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,rP._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,rP.not)(l),()=>e.break())})})}}};M9.default=bMt});var jSe=_(W9=>{"use strict";Object.defineProperty(W9,"__esModule",{value:!0});var _Mt=Yt(),EMt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,_Mt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};W9.default=EMt});var QSe=_($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});var vMt=Ai(),SMt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:vMt.validateUnion,error:{message:"must match a schema in anyOf"}};$9.default=SMt});var HSe=_(U9=>{"use strict";Object.defineProperty(U9,"__esModule",{value:!0});var nP=Et(),IMt=Yt(),CMt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,nP._)`{passingSchemas: ${t.passing}}`},TMt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:CMt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,IMt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,nP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,nP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,nP.Name)})})}}};U9.default=TMt});var GSe=_(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});var wMt=Yt(),RMt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,wMt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};F9.default=RMt});var VSe=_(q9=>{"use strict";Object.defineProperty(q9,"__esModule",{value:!0});var sP=Et(),KSe=Yt(),NMt={message:({params:t})=>(0,sP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,sP._)`{failingKeyword: ${t.ifClause}}`},OMt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:NMt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,KSe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=zSe(n,"then"),i=zSe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,sP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,sP._)`${l}`):t.setParams({ifClause:l})}}}};function zSe(t,e){let r=t.schema[e];return r!==void 0&&!(0,KSe.alwaysValidSchema)(t,r)}q9.default=OMt});var YSe=_(j9=>{"use strict";Object.defineProperty(j9,"__esModule",{value:!0});var kMt=Yt(),PMt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,kMt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};j9.default=PMt});var JSe=_(Q9=>{"use strict";Object.defineProperty(Q9,"__esModule",{value:!0});var DMt=C9(),BMt=TSe(),LMt=T9(),MMt=RSe(),WMt=NSe(),$Mt=PSe(),UMt=BSe(),FMt=D9(),qMt=WSe(),jMt=qSe(),QMt=jSe(),HMt=QSe(),GMt=HSe(),zMt=GSe(),KMt=VSe(),VMt=YSe();function YMt(t=!1){let e=[QMt.default,HMt.default,GMt.default,zMt.default,KMt.default,VMt.default,UMt.default,FMt.default,$Mt.default,qMt.default,jMt.default];return t?e.push(BMt.default,MMt.default):e.push(DMt.default,LMt.default),e.push(WMt.default),e}Q9.default=YMt});var XSe=_(H9=>{"use strict";Object.defineProperty(H9,"__esModule",{value:!0});var fs=Et(),JMt={message:({schemaCode:t})=>(0,fs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,fs._)`{format: ${t}}`},XMt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:JMt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,fs._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,fs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,fs._)`${h}.type || "string"`).assign(g,(0,fs._)`${h}.validate`),()=>r.assign(y,(0,fs._)`"string"`).assign(g,h)),t.fail$data((0,fs.or)(b(),x()));function b(){return c.strictSchema===!1?fs.nil:(0,fs._)`${a} && !${g}`}function x(){let A=l.$async?(0,fs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,fs._)`${g}(${n})`,S=(0,fs._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,fs._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,fs.regexpCode)(S):c.code.formats?(0,fs._)`${c.code.formats}${(0,fs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,fs._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,fs._)`await ${g}(${n})`}return typeof y=="function"?(0,fs._)`${g}(${n})`:(0,fs._)`${g}.test(${n})`}}}};H9.default=XMt});var ZSe=_(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});var ZMt=XSe(),eWt=[ZMt.default];G9.default=eWt});var eIe=_(rx=>{"use strict";Object.defineProperty(rx,"__esModule",{value:!0});rx.contentVocabulary=rx.metadataVocabulary=void 0;rx.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];rx.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var rIe=_(z9=>{"use strict";Object.defineProperty(z9,"__esModule",{value:!0});var tWt=uSe(),rWt=vSe(),nWt=JSe(),sWt=ZSe(),tIe=eIe(),iWt=[tWt.default,rWt.default,(0,nWt.default)(),sWt.default,tIe.metadataVocabulary,tIe.contentVocabulary];z9.default=iWt});var K9=_(iP=>{"use strict";Object.defineProperty(iP,"__esModule",{value:!0});iP.DiscrError=void 0;var nIe;(function(t){t.Tag="tag",t.Mapping="mapping"})(nIe||(iP.DiscrError=nIe={}))});var iIe=_(Y9=>{"use strict";Object.defineProperty(Y9,"__esModule",{value:!0});var nx=Et(),V9=K9(),sIe=mh(),aWt=Fd(),oWt=Yt(),cWt={message:({params:{discrError:t,tagName:e}})=>t===V9.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,nx._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},uWt={keyword:"discriminator",type:"object",schemaType:"object",error:cWt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,nx._)`${r}${(0,nx.getProperty)(o)}`);e.if((0,nx._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:V9.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,nx._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:V9.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,nx.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A<a.length;A++){let S=a[A];if(S?.$ref&&!(0,oWt.schemaHasRulesButRef)(S,i.self.RULES)){let R=S.$ref;if(S=sIe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),S instanceof sIe.SchemaEnv&&(S=S.schema),S===void 0)throw new aWt.default(i.opts.uriResolver,i.baseId,R)}let I=(p=S?.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}"`);y=y&&(h||g(S)),b(I,A)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:A}){return Array.isArray(A)&&A.includes(o)}function b(A,S){if(A.const)x(A.const,S);else if(A.enum)for(let I of A.enum)x(I,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function x(A,S){if(typeof A!="string"||A in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[A]=S}}}};Y9.default=uWt});var aIe=_((wFr,lWt)=>{lWt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var cIe=_((Pn,J9)=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.MissingRefError=Pn.ValidationError=Pn.CodeGen=Pn.Name=Pn.nil=Pn.stringify=Pn.str=Pn._=Pn.KeywordCxt=Pn.Ajv=void 0;var dWt=a9(),fWt=rIe(),pWt=iIe(),oIe=aIe(),mWt=["/properties"],aP="http://json-schema.org/draft-07/schema",sx=class extends dWt.default{_addVocabularies(){super._addVocabularies(),fWt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(pWt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(oIe,mWt):oIe;this.addMetaSchema(e,aP,!1),this.refs["http://json-schema.org/schema"]=aP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(aP)?aP:void 0)}};Pn.Ajv=sx;J9.exports=Pn=sx;J9.exports.Ajv=sx;Object.defineProperty(Pn,"__esModule",{value:!0});Pn.default=sx;var hWt=XA();Object.defineProperty(Pn,"KeywordCxt",{enumerable:!0,get:function(){return hWt.KeywordCxt}});var ix=Et();Object.defineProperty(Pn,"_",{enumerable:!0,get:function(){return ix._}});Object.defineProperty(Pn,"str",{enumerable:!0,get:function(){return ix.str}});Object.defineProperty(Pn,"stringify",{enumerable:!0,get:function(){return ix.stringify}});Object.defineProperty(Pn,"nil",{enumerable:!0,get:function(){return ix.nil}});Object.defineProperty(Pn,"Name",{enumerable:!0,get:function(){return ix.Name}});Object.defineProperty(Pn,"CodeGen",{enumerable:!0,get:function(){return ix.CodeGen}});var gWt=Sv();Object.defineProperty(Pn,"ValidationError",{enumerable:!0,get:function(){return gWt.default}});var yWt=Fd();Object.defineProperty(Pn,"MissingRefError",{enumerable:!0,get:function(){return yWt.default}})});var jd=_(Wv=>{"use strict";Object.defineProperty(Wv,"__esModule",{value:!0});Wv.checkMetadata=void 0;var AWt=Yt(),xWt={keyword:"metadata",schemaType:"object",code(t){uIe(t);let{gen:e,schema:r,it:n}=t;if((0,AWt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function uIe({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}Wv.checkMetadata=uIe;Wv.default=xWt});var oP=_(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.hasRef=void 0;var lIe=mh(),$v=Et(),bWt=Fd(),dIe=dc(),fIe=c9(),_Wt=jd(),EWt={keyword:"ref",schemaType:"string",code(t){(0,_Wt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,$v._)`${r} === null`),e.if((0,$v.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new bWt.default(i.opts.uriResolver,"",n,`No definition ${n}`);X9(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=lIe.compileSchema.call(i.self,new lIe.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,fIe.getValidate)(t,f),m=e.const("_errs",dIe.default.errors);(0,fIe.callRef)(t,p,f,f.$async),e.assign(o,(0,$v._)`${m} === ${dIe.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,$v.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:$v.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function X9(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&X9(r))return!0}return!1}Uv.hasRef=X9;Uv.default=EWt});var eq=_(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});var vWt=/t|\s/i,SWt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,IWt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,CWt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function mIe(t,e){let r=t.split(vWt);return r.length===2&&pIe(r[0])&&TWt(r[1])||e&&r.length===1&&pIe(r[0])}Z9.default=mIe;function pIe(t){let e=SWt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=CWt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function TWt(t){let e=IWt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}mIe.code='require("ajv/dist/runtime/timestamp").default'});var ax=_(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.typeErrorParams=Jp.typeErrorMessage=Jp.typeError=void 0;var wWt=Et();function RWt(t){return{message:e=>hIe(e,t),params:e=>gIe(e,t)}}Jp.typeError=RWt;function hIe({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Jp.typeErrorMessage=hIe;function gIe({parentSchema:t},e){return(0,wWt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Jp.typeErrorParams=gIe});var tq=_(ox=>{"use strict";Object.defineProperty(ox,"__esModule",{value:!0});ox.intRange=void 0;var No=Et(),NWt=eq(),OWt=Yt(),kWt=jd(),yIe=ax();ox.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var PWt={message:t=>(0,yIe.typeErrorMessage)(t,t.schema),params:t=>(0,yIe.typeErrorParams)(t,t.schema)};function DWt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,No._)`${r} instanceof Date `;let a=(0,OWt.useFunc)(e,NWt.default),o=i?(0,No._)`, true`:No.nil,c=(0,No._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,No.or)((0,No._)`${r} instanceof Date`,c)}var BWt={keyword:"type",schemaType:"string",error:PWt,code(t){(0,kWt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,No._)`typeof ${e} == ${r}`;break;case"timestamp":{i=DWt(t);break}case"float32":case"float64":i=(0,No._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,No._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,No._)`${i} && ${e} >= 0`);else{let[o,c]=ox.intRange[a];i=(0,No._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,No.or)((0,No._)`${e} === null`,i):i)}};ox.default=BWt});var ux=_(cx=>{"use strict";Object.defineProperty(cx,"__esModule",{value:!0});cx.checkNullableObject=cx.checkNullable=void 0;var cP=Et();function AIe({gen:t,data:e,parentSchema:r},n=cP.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,cP._)`${e} === null`),n=(0,cP.not)(s)):t.let(s,!1),[s,n]}cx.checkNullable=AIe;function LWt(t,e){let[r,n]=AIe(t,e);return[r,(0,cP._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}cx.checkNullableObject=LWt});var xIe=_(rq=>{"use strict";Object.defineProperty(rq,"__esModule",{value:!0});var Xp=Et(),MWt=jd(),WWt=ux(),$Wt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Xp._)`{allowedValues: ${t}}`},UWt={keyword:"enum",schemaType:"array",error:$Wt,code(t){(0,MWt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,Xp._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,WWt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Xp.and)(c,(0,Xp.or)(...n.map(l=>(0,Xp._)`${r} === ${l}`))),i.nullable&&(o=(0,Xp.or)((0,Xp._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Xp._)`${o} = ${r} === ${l}`,()=>e.break()))}}};rq.default=UWt});var _Ie=_(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});var FWt=Yt(),qWt=Ai(),bIe=Et(),jWt=jd(),QWt=ux(),HWt=ax(),GWt={keyword:"elements",schemaType:"object",error:(0,HWt.typeError)("array"),code(t){(0,jWt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,FWt.alwaysValidSchema)(s,n))return;let[i]=(0,QWt.checkNullable)(t);e.if((0,bIe.not)(i),()=>e.if((0,bIe._)`Array.isArray(${r})`,()=>e.assign(i,(0,qWt.validateArray)(t)),()=>t.error())),t.ok(i)}};nq.default=GWt});var iq=_(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});Zp.validateProperties=Zp.error=void 0;var sq=Ai(),EIe=Yt(),Qd=Et(),zWt=jd(),KWt=ux(),vIe=ax(),lx;(function(t){t.Additional="additional",t.Missing="missing"})(lx||(lx={}));Zp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===lx.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,vIe.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===lx.Additional?(0,Qd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,Qd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,vIe.typeErrorParams)(t,"object")}};var VWt={keyword:"properties",schemaType:"object",error:Zp.error,code:SIe};function SIe(t){(0,zWt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,KWt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let x=n.properties,A=n.optionalProperties;if(!(x&&A))return!1;for(let S in x)if(Object.prototype.hasOwnProperty.call(A,S))return!0;return!1}function m(x){let A=n[x],S=A?(0,sq.allSchemaProperties)(A):[];if(s.jtdDiscriminator&&S.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${x}`);let I=S.filter(R=>!(0,EIe.alwaysValidSchema)(s,A[R]));return[S,I]}function h(x,A,S){let I=e.var("valid");for(let w of x)e.if((0,sq.propertyInData)(e,r,w,s.opts.ownProperties),()=>y(w,A,I),()=>R(w)),t.ok(I);function R(w){S?(e.assign(I,!1),t.error(!1,{propError:lx.Missing,missingProperty:w},{schemaPath:w})):e.assign(I,!0)}}function y(x,A,S){t.subschema({keyword:A,schemaProp:x,dataProp:x},S)}function g(){e.forIn("key",r,x=>{let A=b(x,o,"properties",s.jtdDiscriminator),S=b(x,u,"optionalProperties"),I=A===!0?S:S===!0?A:(0,Qd.and)(A,S);e.if(I,()=>{s.opts.removeAdditional?e.code((0,Qd._)`delete ${r}[${x}]`):(t.error(!1,{propError:lx.Additional,additionalProperty:x},{instancePath:x,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(x,A,S,I){let R;if(A.length>8){let w=(0,EIe.schemaRefOrVal)(s,n[S],S);R=(0,Qd.not)((0,sq.isOwnProperty)(e,w,x)),I!==void 0&&(R=(0,Qd.and)(R,(0,Qd._)`${x} !== ${I}`))}else if(A.length||I!==void 0){let w=I===void 0?A:[I].concat(A);R=(0,Qd.and)(...w.map(N=>(0,Qd._)`${x} !== ${N}`))}else R=!0;return R}}Zp.validateProperties=SIe;Zp.default=VWt});var CIe=_(aq=>{"use strict";Object.defineProperty(aq,"__esModule",{value:!0});var IIe=iq(),YWt={keyword:"optionalProperties",schemaType:"object",error:IIe.error,code(t){t.parentSchema.properties||(0,IIe.validateProperties)(t)}};aq.default=YWt});var wIe=_(oq=>{"use strict";Object.defineProperty(oq,"__esModule",{value:!0});var Ah=Et(),JWt=jd(),XWt=ux(),TIe=ax(),uP=K9(),ZWt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===uP.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,TIe.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,Ah._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,TIe.typeErrorParams)(t,"object")}},e8t={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:ZWt,code(t){(0,JWt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,XWt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,Ah.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,Ah._)`${r}${(0,Ah.getProperty)(n)}`);e.if((0,Ah._)`${l} === undefined`),t.error(!1,{discrError:uP.DiscrError.Tag,tag:l}),e.elseIf((0,Ah._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:uP.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,Ah._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:uP.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};oq.default=e8t});var NIe=_(cq=>{"use strict";Object.defineProperty(cq,"__esModule",{value:!0});var RIe=Yt(),lP=Et(),t8t=jd(),r8t=ux(),n8t=ax(),s8t={keyword:"values",schemaType:"object",error:(0,n8t.typeError)("object"),code(t){(0,t8t.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,r8t.checkNullableObject)(t,r);(0,RIe.alwaysValidSchema)(s,n)?e.if((0,lP.not)((0,lP.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,lP.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:RIe.Type.Str},c),e.if((0,lP.not)(c),l)})}}}};cq.default=s8t});var OIe=_(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});var i8t=Ai(),a8t={keyword:"union",schemaType:"array",trackErrors:!0,code:i8t.validateUnion,error:{message:"must match a schema in union"}};uq.default=a8t});var kIe=_(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var o8t=oP(),c8t=tq(),u8t=xIe(),l8t=_Ie(),d8t=iq(),f8t=CIe(),p8t=wIe(),m8t=NIe(),h8t=OIe(),g8t=jd(),y8t=["definitions",o8t.default,c8t.default,u8t.default,l8t.default,d8t.default,f8t.default,p8t.default,m8t.default,h8t.default,g8t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];lq.default=y8t});var LIe=_(dq=>{"use strict";Object.defineProperty(dq,"__esModule",{value:!0});var Hd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},A8t=t=>({optionalProperties:Hd(t)}),x8t=t=>({properties:{ref:{type:"string"}},optionalProperties:Hd(t)}),b8t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Hd(t)}),_8t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Hd(t)}),E8t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:Hd(t)}),DIe=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Hd(t)}}),BIe=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Hd(t)}}),v8t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[DIe(!1),BIe(!1)]}}}},optionalProperties:Hd(t)}),S8t=t=>({properties:{values:{ref:"schema"}},optionalProperties:Hd(t)}),PIe=t=>({metadata:{union:[A8t,x8t,b8t,_8t,E8t,DIe,BIe,v8t,S8t].map(e=>e(t))}}),I8t={definitions:{schema:PIe(!1)},...PIe(!0)};dq.default=I8t});var fq=_(dP=>{"use strict";Object.defineProperty(dP,"__esModule",{value:!0});dP.jtdForms=void 0;dP.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var WIe=_(mq=>{"use strict";Object.defineProperty(mq,"__esModule",{value:!0});var pq=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,C8t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function MIe(t){return pq.lastIndex=0,'"'+(pq.test(t)?t.replace(pq,e=>{let r=C8t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}mq.default=MIe;MIe.code='require("ajv/dist/runtime/quote").default'});var QIe=_(gq=>{"use strict";Object.defineProperty(gq,"__esModule",{value:!0});var T8t=fq(),UIe=mh(),yr=Et(),w8t=Fd(),_n=dc(),R8t=Ai(),N8t=oP(),O8t=Yt(),k8t=WIe(),P8t={elements:B8t,values:L8t,discriminator:M8t,properties:$Ie,optionalProperties:$Ie,enum:Fv,type:W8t,ref:U8t};function FIe(t,e){let r=UIe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new yr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:_n.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,_n.default.data,!1,()=>{a.let(_n.default.json,(0,yr.str)``),qv(c),a.return(_n.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(_n.default.scope)}return ${l}`;let f=new Function(`${_n.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}gq.default=FIe;function qv(t){let e;for(let r of T8t.jtdForms)if(r in t.schema){e=r;break}D8t(t,e?P8t[e]:q8t)}function D8t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,yr._)`${s} === undefined || ${s} === null`,()=>r.add(_n.default.json,(0,yr._)`"null"`),()=>e(t))}function B8t(t){let{gen:e,schema:r,data:n}=t;e.add(_n.default.json,(0,yr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{hq(t,s),qv({...t,schema:r.elements,data:i})}),e.add(_n.default.json,(0,yr.str)`]`)}function L8t(t){let{gen:e,schema:r,data:n}=t;e.add(_n.default.json,(0,yr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>qIe(t,i,r.values,s)),e.add(_n.default.json,(0,yr.str)`}`)}function qIe(t,e,r,n){let{gen:s,data:i}=t;hq(t,n),Fv({...t,data:e}),s.add(_n.default.json,(0,yr.str)`:`);let a=s.const("value",(0,yr._)`${i}${(0,yr.getProperty)(e)}`);qv({...t,schema:r,data:a})}function M8t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(_n.default.json,(0,yr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,yr._)`${n}${(0,yr.getProperty)(s)}`);Fv({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,yr._)`${i} === ${a}`);let o=r.mapping[a];jIe({...t,schema:o},s)}e.endIf(),e.add(_n.default.json,(0,yr.str)`}`)}function $Ie(t){let{gen:e}=t;e.add(_n.default.json,(0,yr.str)`{`),jIe(t),e.add(_n.default.json,(0,yr.str)`}`)}function jIe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(_n.default.json,(0,yr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,yr.and)((0,yr._)`${b} !== undefined`,(0,R8t.isOwnProperty)(r,s,g)),()=>{hq(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(y(g,u),()=>qIe(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,yr._)`${s}${(0,yr.getProperty)(g)}`)}function h(g,b,x){r.add(_n.default.json,(0,yr.str)`${JSON.stringify(g)}:`),qv({...t,schema:b,data:x})}function y(g,b){return b.length?(0,yr.and)(...b.map(x=>(0,yr._)`${g} !== ${x}`)):!0}}function W8t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(_n.default.json,(0,yr._)`${n} ? "true" : "false"`);break;case"string":Fv(t);break;case"timestamp":e.if((0,yr._)`${n} instanceof Date`,()=>e.add(_n.default.json,(0,yr._)`'"' + ${n}.toISOString() + '"'`),()=>Fv(t));break;default:$8t(t)}}function Fv({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`${(0,O8t.useFunc)(t,k8t.default)}(${e})`)}function $8t({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`"" + ${e}`)}function U8t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new w8t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,N8t.hasRef)(c))return qv({...t,schema:c});let{root:u}=a,l=FIe.call(r,new UIe.SchemaEnv({schema:c,root:u}),s);e.add(_n.default.json,(0,yr._)`${F8t(e,l)}(${n})`)}function F8t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,yr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function q8t({gen:t,data:e}){t.add(_n.default.json,(0,yr._)`JSON.stringify(${e})`)}function hq({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(_n.default.json,(0,yr.str)`,`)):t.add(_n.default.json,(0,yr.str)`,`)}});var GIe=_(t0=>{"use strict";Object.defineProperty(t0,"__esModule",{value:!0});t0.parseJsonString=t0.parseJsonNumber=t0.parseJson=void 0;var j8t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Gd(t,e){let r;Gd.message=void 0;let n;e&&(t=t.slice(e));try{return Gd.position=e+t.length,JSON.parse(t)}catch(s){if(n=j8t.exec(s.message),!n){Gd.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Gd.position=e+r;try{return JSON.parse(t)}catch{Gd.message=`unexpected token ${i}`;return}}}t0.parseJson=Gd;Gd.message=void 0;Gd.position=0;Gd.code='require("ajv/dist/runtime/parseJson").parseJson';function zd(t,e,r){let n="",s;if(zd.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return zd.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return zd.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){zd.position=e,zd.message=e<t.length?`unexpected token ${t[e]}`:"unexpected end"}}t0.parseJsonNumber=zd;zd.message=void 0;zd.position=0;zd.code='require("ajv/dist/runtime/parseJson").parseJsonNumber';var HIe={b:"\b",f:"\f",n:`
|
|
`,r:"\r",t:" ",'"':'"',"/":"/","\\":"\\"},Q8t=97,H8t=48;function e0(t,e){let r="",n;for(e0.message=void 0;n=t[e++],n!=='"';)if(n==="\\")if(n=t[e],n in HIe)r+=HIe[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)-Q8t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-H8t;else{s(`unexpected token ${n}`);return}e++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return e0.position=e,r;function s(i){e0.position=e,e0.message=i}}t0.parseJsonString=e0;e0.message=void 0;e0.position=0;e0.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var nCe=_(Sq=>{"use strict";Object.defineProperty(Sq,"__esModule",{value:!0});var G8t=fq(),YIe=mh(),lt=Et(),z8t=Fd(),pr=dc(),K8t=Ai(),V8t=oP(),Y8t=tq(),xq=GIe(),JIe=Yt(),J8t=eq(),X8t={elements:r$t,values:n$t,discriminator:i$t,properties:zIe,optionalProperties:zIe,enum:o$t,type:a$t,ref:c$t};function XIe(t,e){let r=YIe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new lt.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:pr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,Z8t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(pr.default.scope)}return ${l}`;let f=new Function(`${pr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}Sq.default=XIe;var Aq=(0,lt._)`undefined`;function Z8t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,lt._)`${pr.default.json}, ${pr.default.jsonPos}, ${pr.default.jsonPart}`,!1,()=>{e.let(pr.default.data),e.let(n),e.assign((0,lt._)`${r}.message`,Aq),e.assign((0,lt._)`${r}.position`,Aq),e.assign(pr.default.jsonPos,(0,lt._)`${pr.default.jsonPos} || 0`),e.const(pr.default.jsonLen,(0,lt._)`${pr.default.json}.length`),fP(t),vq(t),e.if(pr.default.jsonPart,()=>{e.assign((0,lt._)`${r}.position`,pr.default.jsonPos),e.return(pr.default.data)}),e.if((0,lt._)`${pr.default.jsonPos} === ${pr.default.jsonLen}`,()=>e.return(pr.default.data)),dx(t)})}function fP(t){let e;for(let r of G8t.jtdForms)if(r in t.schema){e=r;break}e?t$t(t,X8t[e]):_q(t)}var e$t=VIe(!0,VIe(!1,dx));function t$t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);jv(t,"null",e,()=>r.assign(s,null))}function r$t(t){let{gen:e,schema:r,data:n}=t;fl(t,"[");let s=e.let("i",0);e.assign(n,(0,lt._)`[]`),bq(t,"]",()=>{let i=e.let("el");fP({...t,schema:r.elements,data:i}),e.assign((0,lt._)`${n}[${s}++]`,i)})}function n$t(t){let{gen:e,schema:r,data:n}=t;fl(t,"{"),e.assign(n,(0,lt._)`{}`),bq(t,"}",()=>s$t(t,r.values))}function bq(t,e,r){ZIe(t,e,r),fl(t,e)}function ZIe(t,e,r){let{gen:n}=t;n.for((0,lt._)`;${pr.default.jsonPos}<${pr.default.jsonLen} && ${pP(1)}!==${e};`,()=>{r(),jv(t,",",()=>n.break(),s)});function s(){jv(t,e,()=>{},dx)}}function s$t(t,e){let{gen:r}=t,n=r.let("key");xh({...t,data:n}),fl(t,":"),tCe(t,n,e)}function i$t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;fl(t,"{"),e.assign(r,(0,lt._)`{}`);let a=e.const("pos",pr.default.jsonPos),o=e.let("value"),c=e.let("tag");ZIe(t,"}",()=>{let u=e.let("key");xh({...t,data:u}),fl(t,":"),e.if((0,lt._)`${u} === ${s}`,()=>{xh({...t,data:c}),e.assign((0,lt._)`${r}[${u}]`,c),e.break()},()=>_q({...t,data:o}))}),e.assign(pr.default.jsonPos,a),e.if((0,lt._)`${c} === undefined`),Kd(t,(0,lt.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,lt._)`${c} === ${u}`),eCe({...t,schema:i[u]},s);e.else(),Kd(t,(0,lt.str)`discriminator value not in schema`),e.endIf()}function zIe(t){let{gen:e,data:r}=t;fl(t,"{"),e.assign(r,(0,lt._)`{}`),eCe(t)}function eCe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(bq(t,"}",()=>{let c=r.let("key");if(xh({...t,data:c}),fl(t,":"),r.if(!1),KIe(t,c,i),KIe(t,c,a),e){r.elseIf((0,lt._)`${c} === ${e}`);let u=r.let("tag");xh({...t,data:u})}r.else(),o?_q({...t,data:(0,lt._)`${s}[${c}]`}):Kd(t,(0,lt.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,K8t.hasPropFunc)(r),u=(0,lt.and)(...Object.keys(i).map(l=>(0,lt._)`${c}.call(${s}, ${l})`));r.if((0,lt.not)(u),()=>Kd(t,(0,lt.str)`missing required properties`))}}function KIe(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,lt._)`${e} === ${s}`),tCe(t,e,r[s])}function tCe(t,e,r){fP({...t,schema:r,data:(0,lt._)`${t.data}[${e}]`})}function a$t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":e$t(t);break;case"string":xh(t);break;case"timestamp":{xh(t);let i=(0,JIe.useFunc)(e,J8t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,lt._)`!${i}(${n}, true)`:(0,lt._)`!${i}(${n})`,u=o?(0,lt.or)(c,(0,lt._)`(${n} = new Date(${n}), false)`,(0,lt._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>Kd(t,(0,lt.str)`invalid timestamp`));break}case"float32":case"float64":yq(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))yq(t,16),i==="uint32"&&e.if((0,lt._)`${n} < 0`,()=>Kd(t,(0,lt.str)`integer out of range`));else{let[a,o,c]=Y8t.intRange[i];yq(t,c),e.if((0,lt._)`${n} < ${a} || ${n} > ${o}`,()=>Kd(t,(0,lt.str)`integer out of range`))}}}}function xh(t){fl(t,'"'),Eq(t,xq.parseJsonString)}function o$t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;fl(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,lt._)`${pP(a.length)} === ${a}`),e.assign(r,(0,lt.str)`${i}`),e.add(pr.default.jsonPos,a.length)}e.else(),dx(t),e.endIf()}function yq(t,e){let{gen:r}=t;vq(t),r.if((0,lt._)`"-0123456789".indexOf(${pP(1)}) < 0`,()=>dx(t),()=>Eq(t,xq.parseJsonNumber,e))}function VIe(t,e){return r=>{let{gen:n,data:s}=r;jv(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function c$t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new z8t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,V8t.hasRef)(o))return fP({...t,schema:o});let{root:c}=i,u=XIe.call(r,new YIe.SchemaEnv({schema:o,root:c}),n);rCe(t,u$t(e,u),!0)}function u$t(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,lt._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function _q(t){Eq(t,xq.parseJson)}function Eq(t,e,r){rCe(t,(0,JIe.useFunc)(t.gen,e),r)}function rCe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,lt._)`${e}(${pr.default.json}, ${pr.default.jsonPos}${r?(0,lt._)`, ${r}`:lt.nil})`),n.assign(pr.default.jsonPos,(0,lt._)`${e}.position`),n.if((0,lt._)`${s} === undefined`,()=>Kd(t,(0,lt._)`${e}.message`))}function fl(t,e){jv(t,e,dx)}function jv(t,e,r,n){let{gen:s}=t,i=e.length;vq(t),s.if((0,lt._)`${pP(i)} === ${e}`,()=>{s.add(pr.default.jsonPos,i),n?.(t)},()=>r(t))}function vq({gen:t,char:e}){t.code((0,lt._)`while((${e}=${pr.default.json}[${pr.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${pr.default.jsonPos}++;`)}function pP(t){return t===1?(0,lt._)`${pr.default.json}[${pr.default.jsonPos}]`:(0,lt._)`${pr.default.json}.slice(${pr.default.jsonPos}, ${pr.default.jsonPos}+${t})`}function dx(t){Kd(t,(0,lt._)`"unexpected token " + ${pr.default.json}[${pr.default.jsonPos}]`)}function Kd({gen:t,parseName:e},r){t.assign((0,lt._)`${e}.message`,r),t.assign((0,lt._)`${e}.position`,pr.default.jsonPos),t.return(Aq)}});var Tq=_((Dn,Cq)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var l$t=a9(),d$t=kIe(),f$t=LIe(),p$t=QIe(),m$t=nCe(),Iq="JTD-meta-schema",fx=class extends l$t.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(d$t.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(f$t.default,Iq,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Iq)?Iq:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(p$t.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(m$t.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};Dn.Ajv=fx;Cq.exports=Dn=fx;Cq.exports.Ajv=fx;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=fx;var h$t=XA();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return h$t.KeywordCxt}});var px=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return px._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return px.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return px.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return px.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return px.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return px.CodeGen}});var g$t=Sv();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return g$t.default}});var y$t=Fd();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return y$t.default}})});var wq=_((VFr,sCe)=>{"use strict";var A$t=zU();sCe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:A$t,addUsedSchema:!1,allErrors:!1})});var lCe=_(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});pl.formatNames=pl.fastFormats=pl.fullFormats=void 0;function mx(t,e){return{validate:t,compare:e}}pl.fullFormats={date:mx(oCe,Oq),time:mx(cCe,kq),"date-time":mx(E$t,uCe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:I$t,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:k$t,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:C$t,int32:{type:"number",validate:R$t},int64:{type:"number",validate:N$t},float:{type:"number",validate:aCe},double:{type:"number",validate:aCe},password:!0,binary:!0};pl.fastFormats={...pl.fullFormats,date:mx(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Oq),time:mx(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,kq),"date-time":mx(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uCe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};pl.formatNames=Object.keys(pl.fullFormats);function x$t(t){return t%4===0&&(t%100!==0||t%400===0)}var b$t=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,_$t=[0,31,28,31,30,31,30,31,31,30,31,30,31];function oCe(t){let e=b$t.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&x$t(r)?29:_$t[n])}function Oq(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Rq=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i;function cCe(t,e){let r=Rq.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 kq(t,e){if(!(t&&e))return;let r=Rq.exec(t),n=Rq.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 Nq=/t|\s/i;function E$t(t){let e=t.split(Nq);return e.length===2&&oCe(e[0])&&cCe(e[1],!0)}function uCe(t,e){if(!(t&&e))return;let[r,n]=t.split(Nq),[s,i]=e.split(Nq),a=Oq(r,s);if(a!==void 0)return a||kq(n,i)}var v$t=/\/|:/,S$t=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function I$t(t){return v$t.test(t)&&S$t.test(t)}var iCe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function C$t(t){return iCe.lastIndex=0,iCe.test(t)}var T$t=-(2**31),w$t=2**31-1;function R$t(t){return Number.isInteger(t)&&t<=w$t&&t>=T$t}function N$t(t){return Number.isInteger(t)}function aCe(){return!0}var O$t=/[^\\]\\Z/;function k$t(t){if(O$t.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Gv=_(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.regexpCode=Ur.getEsmExportName=Ur.getProperty=Ur.safeStringify=Ur.stringify=Ur.strConcat=Ur.addCodeArg=Ur.str=Ur._=Ur.nil=Ur._Code=Ur.Name=Ur.IDENTIFIER=Ur._CodeOrName=void 0;var Qv=class{};Ur._CodeOrName=Qv;Ur.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var bh=class extends Qv{constructor(e){if(super(),!Ur.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Ur.Name=bh;var mc=class extends Qv{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof bh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Ur._Code=mc;Ur.nil=new mc("");function dCe(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Dq(r,e[n]),r.push(t[++n]);return new mc(r)}Ur._=dCe;var Pq=new mc("+");function fCe(t,...e){let r=[Hv(t[0])],n=0;for(;n<e.length;)r.push(Pq),Dq(r,e[n]),r.push(Pq,Hv(t[++n]));return P$t(r),new mc(r)}Ur.str=fCe;function Dq(t,e){e instanceof mc?t.push(...e._items):e instanceof bh?t.push(e):t.push(L$t(e))}Ur.addCodeArg=Dq;function P$t(t){let e=1;for(;e<t.length-1;){if(t[e]===Pq){let r=D$t(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function D$t(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof bh||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 bh))return`"${t}${e.slice(1)}`}function B$t(t,e){return e.emptyStr()?t:t.emptyStr()?e:fCe`${t}${e}`}Ur.strConcat=B$t;function L$t(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Hv(Array.isArray(t)?t.join(","):t)}function M$t(t){return new mc(Hv(t))}Ur.stringify=M$t;function Hv(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Ur.safeStringify=Hv;function W$t(t){return typeof t=="string"&&Ur.IDENTIFIER.test(t)?new mc(`.${t}`):dCe`[${t}]`}Ur.getProperty=W$t;function $$t(t){if(typeof t=="string"&&Ur.IDENTIFIER.test(t))return new mc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Ur.getEsmExportName=$$t;function U$t(t){return new mc(t.toString())}Ur.regexpCode=U$t});var Mq=_(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});Ya.ValueScope=Ya.ValueScopeName=Ya.Scope=Ya.varKinds=Ya.UsedValueState=void 0;var Va=Gv(),Bq=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},mP;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(mP||(Ya.UsedValueState=mP={}));Ya.varKinds={const:new Va.Name("const"),let:new Va.Name("let"),var:new Va.Name("var")};var hP=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Va.Name?e:this.name(e)}name(e){return new Va.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ya.Scope=hP;var gP=class extends Va.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Va._)`.${new Va.Name(r)}[${n}]`}};Ya.ValueScopeName=gP;var F$t=(0,Va._)`\n`,Lq=class extends hP{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?F$t:Va.nil}}get(){return this._scope}name(e){return new gP(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Va._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Va.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,mP.Started);let l=r(u);if(l){let d=this.opts.es5?Ya.varKinds.var:Ya.varKinds.const;i=(0,Va._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Va._)`${i}${l}${this.opts._n}`;else throw new Bq(u);c.set(u,mP.Completed)})}return i}};Ya.ValueScope=Lq});var Jt=_(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.or=sr.and=sr.not=sr.CodeGen=sr.operators=sr.varKinds=sr.ValueScopeName=sr.ValueScope=sr.Scope=sr.Name=sr.regexpCode=sr.stringify=sr.getProperty=sr.nil=sr.strConcat=sr.str=sr._=void 0;var Sr=Gv(),ou=Mq(),r0=Gv();Object.defineProperty(sr,"_",{enumerable:!0,get:function(){return r0._}});Object.defineProperty(sr,"str",{enumerable:!0,get:function(){return r0.str}});Object.defineProperty(sr,"strConcat",{enumerable:!0,get:function(){return r0.strConcat}});Object.defineProperty(sr,"nil",{enumerable:!0,get:function(){return r0.nil}});Object.defineProperty(sr,"getProperty",{enumerable:!0,get:function(){return r0.getProperty}});Object.defineProperty(sr,"stringify",{enumerable:!0,get:function(){return r0.stringify}});Object.defineProperty(sr,"regexpCode",{enumerable:!0,get:function(){return r0.regexpCode}});Object.defineProperty(sr,"Name",{enumerable:!0,get:function(){return r0.Name}});var bP=Mq();Object.defineProperty(sr,"Scope",{enumerable:!0,get:function(){return bP.Scope}});Object.defineProperty(sr,"ValueScope",{enumerable:!0,get:function(){return bP.ValueScope}});Object.defineProperty(sr,"ValueScopeName",{enumerable:!0,get:function(){return bP.ValueScopeName}});Object.defineProperty(sr,"varKinds",{enumerable:!0,get:function(){return bP.varKinds}});sr.operators={GT:new Sr._Code(">"),GTE:new Sr._Code(">="),LT:new Sr._Code("<"),LTE:new Sr._Code("<="),EQ:new Sr._Code("==="),NEQ:new Sr._Code("!=="),NOT:new Sr._Code("!"),OR:new Sr._Code("||"),AND:new Sr._Code("&&"),ADD:new Sr._Code("+")};var Vd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Wq=class extends Vd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ou.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=gx(this.rhs,e,r)),this}get names(){return this.rhs instanceof Sr._CodeOrName?this.rhs.names:{}}},yP=class extends Vd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Sr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=gx(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Sr.Name?{}:{...this.lhs.names};return xP(e,this.rhs)}},$q=class extends yP{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Uq=class extends Vd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Fq=class extends Vd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},qq=class extends Vd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},jq=class extends Vd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=gx(this.code,e,r),this}get names(){return this.code instanceof Sr._CodeOrName?this.code.names:{}}},zv=class extends Vd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(q$t(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>vh(e,r.names),{})}},Yd=class extends zv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Qq=class extends zv{},hx=class extends Yd{};hx.kind="else";var _h=class t extends Yd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new hx(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pCe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=gx(this.condition,e,r),this}get names(){let e=super.names;return xP(e,this.condition),this.else&&vh(e,this.else.names),e}};_h.kind="if";var Eh=class extends Yd{};Eh.kind="for";var Hq=class extends Eh{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=gx(this.iteration,e,r),this}get names(){return vh(super.names,this.iteration.names)}},Gq=class extends Eh{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?ou.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=xP(super.names,this.from);return xP(e,this.to)}},AP=class extends Eh{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=gx(this.iterable,e,r),this}get names(){return vh(super.names,this.iterable.names)}},Kv=class extends Yd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Kv.kind="func";var Vv=class extends zv{render(e){return"return "+super.render(e)}};Vv.kind="return";var zq=class extends Yd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&vh(e,this.catch.names),this.finally&&vh(e,this.finally.names),e}},Yv=class extends Yd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Yv.kind="catch";var Jv=class extends Yd{render(e){return"finally"+super.render(e)}};Jv.kind="finally";var Kq=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
`:""},this._extScope=e,this._scope=new ou.Scope({parent:e}),this._nodes=[new Qq]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Wq(e,i,n)),i}const(e,r,n){return this._def(ou.varKinds.const,e,r,n)}let(e,r,n){return this._def(ou.varKinds.let,e,r,n)}var(e,r,n){return this._def(ou.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new yP(e,r,n))}add(e,r){return this._leafNode(new $q(e,sr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Sr.nil&&this._leafNode(new jq(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Sr.addCodeArg)(r,s));return r.push("}"),new Sr._Code(r)}if(e,r,n){if(this._blockNode(new _h(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new _h(e))}else(){return this._elseNode(new hx)}endIf(){return this._endBlockNode(_h,hx)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Hq(e),r)}forRange(e,r,n,s,i=this.opts.es5?ou.varKinds.var:ou.varKinds.let){let a=this._scope.toName(e);return this._for(new Gq(i,a,r,n),()=>s(a))}forOf(e,r,n,s=ou.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Sr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Sr._)`${a}.length`,o=>{this.var(i,(0,Sr._)`${a}[${o}]`),n(i)})}return this._for(new AP("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?ou.varKinds.var:ou.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Sr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new AP("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Eh)}label(e){return this._leafNode(new Uq(e))}break(e){return this._leafNode(new Fq(e))}return(e){let r=new Vv;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Vv)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new zq;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new Yv(i),r(i)}return n&&(this._currNode=s.finally=new Jv,this.code(n)),this._endBlockNode(Yv,Jv)}throw(e){return this._leafNode(new qq(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Sr.nil,n,s){return this._blockNode(new Kv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(Kv)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof _h))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};sr.CodeGen=Kq;function vh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function xP(t,e){return e instanceof Sr._CodeOrName?vh(t,e.names):t}function gx(t,e,r){if(t instanceof Sr.Name)return n(t);if(!s(t))return t;return new Sr._Code(t._items.reduce((i,a)=>(a instanceof Sr.Name&&(a=n(a)),a instanceof Sr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Sr._Code&&i._items.some(a=>a instanceof Sr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function q$t(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pCe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Sr._)`!${Vq(t)}`}sr.not=pCe;var j$t=mCe(sr.operators.AND);function Q$t(...t){return t.reduce(j$t)}sr.and=Q$t;var H$t=mCe(sr.operators.OR);function G$t(...t){return t.reduce(H$t)}sr.or=G$t;function mCe(t){return(e,r)=>e===Sr.nil?r:r===Sr.nil?e:(0,Sr._)`${Vq(e)} ${t} ${Vq(r)}`}function Vq(t){return t instanceof Sr.Name?t:(0,Sr._)`(${t})`}});var Fr=_(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.checkStrictMode=cr.getErrorPath=cr.Type=cr.useFunc=cr.setEvaluated=cr.evaluatedPropsToName=cr.mergeEvaluated=cr.eachItem=cr.unescapeJsonPointer=cr.escapeJsonPointer=cr.escapeFragment=cr.unescapeFragment=cr.schemaRefOrVal=cr.schemaHasRulesButRef=cr.schemaHasRules=cr.checkUnknownRules=cr.alwaysValidSchema=cr.toHash=void 0;var fn=Jt(),z$t=Gv();function K$t(t){let e={};for(let r of t)e[r]=!0;return e}cr.toHash=K$t;function V$t(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(yCe(t,e),!ACe(e,t.self.RULES.all))}cr.alwaysValidSchema=V$t;function yCe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||_Ce(t,`unknown keyword: "${i}"`)}cr.checkUnknownRules=yCe;function ACe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}cr.schemaHasRules=ACe;function Y$t(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}cr.schemaHasRulesButRef=Y$t;function J$t({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}cr.schemaRefOrVal=J$t;function X$t(t){return xCe(decodeURIComponent(t))}cr.unescapeFragment=X$t;function Z$t(t){return encodeURIComponent(Jq(t))}cr.escapeFragment=Z$t;function Jq(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}cr.escapeJsonPointer=Jq;function xCe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}cr.unescapeJsonPointer=xCe;function eUt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}cr.eachItem=eUt;function hCe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}cr.mergeEvaluated={props:hCe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),Xq(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:bCe}),items:hCe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function bCe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&Xq(t,r,e),r}cr.evaluatedPropsToName=bCe;function Xq(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}cr.setEvaluated=Xq;var gCe={};function tUt(t,e){return t.scopeValue("func",{ref:e,code:gCe[e.code]||(gCe[e.code]=new z$t._Code(e.code))})}cr.useFunc=tUt;var Yq;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Yq||(cr.Type=Yq={}));function rUt(t,e,r){if(t instanceof fn.Name){let n=e===Yq.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+Jq(t)}cr.getErrorPath=rUt;function _Ce(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}cr.checkStrictMode=_Ce});var Jd=_(Zq=>{"use strict";Object.defineProperty(Zq,"__esModule",{value:!0});var Qi=Jt(),nUt={data:new Qi.Name("data"),valCxt:new Qi.Name("valCxt"),instancePath:new Qi.Name("instancePath"),parentData:new Qi.Name("parentData"),parentDataProperty:new Qi.Name("parentDataProperty"),rootData:new Qi.Name("rootData"),dynamicAnchors:new Qi.Name("dynamicAnchors"),vErrors:new Qi.Name("vErrors"),errors:new Qi.Name("errors"),this:new Qi.Name("this"),self:new Qi.Name("self"),scope:new Qi.Name("scope"),json:new Qi.Name("json"),jsonPos:new Qi.Name("jsonPos"),jsonLen:new Qi.Name("jsonLen"),jsonPart:new Qi.Name("jsonPart")};Zq.default=nUt});var Xv=_(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.extendErrors=Hi.resetErrorsCount=Hi.reportExtraError=Hi.reportError=Hi.keyword$DataError=Hi.keywordError=void 0;var Or=Jt(),_P=Fr(),ga=Jd();Hi.keywordError={message:({keyword:t})=>(0,Or.str)`must pass "${t}" keyword validation`};Hi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Or.str)`"${t}" keyword must be ${e} ($data)`:(0,Or.str)`"${t}" keyword is invalid ($data)`};function sUt(t,e=Hi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=SCe(t,e,r);n??(a||o)?ECe(i,c):vCe(s,(0,Or._)`[${c}]`)}Hi.reportError=sUt;function iUt(t,e=Hi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=SCe(t,e,r);ECe(s,o),i||a||vCe(n,ga.default.vErrors)}Hi.reportExtraError=iUt;function aUt(t,e){t.assign(ga.default.errors,e),t.if((0,Or._)`${ga.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Or._)`${ga.default.vErrors}.length`,e),()=>t.assign(ga.default.vErrors,null)))}Hi.resetErrorsCount=aUt;function oUt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ga.default.errors,o=>{t.const(a,(0,Or._)`${ga.default.vErrors}[${o}]`),t.if((0,Or._)`${a}.instancePath === undefined`,()=>t.assign((0,Or._)`${a}.instancePath`,(0,Or.strConcat)(ga.default.instancePath,i.errorPath))),t.assign((0,Or._)`${a}.schemaPath`,(0,Or.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Or._)`${a}.schema`,r),t.assign((0,Or._)`${a}.data`,n))})}Hi.extendErrors=oUt;function ECe(t,e){let r=t.const("err",e);t.if((0,Or._)`${ga.default.vErrors} === null`,()=>t.assign(ga.default.vErrors,(0,Or._)`[${r}]`),(0,Or._)`${ga.default.vErrors}.push(${r})`),t.code((0,Or._)`${ga.default.errors}++`)}function vCe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Or._)`new ${t.ValidationError}(${e})`):(r.assign((0,Or._)`${n}.errors`,e),r.return(!1))}var Sh={keyword:new Or.Name("keyword"),schemaPath:new Or.Name("schemaPath"),params:new Or.Name("params"),propertyName:new Or.Name("propertyName"),message:new Or.Name("message"),schema:new Or.Name("schema"),parentSchema:new Or.Name("parentSchema")};function SCe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Or._)`{}`:cUt(t,e,r)}function cUt(t,e,r={}){let{gen:n,it:s}=t,i=[uUt(s,r),lUt(t,r)];return dUt(t,e,i),n.object(...i)}function uUt({errorPath:t},{instancePath:e}){let r=e?(0,Or.str)`${t}${(0,_P.getErrorPath)(e,_P.Type.Str)}`:t;return[ga.default.instancePath,(0,Or.strConcat)(ga.default.instancePath,r)]}function lUt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Or.str)`${e}/${t}`;return r&&(s=(0,Or.str)`${s}${(0,_P.getErrorPath)(r,_P.Type.Str)}`),[Sh.schemaPath,s]}function dUt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Sh.keyword,s],[Sh.params,typeof e=="function"?e(t):e||(0,Or._)`{}`]),c.messages&&n.push([Sh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Sh.schema,a],[Sh.parentSchema,(0,Or._)`${l}${d}`],[ga.default.data,i]),u&&n.push([Sh.propertyName,u])}});var CCe=_(yx=>{"use strict";Object.defineProperty(yx,"__esModule",{value:!0});yx.boolOrEmptySchema=yx.topBoolOrEmptySchema=void 0;var fUt=Xv(),pUt=Jt(),mUt=Jd(),hUt={message:"boolean schema is false"};function gUt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?ICe(t,!1):typeof r=="object"&&r.$async===!0?e.return(mUt.default.data):(e.assign((0,pUt._)`${n}.errors`,null),e.return(!0))}yx.topBoolOrEmptySchema=gUt;function yUt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),ICe(t)):r.var(e,!0)}yx.boolOrEmptySchema=yUt;function ICe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,fUt.reportError)(s,hUt,void 0,e)}});var ej=_(Ax=>{"use strict";Object.defineProperty(Ax,"__esModule",{value:!0});Ax.getRules=Ax.isJSONType=void 0;var AUt=["string","number","integer","boolean","null","object","array"],xUt=new Set(AUt);function bUt(t){return typeof t=="string"&&xUt.has(t)}Ax.isJSONType=bUt;function _Ut(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Ax.getRules=_Ut});var tj=_(n0=>{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});n0.shouldUseRule=n0.shouldUseGroup=n0.schemaHasRulesForType=void 0;function EUt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&TCe(t,n)}n0.schemaHasRulesForType=EUt;function TCe(t,e){return e.rules.some(r=>wCe(t,r))}n0.shouldUseGroup=TCe;function wCe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}n0.shouldUseRule=wCe});var Zv=_(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.reportTypeError=Gi.checkDataTypes=Gi.checkDataType=Gi.coerceAndCheckDataType=Gi.getJSONTypes=Gi.getSchemaTypes=Gi.DataType=void 0;var vUt=ej(),SUt=tj(),IUt=Xv(),Ht=Jt(),RCe=Fr(),xx;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(xx||(Gi.DataType=xx={}));function CUt(t){let e=NCe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Gi.getSchemaTypes=CUt;function NCe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(vUt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Gi.getJSONTypes=NCe;function TUt(t,e){let{gen:r,data:n,opts:s}=t,i=wUt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,SUt.schemaHasRulesForType)(t,e[0]));if(a){let o=nj(e,n,s.strictNumbers,xx.Wrong);r.if(o,()=>{i.length?RUt(t,e,i):sj(t)})}return a}Gi.coerceAndCheckDataType=TUt;var OCe=new Set(["string","number","integer","boolean","null"]);function wUt(t,e){return e?t.filter(r=>OCe.has(r)||e==="array"&&r==="array"):[]}function RUt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(nj(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(OCe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),sj(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),NUt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null
|
|
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ht._)`+${s}`);return;case"integer":n.elseIf((0,Ht._)`${a} === "boolean" || ${s} === null
|
|
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ht._)`+${s}`);return;case"boolean":n.elseIf((0,Ht._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ht._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ht._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ht._)`${a} === "string" || ${a} === "number"
|
|
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function NUt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function rj(t,e,r,n=xx.Correct){let s=n===xx.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===xx.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}Gi.checkDataType=rj;function nj(t,e,r,n){if(t.length===1)return rj(t[0],e,r,n);let s,i=(0,RCe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,rj(a,e,r,n));return s}Gi.checkDataTypes=nj;var OUt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function sj(t){let e=kUt(t);(0,IUt.reportError)(e,OUt)}Gi.reportTypeError=sj;function kUt(t){let{gen:e,data:r,schema:n}=t,s=(0,RCe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var PCe=_(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});EP.assignDefaults=void 0;var bx=Jt(),PUt=Fr();function DUt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)kCe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>kCe(t,i,s.default))}EP.assignDefaults=DUt;function kCe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,bx._)`${i}${(0,bx.getProperty)(e)}`;if(s){(0,PUt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,bx._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,bx._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,bx._)`${o} = ${(0,bx.stringify)(r)}`)}});var hc=_(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Bn=Jt(),ij=Fr(),s0=Jd(),BUt=Fr();function LUt(t,e){let{gen:r,data:n,it:s}=t;r.if(oj(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Bn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=LUt;function MUt({gen:t,data:e,it:{opts:r}},n,s){return(0,Bn.or)(...n.map(i=>(0,Bn.and)(oj(t,e,i,r.ownProperties),(0,Bn._)`${s} = ${i}`)))}en.checkMissingProp=MUt;function WUt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=WUt;function DCe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Bn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=DCe;function aj(t,e,r){return(0,Bn._)`${DCe(t)}.call(${e}, ${r})`}en.isOwnProperty=aj;function $Ut(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} !== undefined`;return n?(0,Bn._)`${s} && ${aj(t,e,r)}`:s}en.propertyInData=$Ut;function oj(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} === undefined`;return n?(0,Bn.or)(s,(0,Bn.not)(aj(t,e,r))):s}en.noPropertyInData=oj;function BCe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=BCe;function UUt(t,e){return BCe(e).filter(r=>!(0,ij.alwaysValidSchema)(t,e[r]))}en.schemaProperties=UUt;function FUt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Bn._)`${t}, ${e}, ${n}${s}`:e,d=[[s0.default.instancePath,(0,Bn.strConcat)(s0.default.instancePath,i)],[s0.default.parentData,a.parentData],[s0.default.parentDataProperty,a.parentDataProperty],[s0.default.rootData,s0.default.rootData]];a.opts.dynamicRef&&d.push([s0.default.dynamicAnchors,s0.default.dynamicAnchors]);let f=(0,Bn._)`${l}, ${r.object(...d)}`;return c!==Bn.nil?(0,Bn._)`${o}.call(${c}, ${f})`:(0,Bn._)`${o}(${f})`}en.callValidateCode=FUt;var qUt=(0,Bn._)`new RegExp`;function jUt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Bn._)`${s.code==="new RegExp"?qUt:(0,BUt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=jUt;function QUt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Bn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:ij.Type.Num},i),e.if((0,Bn.not)(i),o)})}}en.validateArray=QUt;function HUt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,ij.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Bn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Bn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=HUt});var WCe=_(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.validateKeywordUsage=ml.validSchemaType=ml.funcKeywordCode=ml.macroKeywordCode=void 0;var ya=Jt(),Ih=Jd(),GUt=hc(),zUt=Xv();function KUt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=MCe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ya.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}ml.macroKeywordCode=KUt;function VUt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;JUt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=MCe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&LCe(t),y(()=>t.error());else{let g=e.async?p():m();e.modifying&&LCe(t),y(()=>YUt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ya._)`await `),b=>n.assign(d,!1).if((0,ya._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ya._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ya._)`${l}.errors`;return n.assign(g,null),h(ya.nil),g}function h(g=e.async?(0,ya._)`await `:ya.nil){let b=c.opts.passContext?Ih.default.this:Ih.default.self,x=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ya._)`${g}${(0,GUt.callValidateCode)(t,l,b,x)}`,e.modifying)}function y(g){var b;n.if((0,ya.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}ml.funcKeywordCode=VUt;function LCe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ya._)`${n.parentData}[${n.parentDataProperty}]`))}function YUt(t,e){let{gen:r}=t;r.if((0,ya._)`Array.isArray(${e})`,()=>{r.assign(Ih.default.vErrors,(0,ya._)`${Ih.default.vErrors} === null ? ${e} : ${Ih.default.vErrors}.concat(${e})`).assign(Ih.default.errors,(0,ya._)`${Ih.default.vErrors}.length`),(0,zUt.extendErrors)(t)},()=>t.error())}function JUt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function MCe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ya.stringify)(r)})}function XUt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}ml.validSchemaType=XUt;function ZUt({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}ml.validateKeywordUsage=ZUt});var UCe=_(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.extendSubschemaMode=i0.extendSubschemaData=i0.getSubschema=void 0;var hl=Jt(),$Ce=Fr();function eFt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,hl._)`${t.schemaPath}${(0,hl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,hl._)`${t.schemaPath}${(0,hl.getProperty)(e)}${(0,hl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$Ce.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}i0.getSubschema=eFt;function tFt(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,hl._)`${e.data}${(0,hl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,hl.str)`${u}${(0,$Ce.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,hl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof hl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}i0.extendSubschemaData=tFt;function rFt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}i0.extendSubschemaMode=rFt});var qCe=_((d7r,FCe)=>{"use strict";var a0=FCe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};vP(e,n,s,t,"",t)};a0.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};a0.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};a0.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};a0.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function vP(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in a0.arrayKeywords)for(var f=0;f<d.length;f++)vP(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in a0.propsKeywords){if(d&&typeof d=="object")for(var p in d)vP(t,e,r,d[p],s+"/"+l+"/"+nFt(p),i,s,l,n,p)}else(l in a0.keywords||t.allKeys&&!(l in a0.skipKeywords))&&vP(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function nFt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var eS=_(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.getSchemaRefs=Ja.resolveUrl=Ja.normalizeId=Ja._getFullPath=Ja.getFullPath=Ja.inlineRef=void 0;var sFt=Fr(),iFt=sc(),aFt=qCe(),oFt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function cFt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!cj(t):e?jCe(t)<=e:!1}Ja.inlineRef=cFt;var uFt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function cj(t){for(let e in t){if(uFt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(cj)||typeof r=="object"&&cj(r))return!0}return!1}function jCe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!oFt.has(r)&&(typeof t[r]=="object"&&(0,sFt.eachItem)(t[r],n=>e+=jCe(n)),e===1/0))return 1/0}return e}function QCe(t,e="",r){r!==!1&&(e=_x(e));let n=t.parse(e);return HCe(t,n)}Ja.getFullPath=QCe;function HCe(t,e){return t.serialize(e).split("#")[0]+"#"}Ja._getFullPath=HCe;var lFt=/#\/?$/;function _x(t){return t?t.replace(lFt,""):""}Ja.normalizeId=_x;function dFt(t,e,r){return r=_x(r),t.resolve(e,r)}Ja.resolveUrl=dFt;var fFt=/^[a-z_][-a-z0-9._]*$/i;function pFt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=_x(t[r]||e),i={"":s},a=QCe(n,s,!1),o={},c=new Set;return aFt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,y=i[m];typeof d[r]=="string"&&(y=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=y;function g(x){let A=this.opts.uriResolver.resolve;if(x=_x(y?A(y,x):x),c.has(x))throw l(x);c.add(x);let S=this.refs[x];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,x):x!==_x(h)&&(x[0]==="#"?(u(d,o[x],x),o[x]=d):this.refs[x]=h),x}function b(x){if(typeof x=="string"){if(!fFt.test(x))throw new Error(`invalid anchor "${x}"`);g.call(this,`#${x}`)}}}),o;function u(d,f,p){if(f!==void 0&&!iFt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ja.getSchemaRefs=pFt});var nS=_(o0=>{"use strict";Object.defineProperty(o0,"__esModule",{value:!0});o0.getData=o0.KeywordCxt=o0.validateFunctionCode=void 0;var YCe=CCe(),GCe=Zv(),lj=tj(),SP=Zv(),mFt=PCe(),rS=WCe(),uj=UCe(),ct=Jt(),Ot=Jd(),hFt=eS(),Xd=Fr(),tS=Xv();function gFt(t){if(ZCe(t)&&(e2e(t),XCe(t))){xFt(t);return}JCe(t,()=>(0,YCe.topBoolOrEmptySchema)(t))}o0.validateFunctionCode=gFt;function JCe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ct._)`${Ot.default.data}, ${Ot.default.valCxt}`,n.$async,()=>{t.code((0,ct._)`"use strict"; ${zCe(r,s)}`),AFt(t,s),t.code(i)}):t.func(e,(0,ct._)`${Ot.default.data}, ${yFt(s)}`,n.$async,()=>t.code(zCe(r,s)).code(i))}function yFt(t){return(0,ct._)`{${Ot.default.instancePath}="", ${Ot.default.parentData}, ${Ot.default.parentDataProperty}, ${Ot.default.rootData}=${Ot.default.data}${t.dynamicRef?(0,ct._)`, ${Ot.default.dynamicAnchors}={}`:ct.nil}}={}`}function AFt(t,e){t.if(Ot.default.valCxt,()=>{t.var(Ot.default.instancePath,(0,ct._)`${Ot.default.valCxt}.${Ot.default.instancePath}`),t.var(Ot.default.parentData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentData}`),t.var(Ot.default.parentDataProperty,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentDataProperty}`),t.var(Ot.default.rootData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.rootData}`),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`${Ot.default.valCxt}.${Ot.default.dynamicAnchors}`)},()=>{t.var(Ot.default.instancePath,(0,ct._)`""`),t.var(Ot.default.parentData,(0,ct._)`undefined`),t.var(Ot.default.parentDataProperty,(0,ct._)`undefined`),t.var(Ot.default.rootData,Ot.default.data),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`{}`)})}function xFt(t){let{schema:e,opts:r,gen:n}=t;JCe(t,()=>{r.$comment&&e.$comment&&r2e(t),SFt(t),n.let(Ot.default.vErrors,null),n.let(Ot.default.errors,0),r.unevaluated&&bFt(t),t2e(t),TFt(t)})}function bFt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ct._)`${r}.evaluated`),e.if((0,ct._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ct._)`${t.evaluated}.props`,(0,ct._)`undefined`)),e.if((0,ct._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ct._)`${t.evaluated}.items`,(0,ct._)`undefined`))}function zCe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ct._)`/*# sourceURL=${r} */`:ct.nil}function _Ft(t,e){if(ZCe(t)&&(e2e(t),XCe(t))){EFt(t,e);return}(0,YCe.boolOrEmptySchema)(t,e)}function XCe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ZCe(t){return typeof t.schema!="boolean"}function EFt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&r2e(t),IFt(t),CFt(t);let i=n.const("_errs",Ot.default.errors);t2e(t,i),n.var(e,(0,ct._)`${i} === ${Ot.default.errors}`)}function e2e(t){(0,Xd.checkUnknownRules)(t),vFt(t)}function t2e(t,e){if(t.opts.jtd)return KCe(t,[],!1,e);let r=(0,GCe.getSchemaTypes)(t.schema),n=(0,GCe.coerceAndCheckDataType)(t,r);KCe(t,r,!n,e)}function vFt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Xd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function SFt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Xd.checkStrictMode)(t,"default is ignored in the schema root")}function IFt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,hFt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function CFt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function r2e({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ct._)`${Ot.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ct.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ct._)`${Ot.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function TFt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ct._)`${Ot.default.errors} === 0`,()=>e.return(Ot.default.data),()=>e.throw((0,ct._)`new ${s}(${Ot.default.vErrors})`)):(e.assign((0,ct._)`${n}.errors`,Ot.default.vErrors),i.unevaluated&&wFt(t),e.return((0,ct._)`${Ot.default.errors} === 0`))}function wFt({gen:t,evaluated:e,props:r,items:n}){r instanceof ct.Name&&t.assign((0,ct._)`${e}.props`,r),n instanceof ct.Name&&t.assign((0,ct._)`${e}.items`,n)}function KCe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Xd.schemaHasRulesButRef)(i,l))){s.block(()=>s2e(t,"$ref",l.all.$ref.definition));return}c.jtd||RFt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,lj.shouldUseGroup)(i,f)&&(f.type?(s.if((0,SP.checkDataType)(f.type,a,c.strictNumbers)),VCe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,SP.reportTypeError)(t)),s.endIf()):VCe(t,f),o||s.if((0,ct._)`${Ot.default.errors} === ${n||0}`))}}function VCe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,mFt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,lj.shouldUseRule)(n,i)&&s2e(t,i.keyword,i.definition,e.type)})}function RFt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(NFt(t,e),t.opts.allowUnionTypes||OFt(t,e),kFt(t,t.dataTypes))}function NFt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{n2e(t.dataTypes,r)||dj(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),DFt(t,e)}}function OFt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&dj(t,"use allowUnionTypes to allow union type keyword")}function kFt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,lj.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>PFt(e,a))&&dj(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function PFt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function n2e(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function DFt(t,e){let r=[];for(let n of t.dataTypes)n2e(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function dj(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Xd.checkStrictMode)(t,e,t.opts.strictTypes)}var IP=class{constructor(e,r,n){if((0,rS.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Xd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",i2e(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,rS.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Ot.default.errors))}result(e,r,n){this.failResult((0,ct.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ct.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ct._)`${r} !== undefined && (${(0,ct.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?tS.reportExtraError:tS.reportError)(this,this.def.error,r)}$dataError(){(0,tS.reportError)(this,this.def.$dataError||tS.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,tS.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ct.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ct.nil,r=ct.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ct.or)((0,ct._)`${s} === undefined`,r)),e!==ct.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ct.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ct.or)(a(),o());function a(){if(n.length){if(!(r instanceof ct.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ct._)`${(0,SP.checkDataTypes)(c,r,i.opts.strictNumbers,SP.DataType.Wrong)}`}return ct.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ct._)`!${c}(${r})`}return ct.nil}}subschema(e,r){let n=(0,uj.getSubschema)(this.it,e);(0,uj.extendSubschemaData)(n,this.it,e),(0,uj.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return _Ft(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Xd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Xd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ct.Name)),!0}};o0.KeywordCxt=IP;function s2e(t,e,r,n){let s=new IP(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,rS.funcKeywordCode)(s,r):"macro"in r?(0,rS.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,rS.funcKeywordCode)(s,r)}var BFt=/^\/(?:[^~]|~0|~1)*$/,LFt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function i2e(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Ot.default.rootData;if(t[0]==="/"){if(!BFt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Ot.default.rootData}else{let u=LFt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ct._)`${i}${(0,ct.getProperty)((0,Xd.unescapeJsonPointer)(u))}`,a=(0,ct._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}o0.getData=i2e});var CP=_(pj=>{"use strict";Object.defineProperty(pj,"__esModule",{value:!0});var fj=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};pj.default=fj});var sS=_(gj=>{"use strict";Object.defineProperty(gj,"__esModule",{value:!0});var mj=eS(),hj=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,mj.resolveUrl)(e,r,n),this.missingSchema=(0,mj.normalizeId)((0,mj.getFullPath)(e,this.missingRef))}};gj.default=hj});var wP=_(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.resolveSchema=gc.getCompilingSchema=gc.resolveRef=gc.compileSchema=gc.SchemaEnv=void 0;var cu=Jt(),MFt=CP(),Ch=Jd(),uu=eS(),a2e=Fr(),WFt=nS(),Ex=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,uu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};gc.SchemaEnv=Ex;function Aj(t){let e=o2e.call(this,t);if(e)return e;let r=(0,uu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new cu.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:MFt.default,code:(0,cu._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Ch.default.data,parentData:Ch.default.parentData,parentDataProperty:Ch.default.parentDataProperty,dataNames:[Ch.default.data],dataPathArr:[cu.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,cu.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:cu.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,cu._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,WFt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Ch.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Ch.default.self}`,`${Ch.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof cu.Name?void 0:m,items:h instanceof cu.Name?void 0:h,dynamicProps:m instanceof cu.Name,dynamicItems:h instanceof cu.Name},p.source&&(p.source.evaluated=(0,cu.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}gc.compileSchema=Aj;function $Ft(t,e,r){var n;r=(0,uu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=qFt.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Ex({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=UFt.call(this,i)}gc.resolveRef=$Ft;function UFt(t){return(0,uu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Aj.call(this,t)}function o2e(t){for(let e of this._compilations)if(FFt(e,t))return e}gc.getCompilingSchema=o2e;function FFt(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function qFt(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||TP.call(this,t,e)}function TP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,uu._getFullPath)(this.opts.uriResolver,r),s=(0,uu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return yj.call(this,r,t);let i=(0,uu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=TP.call(this,t,a);return typeof o?.schema!="object"?void 0:yj.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Aj.call(this,a),i===(0,uu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,uu.resolveUrl)(this.opts.uriResolver,s,u)),new Ex({schema:o,schemaId:c,root:t,baseId:s})}return yj.call(this,r,a)}}gc.resolveSchema=TP;var jFt=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function yj(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,a2e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!jFt.has(o)&&u&&(e=(0,uu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,a2e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,uu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=TP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Ex({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var c2e=_((y7r,QFt)=>{QFt.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var bj=_((A7r,f2e)=>{"use strict";var HFt=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),l2e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function xj(t){let e="",r=0,n=0;for(n=0;n<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 GFt=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function u2e(t){return t.length=0,!0}function zFt(t,e,r){if(t.length){let n=xj(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function KFt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=zFt;for(let c=0;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=u2e}else{s.push(u);continue}}return s.length&&(o===u2e?r.zone=s.join(""):a?n.push(s.join("")):n.push(xj(s))),r.address=n.join(""),r}function d2e(t){if(VFt(t,":")<2)return{host:t,isIPV6:!1};let e=KFt(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function VFt(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function YFt(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 JFt(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 XFt(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!l2e(r)){let n=d2e(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}f2e.exports={nonSimpleDomain:GFt,recomposeAuthority:XFt,normalizeComponentEncoding:JFt,removeDotSegments:YFt,isIPv4:l2e,isUUID:HFt,normalizeIPv6:d2e,stringArrayToHexStripped:xj}});var y2e=_((x7r,g2e)=>{"use strict";var{isUUID:ZFt}=bj(),e7t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,t7t=["http","https","ws","wss","urn","urn:uuid"];function r7t(t){return t7t.indexOf(t)!==-1}function _j(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function p2e(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function m2e(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function n7t(t){return t.secure=_j(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function s7t(t){if((t.port===(_j(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function i7t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(e7t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=Ej(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function a7t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=Ej(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function o7t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!ZFt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function c7t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var h2e={scheme:"http",domainHost:!0,parse:p2e,serialize:m2e},u7t={scheme:"https",domainHost:h2e.domainHost,parse:p2e,serialize:m2e},RP={scheme:"ws",domainHost:!0,parse:n7t,serialize:s7t},l7t={scheme:"wss",domainHost:RP.domainHost,parse:RP.parse,serialize:RP.serialize},d7t={scheme:"urn",parse:i7t,serialize:a7t,skipNormalize:!0},f7t={scheme:"urn:uuid",parse:o7t,serialize:c7t,skipNormalize:!0},NP={http:h2e,https:u7t,ws:RP,wss:l7t,urn:d7t,"urn:uuid":f7t};Object.setPrototypeOf(NP,null);function Ej(t){return t&&(NP[t]||NP[t.toLowerCase()])||void 0}g2e.exports={wsIsSecure:_j,SCHEMES:NP,isValidSchemeName:r7t,getSchemeHandler:Ej}});var b2e=_((b7r,kP)=>{"use strict";var{normalizeIPv6:p7t,removeDotSegments:iS,recomposeAuthority:m7t,normalizeComponentEncoding:OP,isIPv4:h7t,nonSimpleDomain:g7t}=bj(),{SCHEMES:y7t,getSchemeHandler:A2e}=y2e();function A7t(t,e){return typeof t=="string"?t=gl(Zd(t,e),e):typeof t=="object"&&(t=Zd(gl(t,e),e)),t}function x7t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=x2e(Zd(t,n),Zd(e,n),n,!0);return n.skipEscape=!0,gl(s,n)}function x2e(t,e,r,n){let s={};return n||(t=Zd(gl(t,r),r),e=Zd(gl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=iS(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=iS(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=iS(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=iS(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function b7t(t,e,r){return typeof t=="string"?(t=unescape(t),t=gl(OP(Zd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=gl(OP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=gl(OP(Zd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=gl(OP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function gl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=A2e(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=m7t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=iS(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var _7t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Zd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(_7t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(h7t(n.host)===!1){let c=p7t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=A2e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&g7t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var vj={SCHEMES:y7t,normalize:A7t,resolve:x7t,resolveComponent:x2e,equal:b7t,serialize:gl,parse:Zd};kP.exports=vj;kP.exports.default=vj;kP.exports.fastUri=vj});var E2e=_(Sj=>{"use strict";Object.defineProperty(Sj,"__esModule",{value:!0});var _2e=b2e();_2e.code='require("ajv/dist/runtime/uri").default';Sj.default=_2e});var N2e=_(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.CodeGen=_i.Name=_i.nil=_i.stringify=_i.str=_i._=_i.KeywordCxt=void 0;var E7t=nS();Object.defineProperty(_i,"KeywordCxt",{enumerable:!0,get:function(){return E7t.KeywordCxt}});var vx=Jt();Object.defineProperty(_i,"_",{enumerable:!0,get:function(){return vx._}});Object.defineProperty(_i,"str",{enumerable:!0,get:function(){return vx.str}});Object.defineProperty(_i,"stringify",{enumerable:!0,get:function(){return vx.stringify}});Object.defineProperty(_i,"nil",{enumerable:!0,get:function(){return vx.nil}});Object.defineProperty(_i,"Name",{enumerable:!0,get:function(){return vx.Name}});Object.defineProperty(_i,"CodeGen",{enumerable:!0,get:function(){return vx.CodeGen}});var v7t=CP(),T2e=sS(),S7t=ej(),aS=wP(),I7t=Jt(),oS=eS(),PP=Zv(),Cj=Fr(),v2e=c2e(),C7t=E2e(),w2e=(t,e)=>new RegExp(t,e);w2e.code="new RegExp";var T7t=["removeAdditional","useDefaults","coerceTypes"],w7t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),R7t={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},N7t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},S2e=200;function O7t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b,x,A,S,I,R,w,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:w2e,L=(s=t.uriResolver)!==null&&s!==void 0?s:C7t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:k)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:S2e,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:S2e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(A=t.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var cS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...O7t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new I7t.ValueScope({scope:{},prefixes:w7t,es5:r,lines:n}),this.logger=M7t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,S7t.getRules)(),I2e.call(this,R7t,e,"NOT SUPPORTED"),I2e.call(this,N7t,e,"DEPRECATED","warn"),this._metaOpts=B7t.call(this),e.formats&&P7t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&D7t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),k7t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=v2e;n==="id"&&(s={...v2e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof T2e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,oS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=C2e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new aS.SchemaEnv({schema:{},schemaId:n});if(r=aS.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=C2e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,oS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if($7t.call(this,n,r),!r)return(0,Cj.eachItem)(n,i=>Ij.call(this,i)),this;F7t.call(this,r);let s={...r,type:(0,PP.getJSONTypes)(r.type),schemaType:(0,PP.getJSONTypes)(r.schemaType)};return(0,Cj.eachItem)(n,s.type.length===0?i=>Ij.call(this,i,s):i=>s.type.forEach(a=>Ij.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=R2e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,oS.normalizeId)(a||n);let u=oS.getSchemaRefs.call(this,e,n);return c=new aS.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):aS.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{aS.compileSchema.call(this,e)}finally{this.opts=r}}};cS.ValidationError=v7t.default;cS.MissingRefError=T2e.default;_i.default=cS;function I2e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function C2e(t){return t=(0,oS.normalizeId)(t),this.schemas[t]||this.refs[t]}function k7t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function P7t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function D7t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function B7t(){let t={...this.opts};for(let e of T7t)delete t[e];return t}var L7t={log(){},warn(){},error(){}};function M7t(t){if(t===!1)return L7t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var W7t=/^[a-z_$][a-z0-9_$:-]*$/i;function $7t(t,e){let{RULES:r}=this;if((0,Cj.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!W7t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Ij(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,PP.getJSONTypes)(e.type),schemaType:(0,PP.getJSONTypes)(e.schemaType)}};e.before?U7t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function U7t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function F7t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=R2e(e)),t.validateSchema=this.compile(e,!0))}var q7t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function R2e(t){return{anyOf:[t,q7t]}}});var O2e=_(Tj=>{"use strict";Object.defineProperty(Tj,"__esModule",{value:!0});var j7t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Tj.default=j7t});var B2e=_(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.callRef=Th.getValidate=void 0;var Q7t=sS(),k2e=hc(),Xa=Jt(),Sx=Jd(),P2e=wP(),DP=Fr(),H7t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=P2e.resolveRef.call(c,u,s,r);if(l===void 0)throw new Q7t.default(n.opts.uriResolver,s,r);if(l instanceof P2e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return BP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return BP(t,(0,Xa._)`${m}.validate`,u,u.$async)}function f(m){let h=D2e(t,m);BP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Xa.stringify)(m)}:{ref:m}),y=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Xa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function D2e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Xa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Th.getValidate=D2e;function BP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?Sx.default.this:Xa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Xa._)`await ${(0,k2e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Xa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,k2e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Xa._)`${m}.errors`;s.assign(Sx.default.vErrors,(0,Xa._)`${Sx.default.vErrors} === null ? ${h} : ${Sx.default.vErrors}.concat(${h})`),s.assign(Sx.default.errors,(0,Xa._)`${Sx.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=DP.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Xa._)`${m}.evaluated.props`);i.props=DP.mergeEvaluated.props(s,g,i.props,Xa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=DP.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Xa._)`${m}.evaluated.items`);i.items=DP.mergeEvaluated.items(s,g,i.items,Xa.Name)}}}Th.callRef=BP;Th.default=H7t});var L2e=_(wj=>{"use strict";Object.defineProperty(wj,"__esModule",{value:!0});var G7t=O2e(),z7t=B2e(),K7t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",G7t.default,z7t.default];wj.default=K7t});var M2e=_(Rj=>{"use strict";Object.defineProperty(Rj,"__esModule",{value:!0});var LP=Jt(),c0=LP.operators,MP={maximum:{okStr:"<=",ok:c0.LTE,fail:c0.GT},minimum:{okStr:">=",ok:c0.GTE,fail:c0.LT},exclusiveMaximum:{okStr:"<",ok:c0.LT,fail:c0.GTE},exclusiveMinimum:{okStr:">",ok:c0.GT,fail:c0.LTE}},V7t={message:({keyword:t,schemaCode:e})=>(0,LP.str)`must be ${MP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,LP._)`{comparison: ${MP[t].okStr}, limit: ${e}}`},Y7t={keyword:Object.keys(MP),type:"number",schemaType:"number",$data:!0,error:V7t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,LP._)`${r} ${MP[e].fail} ${n} || isNaN(${r})`)}};Rj.default=Y7t});var W2e=_(Nj=>{"use strict";Object.defineProperty(Nj,"__esModule",{value:!0});var uS=Jt(),J7t={message:({schemaCode:t})=>(0,uS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,uS._)`{multipleOf: ${t}}`},X7t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:J7t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,uS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,uS._)`${a} !== parseInt(${a})`;t.fail$data((0,uS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Nj.default=X7t});var U2e=_(Oj=>{"use strict";Object.defineProperty(Oj,"__esModule",{value:!0});function $2e(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}Oj.default=$2e;$2e.code='require("ajv/dist/runtime/ucs2length").default'});var F2e=_(kj=>{"use strict";Object.defineProperty(kj,"__esModule",{value:!0});var wh=Jt(),Z7t=Fr(),e9t=U2e(),t9t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,wh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,wh._)`{limit: ${t}}`},r9t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:t9t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?wh.operators.GT:wh.operators.LT,a=s.opts.unicode===!1?(0,wh._)`${r}.length`:(0,wh._)`${(0,Z7t.useFunc)(t.gen,e9t.default)}(${r})`;t.fail$data((0,wh._)`${a} ${i} ${n}`)}};kj.default=r9t});var q2e=_(Pj=>{"use strict";Object.defineProperty(Pj,"__esModule",{value:!0});var n9t=hc(),WP=Jt(),s9t={message:({schemaCode:t})=>(0,WP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,WP._)`{pattern: ${t}}`},i9t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:s9t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,WP._)`(new RegExp(${s}, ${a}))`:(0,n9t.usePattern)(t,n);t.fail$data((0,WP._)`!${o}.test(${e})`)}};Pj.default=i9t});var j2e=_(Dj=>{"use strict";Object.defineProperty(Dj,"__esModule",{value:!0});var lS=Jt(),a9t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,lS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,lS._)`{limit: ${t}}`},o9t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:a9t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?lS.operators.GT:lS.operators.LT;t.fail$data((0,lS._)`Object.keys(${r}).length ${s} ${n}`)}};Dj.default=o9t});var Q2e=_(Bj=>{"use strict";Object.defineProperty(Bj,"__esModule",{value:!0});var dS=hc(),fS=Jt(),c9t=Fr(),u9t={message:({params:{missingProperty:t}})=>(0,fS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,fS._)`{missingProperty: ${t}}`},l9t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:u9t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,c9t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(fS.nil,d);else for(let p of r)(0,dS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,dS.checkMissingProp)(t,r,p)),(0,dS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,dS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,dS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,fS.not)(m),()=>{t.error(),e.break()})},fS.nil)}}};Bj.default=l9t});var H2e=_(Lj=>{"use strict";Object.defineProperty(Lj,"__esModule",{value:!0});var pS=Jt(),d9t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,pS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,pS._)`{limit: ${t}}`},f9t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:d9t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?pS.operators.GT:pS.operators.LT;t.fail$data((0,pS._)`${r}.length ${s} ${n}`)}};Lj.default=f9t});var $P=_(Mj=>{"use strict";Object.defineProperty(Mj,"__esModule",{value:!0});var G2e=sc();G2e.code='require("ajv/dist/runtime/equal").default';Mj.default=G2e});var z2e=_($j=>{"use strict";Object.defineProperty($j,"__esModule",{value:!0});var Wj=Zv(),Ei=Jt(),p9t=Fr(),m9t=$P(),h9t={message:({params:{i:t,j:e}})=>(0,Ei.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ei._)`{i: ${t}, j: ${e}}`},g9t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:h9t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,Wj.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,Ei._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,Ei._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Ei._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let y=e.name("item"),g=(0,Wj.checkDataTypes)(u,y,o.opts.strictNumbers,Wj.DataType.Wrong),b=e.const("indices",(0,Ei._)`{}`);e.for((0,Ei._)`;${m}--;`,()=>{e.let(y,(0,Ei._)`${r}[${m}]`),e.if(g,(0,Ei._)`continue`),u.length>1&&e.if((0,Ei._)`typeof ${y} == "string"`,(0,Ei._)`${y} += "_"`),e.if((0,Ei._)`typeof ${b}[${y}] == "number"`,()=>{e.assign(h,(0,Ei._)`${b}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,Ei._)`${b}[${y}] = ${m}`)})}function p(m,h){let y=(0,p9t.useFunc)(e,m9t.default),g=e.name("outer");e.label(g).for((0,Ei._)`;${m}--;`,()=>e.for((0,Ei._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Ei._)`${y}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};$j.default=g9t});var K2e=_(Fj=>{"use strict";Object.defineProperty(Fj,"__esModule",{value:!0});var Uj=Jt(),y9t=Fr(),A9t=$P(),x9t={message:"must be equal to constant",params:({schemaCode:t})=>(0,Uj._)`{allowedValue: ${t}}`},b9t={keyword:"const",$data:!0,error:x9t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Uj._)`!${(0,y9t.useFunc)(e,A9t.default)}(${r}, ${s})`):t.fail((0,Uj._)`${i} !== ${r}`)}};Fj.default=b9t});var V2e=_(qj=>{"use strict";Object.defineProperty(qj,"__esModule",{value:!0});var mS=Jt(),_9t=Fr(),E9t=$P(),v9t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,mS._)`{allowedValues: ${t}}`},S9t={keyword:"enum",schemaType:"array",$data:!0,error:v9t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,_9t.useFunc)(e,E9t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,mS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,mS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,mS._)`${u()}(${r}, ${p}[${m}])`:(0,mS._)`${r} === ${h}`}}};qj.default=S9t});var Y2e=_(jj=>{"use strict";Object.defineProperty(jj,"__esModule",{value:!0});var I9t=M2e(),C9t=W2e(),T9t=F2e(),w9t=q2e(),R9t=j2e(),N9t=Q2e(),O9t=H2e(),k9t=z2e(),P9t=K2e(),D9t=V2e(),B9t=[I9t.default,C9t.default,T9t.default,w9t.default,R9t.default,N9t.default,O9t.default,k9t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},P9t.default,D9t.default];jj.default=B9t});var Hj=_(hS=>{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});hS.validateAdditionalItems=void 0;var Rh=Jt(),Qj=Fr(),L9t={message:({params:{len:t}})=>(0,Rh.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Rh._)`{limit: ${t}}`},M9t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:L9t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Qj.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}J2e(t,n)}};function J2e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Rh._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Rh._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Qj.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Rh._)`${o} <= ${e.length}`);r.if((0,Rh.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:Qj.Type.Num},u),a.allErrors||r.if((0,Rh.not)(u),()=>r.break())})}}hS.validateAdditionalItems=J2e;hS.default=M9t});var Gj=_(gS=>{"use strict";Object.defineProperty(gS,"__esModule",{value:!0});gS.validateTuple=void 0;var X2e=Jt(),UP=Fr(),W9t=hc(),$9t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Z2e(t,"additionalItems",e);r.items=!0,!(0,UP.alwaysValidSchema)(r,e)&&t.ok((0,W9t.validateArray)(t))}};function Z2e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=UP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,X2e._)`${i}.length`);r.forEach((d,f)=>{(0,UP.alwaysValidSchema)(o,d)||(n.if((0,X2e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,UP.checkStrictMode)(o,y,f.strictTuples)}}}gS.validateTuple=Z2e;gS.default=$9t});var eTe=_(zj=>{"use strict";Object.defineProperty(zj,"__esModule",{value:!0});var U9t=Gj(),F9t={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,U9t.validateTuple)(t,"items")};zj.default=F9t});var rTe=_(Kj=>{"use strict";Object.defineProperty(Kj,"__esModule",{value:!0});var tTe=Jt(),q9t=Fr(),j9t=hc(),Q9t=Hj(),H9t={message:({params:{len:t}})=>(0,tTe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tTe._)`{limit: ${t}}`},G9t={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:H9t,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,q9t.alwaysValidSchema)(n,e)&&(s?(0,Q9t.validateAdditionalItems)(t,s):t.ok((0,j9t.validateArray)(t)))}};Kj.default=G9t});var nTe=_(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});var yc=Jt(),FP=Fr(),z9t={message:({params:{min:t,max:e}})=>e===void 0?(0,yc.str)`must contain at least ${t} valid item(s)`:(0,yc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,yc._)`{minContains: ${t}}`:(0,yc._)`{minContains: ${t}, maxContains: ${e}}`},K9t={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:z9t,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,yc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,FP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,FP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,FP.alwaysValidSchema)(i,r)){let h=(0,yc._)`${l} >= ${a}`;o!==void 0&&(h=(0,yc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,yc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);p(h,()=>e.if(h,()=>m(y)))}function p(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:FP.Type.Num,compositeRule:!0},h),y()})}function m(h){e.code((0,yc._)`${h}++`),o===void 0?e.if((0,yc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,yc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,yc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};Vj.default=K9t});var aTe=_(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});yl.validateSchemaDeps=yl.validatePropertyDeps=yl.error=void 0;var Yj=Jt(),V9t=Fr(),yS=hc();yl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Yj.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Yj._)`{property: ${t},
|
|
missingProperty: ${n},
|
|
depsCount: ${e},
|
|
deps: ${r}}`};var Y9t={keyword:"dependencies",type:"object",schemaType:"object",error:yl.error,code(t){let[e,r]=J9t(t);sTe(t,e),iTe(t,r)}};function J9t({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function sTe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,yS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,yS.checkReportMissingProp)(t,u)}):(r.if((0,Yj._)`${c} && (${(0,yS.checkMissingProp)(t,o,i)})`),(0,yS.reportMissingProp)(t,i),r.else())}}yl.validatePropertyDeps=sTe;function iTe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,V9t.alwaysValidSchema)(i,e[o])||(r.if((0,yS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}yl.validateSchemaDeps=iTe;yl.default=Y9t});var cTe=_(Jj=>{"use strict";Object.defineProperty(Jj,"__esModule",{value:!0});var oTe=Jt(),X9t=Fr(),Z9t={message:"property name must be valid",params:({params:t})=>(0,oTe._)`{propertyName: ${t.propertyName}}`},eqt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Z9t,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,X9t.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,oTe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};Jj.default=eqt});var Zj=_(Xj=>{"use strict";Object.defineProperty(Xj,"__esModule",{value:!0});var qP=hc(),lu=Jt(),tqt=Jd(),jP=Fr(),rqt={message:"must NOT have additional properties",params:({params:t})=>(0,lu._)`{additionalProperty: ${t.additionalProperty}}`},nqt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:rqt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,jP.alwaysValidSchema)(a,r))return;let u=(0,qP.allSchemaProperties)(n.properties),l=(0,qP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,lu._)`${i} === ${tqt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?m(y):e.if(f(y),()=>m(y))})}function f(y){let g;if(u.length>8){let b=(0,jP.schemaRefOrVal)(a,n.properties,"properties");g=(0,qP.isOwnProperty)(e,b,y)}else u.length?g=(0,lu.or)(...u.map(b=>(0,lu._)`${y} === ${b}`)):g=lu.nil;return l.length&&(g=(0,lu.or)(g,...l.map(b=>(0,lu._)`${(0,qP.usePattern)(t,b)}.test(${y})`))),(0,lu.not)(g)}function p(y){e.code((0,lu._)`delete ${s}[${y}]`)}function m(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,jP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,lu.not)(g),()=>{t.reset(),p(y)})):(h(y,g),o||e.if((0,lu.not)(g),()=>e.break()))}}function h(y,g,b){let x={keyword:"additionalProperties",dataProp:y,dataPropType:jP.Type.Str};b===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,g)}}};Xj.default=nqt});var dTe=_(tQ=>{"use strict";Object.defineProperty(tQ,"__esModule",{value:!0});var sqt=nS(),uTe=hc(),eQ=Fr(),lTe=Zj(),iqt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&lTe.default.code(new sqt.KeywordCxt(i,lTe.default,"additionalProperties"));let a=(0,uTe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=eQ.mergeEvaluated.props(e,(0,eQ.toHash)(a),i.props));let o=a.filter(d=>!(0,eQ.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,uTe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};tQ.default=iqt});var hTe=_(rQ=>{"use strict";Object.defineProperty(rQ,"__esModule",{value:!0});var fTe=hc(),QP=Jt(),pTe=Fr(),mTe=Fr(),aqt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,fTe.allSchemaProperties)(r),c=o.filter(h=>(0,pTe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof QP.Name)&&(i.props=(0,mTe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let y in u)new RegExp(h).test(y)&&(0,pTe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,y=>{e.if((0,QP._)`${(0,fTe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:mTe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,QP._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,QP.not)(l),()=>e.break())})})}}};rQ.default=aqt});var gTe=_(nQ=>{"use strict";Object.defineProperty(nQ,"__esModule",{value:!0});var oqt=Fr(),cqt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,oqt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};nQ.default=cqt});var yTe=_(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});var uqt=hc(),lqt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:uqt.validateUnion,error:{message:"must match a schema in anyOf"}};sQ.default=lqt});var ATe=_(iQ=>{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});var HP=Jt(),dqt=Fr(),fqt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,HP._)`{passingSchemas: ${t.passing}}`},pqt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:fqt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,dqt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,HP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,HP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,HP.Name)})})}}};iQ.default=pqt});var xTe=_(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});var mqt=Fr(),hqt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,mqt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};aQ.default=hqt});var ETe=_(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});var GP=Jt(),_Te=Fr(),gqt={message:({params:t})=>(0,GP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,GP._)`{failingKeyword: ${t.ifClause}}`},yqt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:gqt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_Te.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=bTe(n,"then"),i=bTe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,GP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,GP._)`${l}`):t.setParams({ifClause:l})}}}};function bTe(t,e){let r=t.schema[e];return r!==void 0&&!(0,_Te.alwaysValidSchema)(t,r)}oQ.default=yqt});var vTe=_(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});var Aqt=Fr(),xqt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Aqt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};cQ.default=xqt});var STe=_(uQ=>{"use strict";Object.defineProperty(uQ,"__esModule",{value:!0});var bqt=Hj(),_qt=eTe(),Eqt=Gj(),vqt=rTe(),Sqt=nTe(),Iqt=aTe(),Cqt=cTe(),Tqt=Zj(),wqt=dTe(),Rqt=hTe(),Nqt=gTe(),Oqt=yTe(),kqt=ATe(),Pqt=xTe(),Dqt=ETe(),Bqt=vTe();function Lqt(t=!1){let e=[Nqt.default,Oqt.default,kqt.default,Pqt.default,Dqt.default,Bqt.default,Cqt.default,Tqt.default,Iqt.default,wqt.default,Rqt.default];return t?e.push(_qt.default,vqt.default):e.push(bqt.default,Eqt.default),e.push(Sqt.default),e}uQ.default=Lqt});var ITe=_(lQ=>{"use strict";Object.defineProperty(lQ,"__esModule",{value:!0});var ps=Jt(),Mqt={message:({schemaCode:t})=>(0,ps.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ps._)`{format: ${t}}`},Wqt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Mqt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ps._)`${m}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,ps._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,ps._)`${h}.type || "string"`).assign(g,(0,ps._)`${h}.validate`),()=>r.assign(y,(0,ps._)`"string"`).assign(g,h)),t.fail$data((0,ps.or)(b(),x()));function b(){return c.strictSchema===!1?ps.nil:(0,ps._)`${a} && !${g}`}function x(){let A=l.$async?(0,ps._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ps._)`${g}(${n})`,S=(0,ps._)`(typeof ${g} == "function" ? ${A} : ${g}.test(${n}))`;return(0,ps._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,y,g]=x(m);h===e&&t.pass(A());function b(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function x(S){let I=S instanceof RegExp?(0,ps.regexpCode)(S):c.code.formats?(0,ps._)`${c.code.formats}${(0,ps.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:S,code:I});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,ps._)`${R}.validate`]:["string",S,R]}function A(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ps._)`await ${g}(${n})`}return typeof y=="function"?(0,ps._)`${g}(${n})`:(0,ps._)`${g}.test(${n})`}}}};lQ.default=Wqt});var CTe=_(dQ=>{"use strict";Object.defineProperty(dQ,"__esModule",{value:!0});var $qt=ITe(),Uqt=[$qt.default];dQ.default=Uqt});var TTe=_(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.contentVocabulary=Ix.metadataVocabulary=void 0;Ix.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ix.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var RTe=_(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});var Fqt=L2e(),qqt=Y2e(),jqt=STe(),Qqt=CTe(),wTe=TTe(),Hqt=[Fqt.default,qqt.default,(0,jqt.default)(),Qqt.default,wTe.metadataVocabulary,wTe.contentVocabulary];fQ.default=Hqt});var OTe=_(zP=>{"use strict";Object.defineProperty(zP,"__esModule",{value:!0});zP.DiscrError=void 0;var NTe;(function(t){t.Tag="tag",t.Mapping="mapping"})(NTe||(zP.DiscrError=NTe={}))});var PTe=_(mQ=>{"use strict";Object.defineProperty(mQ,"__esModule",{value:!0});var Cx=Jt(),pQ=OTe(),kTe=wP(),Gqt=sS(),zqt=Fr(),Kqt={message:({params:{discrError:t,tagName:e}})=>t===pQ.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Cx._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Vqt={keyword:"discriminator",type:"object",schemaType:"object",error:Kqt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Cx._)`${r}${(0,Cx.getProperty)(o)}`);e.if((0,Cx._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:pQ.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Cx._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:pQ.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Cx.Name),m}function f(){var p;let m={},h=g(s),y=!0;for(let A=0;A<a.length;A++){let S=a[A];if(S?.$ref&&!(0,zqt.schemaHasRulesButRef)(S,i.self.RULES)){let R=S.$ref;if(S=kTe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),S instanceof kTe.SchemaEnv&&(S=S.schema),S===void 0)throw new Gqt.default(i.opts.uriResolver,i.baseId,R)}let I=(p=S?.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}"`);y=y&&(h||g(S)),b(I,A)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:A}){return Array.isArray(A)&&A.includes(o)}function b(A,S){if(A.const)x(A.const,S);else if(A.enum)for(let I of A.enum)x(I,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function x(A,S){if(typeof A!="string"||A in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[A]=S}}}};mQ.default=Vqt});var DTe=_((c9r,Yqt)=>{Yqt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var LTe=_((Ln,hQ)=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.MissingRefError=Ln.ValidationError=Ln.CodeGen=Ln.Name=Ln.nil=Ln.stringify=Ln.str=Ln._=Ln.KeywordCxt=Ln.Ajv=void 0;var Jqt=N2e(),Xqt=RTe(),Zqt=PTe(),BTe=DTe(),ejt=["/properties"],KP="http://json-schema.org/draft-07/schema",Tx=class extends Jqt.default{_addVocabularies(){super._addVocabularies(),Xqt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Zqt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(BTe,ejt):BTe;this.addMetaSchema(e,KP,!1),this.refs["http://json-schema.org/schema"]=KP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(KP)?KP:void 0)}};Ln.Ajv=Tx;hQ.exports=Ln=Tx;hQ.exports.Ajv=Tx;Object.defineProperty(Ln,"__esModule",{value:!0});Ln.default=Tx;var tjt=nS();Object.defineProperty(Ln,"KeywordCxt",{enumerable:!0,get:function(){return tjt.KeywordCxt}});var wx=Jt();Object.defineProperty(Ln,"_",{enumerable:!0,get:function(){return wx._}});Object.defineProperty(Ln,"str",{enumerable:!0,get:function(){return wx.str}});Object.defineProperty(Ln,"stringify",{enumerable:!0,get:function(){return wx.stringify}});Object.defineProperty(Ln,"nil",{enumerable:!0,get:function(){return wx.nil}});Object.defineProperty(Ln,"Name",{enumerable:!0,get:function(){return wx.Name}});Object.defineProperty(Ln,"CodeGen",{enumerable:!0,get:function(){return wx.CodeGen}});var rjt=CP();Object.defineProperty(Ln,"ValidationError",{enumerable:!0,get:function(){return rjt.default}});var njt=sS();Object.defineProperty(Ln,"MissingRefError",{enumerable:!0,get:function(){return njt.default}})});var MTe=_(Rx=>{"use strict";Object.defineProperty(Rx,"__esModule",{value:!0});Rx.formatLimitDefinition=void 0;var sjt=LTe(),du=Jt(),u0=du.operators,VP={formatMaximum:{okStr:"<=",ok:u0.LTE,fail:u0.GT},formatMinimum:{okStr:">=",ok:u0.GTE,fail:u0.LT},formatExclusiveMaximum:{okStr:"<",ok:u0.LT,fail:u0.GTE},formatExclusiveMinimum:{okStr:">",ok:u0.GT,fail:u0.LTE}},ijt={message:({keyword:t,schemaCode:e})=>du.str`should be ${VP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>du._`{comparison: ${VP[t].okStr}, limit: ${e}}`};Rx.formatLimitDefinition={keyword:Object.keys(VP),type:"string",schemaType:"string",$data:!0,error:ijt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new sjt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",du._`${f}[${c.schemaCode}]`);t.fail$data(du.or(du._`typeof ${p} != "object"`,du._`${p} instanceof RegExp`,du._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?du._`${a.code.formats}${du.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return du._`${f}.compare(${r}, ${n}) ${VP[s].fail} 0`}},dependencies:["format"]};var ajt=t=>(t.addKeyword(Rx.formatLimitDefinition),t);Rx.default=ajt});var FTe=_((AS,UTe)=>{"use strict";Object.defineProperty(AS,"__esModule",{value:!0});var Nx=lCe(),ojt=MTe(),gQ=Jt(),WTe=new gQ.Name("fullFormats"),cjt=new gQ.Name("fastFormats"),yQ=(t,e={keywords:!0})=>{if(Array.isArray(e))return $Te(t,e,Nx.fullFormats,WTe),t;let[r,n]=e.mode==="fast"?[Nx.fastFormats,cjt]:[Nx.fullFormats,WTe],s=e.formats||Nx.formatNames;return $Te(t,s,r,n),e.keywords&&ojt.default(t),t};yQ.get=(t,e="full")=>{let n=(e==="fast"?Nx.fastFormats:Nx.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function $Te(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=gQ._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}UTe.exports=AS=yQ;Object.defineProperty(AS,"__esModule",{value:!0});AS.default=yQ});var QTe=_((l9r,jTe)=>{"use strict";var ujt=cIe().default,ljt=Tq(),qTe=wq(),AQ=class{constructor(e,r){r.mode==="JTD"?this.ajv=new ljt(Object.assign({},qTe,r.customOptions)):this.ajv=new ujt(Object.assign({},qTe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&FTe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};jTe.exports=AQ});var GTe=_((d9r,HTe)=>{"use strict";var djt=Tq(),fjt=wq(),xQ=class{constructor(e,r){this.ajv=new djt(Object.assign({},fjt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};HTe.exports=xQ});var VTe=_((bS,KTe)=>{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});var xS=Nk(),fu=QA();function zTe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return t.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,fu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,fu._)`export const ${(0,fu.getEsmExportName)(f)}`:(0,fu._)`exports${(0,fu.getProperty)(f)}`;d=(0,fu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===xS.UsedValueState.Completed)return fu.nil;p(c.validateName,xS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new fu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,fu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let y=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof y=="function")return a(o,y.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof y=="object"){let{validate:g,validateName:b}=y;if(!b)throw new Error("ajv internal error");let x=t.opts.code.es5?xS.varKinds.var:xS.varKinds.const,A=(0,fu._)`${x} ${m} = {validate: ${b}};`;if(f(b)===xS.UsedValueState.Started)return A;let S=a(o,g?.source);return(0,fu._)`${A}${r}${S}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:y}=m;(o[y]=o[y]||new Map).set(m,h)}}}KTe.exports=bS=zTe;Object.defineProperty(bS,"__esModule",{value:!0});bS.default=zTe});var XTe=_((f9r,JTe)=>{"use strict";var YTe=bQ(),pjt=VTe().default;function mjt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=YTe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=pjt(i[YTe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}JTe.exports=mjt});var bQ=_((p9r,Ox)=>{"use strict";var ewe=Symbol.for("fastify.ajv-compiler.reference"),hjt=QTe(),gjt=GTe();function _Q(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=ZTe({},i);if(r.has(a))return r.get(a);let o=new gjt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=ZTe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new hjt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[ewe]=o),c}}function ZTe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Ox.exports=_Q;Ox.exports.default=_Q;Ox.exports.AjvCompiler=_Q;Ox.exports.AjvReference=ewe;Ox.exports.StandaloneValidator=XTe()});var EQ=_((m9r,twe)=>{"use strict";var{buildSchemas:yjt}=hE(),Ajt=d7(),xjt=bQ();function bjt(t,e){if(t)return new kx(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=xjt()),r.buildSerializer||(r.buildSerializer=Ajt());let n={bucket:e&&e.bucket||yjt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new kx(void 0,n)}var kx=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};kx.buildSchemaController=bjt;twe.exports=kx});var wQ=_((h9r,TQ)=>{"use strict";var vQ=PF(),IQ=require("node:assert"),CQ=Symbol.for("registered-plugin"),{kTestInternals:_jt}=zs(),{exist:Ejt,existReply:vjt,existRequest:Sjt}=jF(),{FST_ERR_PLUGIN_VERSION_MISMATCH:Ijt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:Cjt}=Di(),{FSTWRN002:Tjt}=wd();function _S(t){return t[Symbol.for("plugin-meta")]}function rwe(t){let e=nwe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;s<n.length;s++){let i=n[s];if(r[i].exports===t)return i}}return t.name?t.name:null}function wjt(t){return t.toString().split(`
|
|
`).slice(0,2).map(e=>e.trim()).join(" -- ")}function nwe(t){return t[Symbol.for("fastify.display-name")]}function swe(t){return!!t[Symbol.for("skip-override")]}function iwe(t){let e=_S(t);if(!e)return;let r=e.dependencies;r&&(IQ(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{IQ(this[CQ].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function awe(t){let e=_S(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&SQ(this,"Fastify",r.fastify,n),r.reply&&SQ(this,"Reply",r.reply,n),r.request&&SQ(this,"Request",r.request,n))}var Rjt={Fastify:Ejt,Request:Sjt,Reply:vjt};function SQ(t,e,r,n){IQ(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!Rjt[e].call(t,s))throw new Cjt(s,i,e)})}function Njt(t){let e=_S(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&vQ.gt(this.version,vQ.coerce(r))===!0)&&r&&vQ.satisfies(this.version,r,{includePrerelease:n})===!1)throw new Ijt(e.name,r,this.version)}function Ojt(t){let e=_S(t);if(!e)return;let r=e.name;if(r)return this[CQ].push(r),r}function kjt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&Tjt(e||"anonymous")}function Pjt(t){let e=Ojt.call(this,t)||rwe(t);return kjt.call(this,t,e),Njt.call(this,t),awe.call(this,t),iwe.call(this,t),swe(t)}TQ.exports={getPluginName:rwe,getFuncPreview:wjt,kRegisteredPlugins:CQ,getDisplayName:nwe,registerPlugin:Pjt};TQ.exports[_jt]={shouldSkipOverride:swe,getMeta:_S,checkDecorators:awe,checkDependencies:iwe}});var YP=_((g9r,owe)=>{"use strict";function Djt(t,e){let r=e||Ljt();return t?Mjt(t,r):r}function Bjt(t,e){return t.genReqId(e)}function Ljt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function Mjt(t,e){return function(r){return r.headers[t]||e(r)}}owe.exports={getGenReqId:Bjt,reqIdGenFactory:Djt}});var dwe=_((y9r,lwe)=>{"use strict";var cwe=12,Wjt=0,RQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function $jt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=cwe;e>-1&&e<r;){var c=uwe(t[e+1],4),u=uwe(t[e+2],0),l=c|u,d=RQ[l];if(o=RQ[256+o+d],i=i<<6|l&RQ[364+d],o===cwe)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===Wjt)return null;if(e+=3,e<r&&t.charCodeAt(e)===37)continue;return null}}return n+t.slice(s)}var Ujt={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 uwe(t,e){var r=Ujt[t];return r===void 0?255:r<<e}lwe.exports=$jt});var gwe=_((A9r,hwe)=>{"use strict";var fwe=dwe(),pwe=/\+/g,mwe=function(){};mwe.prototype=Object.create(null);function Fjt(t){let e=new mwe;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;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(pwe," ")),o&&(n=fwe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(pwe," ")),c&&(s=fwe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}hwe.exports=Fjt});var Awe=_((x9r,ywe)=>{var Al=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),qjt=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function jjt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s<e;s++){let i=t.charCodeAt(s);for(;i<128;){if(qjt[i]!==1&&(n<s&&(r+=t.slice(n,s)),n=s+1,r+=Al[i]),++s===e)break e;i=t.charCodeAt(s)}if(n<s&&(r+=t.slice(n,s)),i<2048){n=s+1,r+=Al[192|i>>6]+Al[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=Al[224|i>>12]+Al[128|i>>6&63]+Al[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=Al[240|i>>18]+Al[128|i>>12&63]+Al[128|i>>6&63]+Al[128|i&63]}return n===0?t:n<e?r+t.slice(n):r}ywe.exports={encodeString:jjt}});var _we=_((b9r,bwe)=>{"use strict";var{encodeString:NQ}=Awe();function xwe(t){let e=typeof t;return e==="string"?NQ(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:NQ(""+t):""}function Qjt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a<s;a++){let o=n[a],c=t[o],u=NQ(o)+"=";if(a&&(e+=r),Array.isArray(c)){i=c.length;for(let l=0;l<i;l++)l&&(e+=r),e+=u,e+=xwe(c[l])}else e+=u,e+=xwe(c)}return e}bwe.exports=Qjt});var Iwe=_((_9r,ES)=>{"use strict";var Ewe=gwe(),vwe=_we(),Swe={parse:Ewe,stringify:vwe};ES.exports=Swe;ES.exports.default=Swe;ES.exports.parse=Ewe;ES.exports.stringify=vwe});var Twe=_(Cwe=>{"use strict";Object.defineProperty(Cwe,"__esModule",{value:!0})});var wwe=_(vS=>{"use strict";Object.defineProperty(vS,"__esModule",{value:!0});vS.types=void 0;var Hjt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(Hjt=vS.types||(vS.types={}))});var Nwe=_(Rwe=>{"use strict";Object.defineProperty(Rwe,"__esModule",{value:!0})});var tf=_(ef=>{"use strict";var Gjt=ef&&ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),OQ=ef&&ef.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Gjt(e,t,r)};Object.defineProperty(ef,"__esModule",{value:!0});OQ(Twe(),ef);OQ(wwe(),ef);OQ(Nwe(),ef)});var JP=_(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.anyChar=zi.notWhitespace=zi.whitespace=zi.notInts=zi.ints=zi.notWords=zi.words=void 0;var Qr=tf(),Owe=()=>[{type:Qr.types.RANGE,from:48,to:57}],kwe=()=>[{type:Qr.types.CHAR,value:95},{type:Qr.types.RANGE,from:97,to:122},{type:Qr.types.RANGE,from:65,to:90},{type:Qr.types.RANGE,from:48,to:57}],Pwe=()=>[{type:Qr.types.CHAR,value:9},{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:11},{type:Qr.types.CHAR,value:12},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:32},{type:Qr.types.CHAR,value:160},{type:Qr.types.CHAR,value:5760},{type:Qr.types.RANGE,from:8192,to:8202},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233},{type:Qr.types.CHAR,value:8239},{type:Qr.types.CHAR,value:8287},{type:Qr.types.CHAR,value:12288},{type:Qr.types.CHAR,value:65279}],zjt=()=>[{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233}];zi.words=()=>({type:Qr.types.SET,set:kwe(),not:!1});zi.notWords=()=>({type:Qr.types.SET,set:kwe(),not:!0});zi.ints=()=>({type:Qr.types.SET,set:Owe(),not:!1});zi.notInts=()=>({type:Qr.types.SET,set:Owe(),not:!0});zi.whitespace=()=>({type:Qr.types.SET,set:Pwe(),not:!1});zi.notWhitespace=()=>({type:Qr.types.SET,set:Pwe(),not:!0});zi.anyChar=()=>({type:Qr.types.SET,set:zjt(),not:!0})});var Bwe=_(Ac=>{"use strict";var Kjt=Ac&&Ac.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Vjt=Ac&&Ac.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Yjt=Ac&&Ac.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Kjt(e,t,r);return Vjt(e,t),e};Object.defineProperty(Ac,"__esModule",{value:!0});Ac.tokenizeClass=Ac.strToChars=void 0;var Dwe=tf(),Px=Yjt(JP()),Jjt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";Ac.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?Jjt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};Ac.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Px.words())!==null&&r!==void 0?r:l[2]&&Px.ints())!==null&&n!==void 0?n:l[3]&&Px.whitespace())!==null&&s!==void 0?s:l[4]&&Px.notWords())!==null&&i!==void 0?i:l[5]&&Px.notInts())!==null&&a!==void 0?a:l[6]&&Px.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:Dwe.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:Dwe.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var kQ=_(xl=>{"use strict";var Xjt=xl&&xl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zjt=xl&&xl.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mwe=xl&&xl.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xjt(e,t,r);return Zjt(e,t),e};Object.defineProperty(xl,"__esModule",{value:!0});xl.tokenizer=void 0;var Lwe=Mwe(Bwe()),vi=tf(),Nh=Mwe(JP());xl.tokenizer=t=>{let e=0,r,n={type:vi.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=Lwe.strToChars(t);for(;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:vi.types.POSITION,value:"b"});break;case"B":i.push({type:vi.types.POSITION,value:"B"});break;case"w":i.push(Nh.words());break;case"W":i.push(Nh.notWords());break;case"d":i.push(Nh.ints());break;case"D":i.push(Nh.notInts());break;case"s":i.push(Nh.whitespace());break;case"S":i.push(Nh.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:vi.types.REFERENCE,value:f};i.push(p),o.push({reference:p,stack:i,index:i.length-1})}else i.push({type:vi.types.CHAR,value:r.charCodeAt(0)})}break;case"^":i.push({type:vi.types.POSITION,value:"^"});break;case"$":i.push({type:vi.types.POSITION,value:"$"});break;case"[":{let d;l[e]==="^"?(d=!0,e++):d=!1;let f=Lwe.tokenizeClass(l.slice(e),t);e+=f[1],i.push({type:vi.types.SET,set:f[0],not:d});break}case".":i.push(Nh.anyChar());break;case"(":{let d={type:vi.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:vi.types.REPETITION,min:f,max:p,value:i.pop()})):i.push({type:vi.types.CHAR,value:123});break}case"?":i.length===0&&u(e),i.push({type:vi.types.REPETITION,min:0,max:1,value:i.pop()});break;case"+":i.length===0&&u(e),i.push({type:vi.types.REPETITION,min:1,max:1/0,value:i.pop()});break;case"*":i.length===0&&u(e),i.push({type:vi.types.REPETITION,min:0,max:1/0,value:i.pop()});break;default:i.push({type:vi.types.CHAR,value:r.charCodeAt(0)})}if(a.length!==0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated group`);return eQt(o,c),n};function eQt(t,e){for(let r of t.reverse())if(e<r.reference.value){r.reference.type=vi.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:vi.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var $we=_(Ki=>{"use strict";var tQt=Ki&&Ki.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rQt=Ki&&Ki.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nQt=Ki&&Ki.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tQt(e,t,r);return rQt(e,t),e};Object.defineProperty(Ki,"__esModule",{value:!0});Ki.NOTANYCHAR=Ki.WHITESPACE=Ki.WORDS=Ki.INTS=void 0;var XP=nQt(JP()),Wwe=tf();function ZP(t){let e={},r=0;for(let n of t)n.type===Wwe.types.CHAR&&(e[n.value]=!0),n.type===Wwe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}Ki.INTS=ZP(XP.ints().set);Ki.WORDS=ZP(XP.words().set);Ki.WHITESPACE=ZP(XP.whitespace().set);Ki.NOTANYCHAR=ZP(XP.anyChar().set)});var Fwe=_(xc=>{"use strict";var sQt=xc&&xc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),iQt=xc&&xc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),aQt=xc&&xc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&sQt(e,t,r);return iQt(e,t),e};Object.defineProperty(xc,"__esModule",{value:!0});xc.writeSetTokens=xc.setChar=void 0;var n3=tf(),e3=aQt($we());function r3(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}xc.setChar=r3;function t3(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===n3.types.SET)return!1;let i=s.type===n3.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function Uwe(t,e=!1){if(t3(t.set,e3.INTS))return t.not?"\\D":"\\d";if(t3(t.set,e3.WORDS))return t.not?"\\W":"\\w";if(t.not&&t3(t.set,e3.NOTANYCHAR))return".";if(t3(t.set,e3.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s<t.set.length;s++){let i=t.set[s];r+=oQt(i)}let n=`${t.not?"^":""}${r}`;return e?n:`[${n}]`}xc.writeSetTokens=Uwe;function oQt(t){return t.type===n3.types.CHAR?r3(t.value):t.type===n3.types.RANGE?`${r3(t.from)}-${r3(t.to)}`:Uwe(t,!0)}});var DQ=_(Dx=>{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});Dx.reconstruct=void 0;var l0=tf(),PQ=Fwe(),qwe=t=>t.map(Dx.reconstruct).join(""),jwe=t=>{if("options"in t)return t.options.map(qwe).join("|");if("stack"in t)return qwe(t.stack);throw new Error("options or stack must be Root or Group token")};Dx.reconstruct=t=>{switch(t.type){case l0.types.ROOT:return jwe(t);case l0.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case l0.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case l0.types.REFERENCE:return`\\${t.value}`;case l0.types.SET:return PQ.writeSetTokens(t);case l0.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${jwe(t)})`;case l0.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Dx.reconstruct(t.value)}${n}`}case l0.types.RANGE:return`${PQ.setChar(t.from)}-${PQ.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var Gwe=_((bc,s3)=>{"use strict";var cQt=bc&&bc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),BQ=bc&&bc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&cQt(e,t,r)};Object.defineProperty(bc,"__esModule",{value:!0});bc.types=void 0;var Qwe=tf();Object.defineProperty(bc,"types",{enumerable:!0,get:function(){return Qwe.types}});BQ(kQ(),bc);BQ(DQ(),bc);var Hwe=kQ(),uQt=DQ();BQ(tf(),bc);bc.default=Hwe.tokenizer;s3.exports=Hwe.tokenizer;s3.exports.types=Qwe.types;s3.exports.reconstruct=uQt.reconstruct});var Kwe=_((k9r,i3)=>{"use strict";var zwe=Gwe(),lQt=zwe.types;function LQ(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;dQt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=zwe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===lQt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o<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 dQt(t){return{}.toString.call(t)==="[object RegExp]"}i3.exports=LQ;i3.exports.default=LQ;i3.exports.safeRegex=LQ});var a3=_((P9r,Vwe)=>{"use strict";Vwe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var rRe=_((D9r,tRe)=>{"use strict";var Ywe=sc(),Jwe=a3(),Xwe=Symbol("treeData");function Zwe(t,e=""){let r="",n=Object.keys(t);for(let s=0;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[Xwe]||"").split(`
|
|
`).join(`
|
|
`+e+u);r+=e+c+i+d+`
|
|
`,r+=Zwe(a,e+u)}return r}function fQt(t){let e=t.name||"";return e=e.replace("bound","").trim(),e=(e||"anonymous")+"()",e}function eRe(t){return Array.isArray(t)?t.map(e=>eRe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?fQt(t):t}function pQt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(eRe(o));n[a]=c}}return n}function mQt(t){let e="";for(let[r,n]of Object.entries(t))e+=`
|
|
\u2022 (${r}) ${n}`;return e}function hQt(t){let e={...t.opts.constraints},r=e[Jwe.name];return delete e[Jwe.name],{...t,method:r,opts:{constraints:e}}}function gQt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=mQt(t.metaData),e}function yQt(t){return t.reduce((e,r)=>{for(let n of e)if(Ywe(r.opts.constraints,n.opts.constraints)&&Ywe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function AQt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(hQt)),n=n.map(s=>(s.metaData=pQt(s,r),s)),r.method===void 0&&(n=yQt(n)),n.map(gQt).join(`
|
|
${e}`)}function o3(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[Xwe]=AQt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))o3(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");o3(s,e,r+i,n)}t.wildcardChild&&o3(t.wildcardChild,e,"*",n)}function xQt(t,e){let r={};return o3(t,r,t.prefix,e),Zwe(r)}tRe.exports={prettyPrintTree:xQt}});var sRe=_((B9r,nRe)=>{"use strict";var bQt=a3(),MQ=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(bQt.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;n<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(`
|
|
`))}};nRe.exports=MQ});var aRe=_((L9r,iRe)=>{"use strict";var _Qt=sRe(),p3={STATIC:0,PARAMETRIC:1,WILDCARD:2},c3=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new _Qt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},u3=class extends c3{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s<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 l3(e),this.staticChildren[n]}},l3=class t extends u3{constructor(e){super(),this.prefix=e,this.wildcardChild=null,this.parametricChildren=[],this.kind=p3.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 d3(e,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new f3,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let e=[];for(let r=1;r<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(" && ")}`)}},d3=class extends u3{constructor(e,r,n){super(),this.isRegex=!!e,this.regex=e||null,this.staticSuffix=r||null,this.kind=p3.PARAMETRIC,this.nodePaths=new Set([n])}getNextNode(e,r){return this.findStaticMatchingChild(e,r)}},f3=class extends c3{constructor(){super(),this.kind=p3.WILDCARD}getNextNode(){return null}};iRe.exports={StaticNode:l3,ParametricNode:d3,WildcardNode:f3,NODE_TYPES:p3}});var cRe=_((M9r,oRe)=>{"use strict";var EQt=require("node:assert");function SS(){if(!(this instanceof SS))return new SS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}SS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};SS.prototype.get=function(t){return this.store[t]};oRe.exports={name:"version",mustMatchWhenDerived:!0,storage:SS,validate(t){EQt(typeof t=="string","Version should be a string")}}});var lRe=_((W9r,uRe)=>{"use strict";var vQt=require("node:assert");function SQt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}uRe.exports={name:"host",mustMatchWhenDerived:!1,storage:SQt,validate(t){vQt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var fRe=_(($9r,dRe)=>{"use strict";var IQt=cRe(),CQt=lRe(),WQ=require("node:assert"),$Q=class{constructor(e){if(this.strategies={version:IQt,host:CQt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(WQ(typeof e.name=="string"&&e.name!=="","strategy.name is required."),WQ(e.storage&&typeof e.storage=="function","strategy.storage function is required."),WQ(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(`
|
|
`)).bind(this)}};dRe.exports=$Q});var mRe=_((U9r,pRe)=>{"use strict";var TQt=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];pRe.exports=TQt});var yRe=_((F9r,gRe)=>{"use strict";function hRe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function wQt(t,e){let r=!1,n=!1,s="";for(let a=1;a<t.length;a++){let o=t.charCodeAt(a);if(o===37){let c=t.charCodeAt(a+1),u=t.charCodeAt(a+2);hRe(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 RQt(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=hRe(i,a);r+=t.slice(n,s)+o,n=s+3}return t.slice(0,e)+r+t.slice(n)}gRe.exports={safeDecodeURI:wQt,safeDecodeURIComponent:RQt}});var QQ=_((q9r,IRe)=>{"use strict";var ms=require("node:assert"),NQt=Iwe(),m3=Kwe(),FQ=sc(),{prettyPrintTree:OQt}=rRe(),{StaticNode:ARe,NODE_TYPES:xRe}=aRe(),kQt=fRe(),Bx=mRe(),UQ=a3(),{safeDecodeURI:PQt,safeDecodeURIComponent:bRe}=yRe(),_Re=/^https?:\/\/.*?\//,Oh=/(\/:[^/()]*?)\?(\/?)/;if(!m3(_Re))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!m3(Oh))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Vn(t){if(!(this instanceof Vn))return new Vn(t);t=t||{},this._opts=t,t.defaultRoute?(ms(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(ms(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(ms(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=DQt,t.querystringParser?(ms(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:NQt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new kQt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Vn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),ms(typeof r=="string","Path should be a string"),ms(r.length>0,"The path could not be empty"),ms(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),ms(typeof s=="function","Handler should be a function");let a=r.match(Oh);if(a){ms(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(Oh,"$1$2"),l=r.replace(Oh,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=qQ(r)),this.ignoreTrailingSlash&&(r=jQ(r));let c=Array.isArray(e)?e:[e];for(let u of c)ms(typeof u=="string","Method should be a string"),ms(Bx.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};Vn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(ms(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[e]===void 0&&(this.trees[e]=new ARe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new ARe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,y=!0,g="",b=[],x=f+1;for(let A=x;;A++){let S=o.charCodeAt(A),I=S===40,R=S===45||S===46,w=S===47||A===o.length;if(I||R||w){let N=o.slice(x,A);if(l.push(N),h=h||I||R,I){let M=SRe(o,A),D=o.slice(A,M+1);this.allowUnsafeRegex||ms(m3(new RegExp(D)),`The regex '${D}' is not safe!`),b.push(vRe(D)),A=M+1,y=!0}else b.push(y?"(.*?)":`(${g}|(?:(?!${g}).)*)`),y=!1;let k=A;for(;A<o.length;A++){let M=o.charCodeAt(A);if(M===47)break;if(M===58)if(o.charCodeAt(A+1)===58)A++;else break}let B=o.slice(k,A);if(B&&(B=B.split("::").join(":"),B=B.split("%").join("%25"),b.push(g=ERe(B))),x=A+1,w||o.charCodeAt(A)===47||A===o.length){let M=h?"()"+B:B,D=o.slice(f,A);o=o.slice(0,f+1)+M+o.slice(A),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&&FQ(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 y=h;;y++){let g=s.charCodeAt(y),b=g===40,x=g===45||g===46,A=g===47||y===s.length;if(b||x||A){let S=s.slice(h,y);if(o.push(S),d=d||b||x,b){let w=SRe(s,y),N=s.slice(y,w+1);this.allowUnsafeRegex||ms(m3(new RegExp(N)),`The regex '${N}' is not safe!`),m.push(vRe(N)),y=w+1,f=!1}else m.push(f?"(.*?)":`(${p}|(?:(?!${p}).)*)`),f=!1;let I=y;for(;y<s.length;y++){let w=s.charCodeAt(y);if(w===47)break;if(w===58)if(s.charCodeAt(y+1)===58)y++;else break}let R=s.slice(I,y);if(R&&(R=R.split("::").join(":"),R=R.split("%").join("%25"),m.push(p=ERe(R))),h=y+1,A||s.charCodeAt(y)===47||y===s.length){let w=d?"()"+R:R,N=s.slice(c,y);s=s.slice(0,c+1)+w+s.slice(y),c+=w.length;let k=d?new RegExp("^"+m.join("")+"$"):null;if(i=i.getParametricChild(k,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&&FQ(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){ms(typeof r=="string","Path should be a string"),ms(r.length>0,"The path could not be empty"),ms(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),ms(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(Oh);if(s){ms(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(Oh,"$1$2"),o=r.replace(Oh,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=qQ(r)),this.ignoreTrailingSlash&&(r=jQ(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};Vn.prototype._off=function(e,r,n){ms(typeof e=="string","Method should be a string"),ms(Bx.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!FQ(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};Vn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};Vn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};Vn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(_Re,"/")),this.ignoreDuplicateSlashes&&(r=qQ(r));let i,a,o;try{i=PQt(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=jQ(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===xRe.STATIC){l+=s.prefix.length;continue}if(s.kind===xRe.WILDCARD){let g=c.slice(l);o&&(g=bRe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let y=c.slice(l,h);if(o&&(y=bRe(y)),s.isRegex){let g=s.regex.exec(y);if(g===null)continue;for(let b=1;b<g.length;b++){let x=g[b];if(x.length>u)return null;d.push(x)}}else{if(y.length>u)return null;d.push(y)}l=h}};Vn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};Vn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};Vn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};Vn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[UQ.name]=UQ;let a=new Vn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[UQ.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":OQt(r,t)};for(let t in Bx){if(!Bx.hasOwnProperty(t))continue;let e=Bx[t],r=e.toLowerCase();Vn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}Vn.prototype.all=function(t,e,r){this.on(Bx,t,e,r)};IRe.exports=Vn;function ERe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qQ(t){return t.replace(/\/\/+/g,"/")}function jQ(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function vRe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function SRe(t,e){let r=1;for(;e<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 DQt(t){return t?t.store?Object.assign({},t.store):{}:{}}});var TRe=_((j9r,CRe)=>{"use strict";function HQ(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function BQt(t){return t==null?HQ:Array.isArray(t)?[...t,HQ]:[t,HQ]}CRe.exports={parseHeadOnSendHandlers:BQt}});var QRe=_((Q9r,jRe)=>{"use strict";var LQt=QQ(),MQt=dk(),wRe=a8(),{onRequestAbortHookRunner:WQt,lifecycleHooks:RRe,preParsingHookRunner:$Qt,onTimeoutHookRunner:UQt,onRequestHookRunner:FQt}=Rp(),{supportedMethods:qQt}=WF(),{normalizeSchema:jQt}=hE(),{parseHeadOnSendHandlers:QQt}=TRe(),{FSTDEP007:HQt,FSTDEP008:GQt,FSTDEP014:NRe}=wd(),{compileSchemasForValidation:zQt,compileSchemasForSerialization:KQt}=t8(),{FST_ERR_SCH_VALIDATION_BUILD:VQt,FST_ERR_SCH_SERIALIZATION_BUILD:YQt,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:JQt,FST_ERR_DUPLICATED_ROUTE:XQt,FST_ERR_INVALID_URL:ZQt,FST_ERR_HOOK_INVALID_HANDLER:ORe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:eHt,FST_ERR_ROUTE_DUPLICATED_HANDLER:tHt,FST_ERR_ROUTE_HANDLER_NOT_FN:kRe,FST_ERR_ROUTE_MISSING_HANDLER:rHt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:nHt,FST_ERR_ROUTE_METHOD_INVALID:sHt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:iHt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:aHt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:GQ}=Di(),{kRoutePrefix:oHt,kLogLevel:cHt,kLogSerializers:PRe,kHooks:DRe,kSchemaController:uHt,kOptions:BRe,kReplySerializerDefault:zQ,kReplyIsError:lHt,kRequestPayloadStream:dHt,kDisableRequestLogging:fHt,kSchemaErrorFormatter:pHt,kErrorHandler:LRe,kHasBeenDecorated:MRe,kRequestAcceptVersion:KQ,kRouteByFastify:VQ,kRouteContext:WRe}=zs(),{buildErrorHandler:mHt}=zE(),{createChildLogger:hHt}=mE(),{getGenReqId:gHt}=YP();function yHt(t){let e=LQt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:I,hasRoute:A,prepareRoute:x,getDefaultRoute:function(){return NRe(),e.defaultRoute},setDefaultRoute:function(w){if(NRe(),typeof w!="function")throw new JQt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:y,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:S};function y(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function x({method:w,url:N,options:k,handler:B,isFastify:M}){if(typeof N!="string")throw new ZQt(typeof N);if(!B&&typeof k=="function")B=k,k={};else if(B&&typeof B=="function"){if(Object.prototype.toString.call(k)!=="[object Object]")throw new eHt(w,N);if(k.handler)throw typeof k.handler=="function"?new tHt(w,N):new kRe(w,N)}return k=Object.assign({},k,{method:w,url:N,path:N,handler:B||k&&k.handler}),I.call(this,{options:k,isFastify:M})}function A({options:w}){return S(w)!==null}function S(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function I({options:w,isFastify:N}){let k={...w},{exposeHeadRoute:B}=k,D=B!=null?B:f,L=k.method==="GET"||Array.isArray(k.method)&&k.method.includes("GET"),Z=k.method==="HEAD"||Array.isArray(k.method)&&k.method.includes("HEAD"),W=D&&L?{...w}:null;o("Cannot add route!");let U=k.url||k.path||"";if(Array.isArray(k.method))for(var z=0;z<k.method.length;++z)k.method[z]=$Re(k.method[z]),URe(k.method[z],U,k.schema);else k.method=$Re(k.method),URe(k.method,U,k.schema);if(!k.handler)throw new rHt(k.method,U);if(k.errorHandler!==void 0&&typeof k.errorHandler!="function")throw new kRe(k.method,U);qRe(k.bodyLimit);let j=this[oHt];if(U==="/"&&j.length>0&&k.method!=="HEAD")switch(k.prefixTrailingSlash){case"slash":J.call(this,{path:U,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:U,prefixing:!0,isFastify:N})}else U[0]==="/"&&j.endsWith("/")?J.call(this,{path:U.slice(1),isFastify:N}):J.call(this,{path:U,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Te=j+se;if(k.url=Te,k.path=Te,k.routePath=se,k.prefix=j,k.logLevel=k.logLevel||this[cHt],(this[PRe]||k.logSerializers)&&(k.logSerializers=Object.assign(Object.create(this[PRe]),k.logSerializers)),k.attachValidation==null&&(k.attachValidation=!1),oe===!1)for(let G of this[DRe].onRoute)G.call(this,k);for(let G of RRe)if(k&&G in k){if(Array.isArray(k[G]))for(let K of k[G]){if(typeof K!="function")throw new ORe(G,Object.prototype.toString.call(K));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(K.constructor.name==="AsyncFunction"&&K.length===4)throw new GQ}else if(G==="onRequestAbort"){if(K.constructor.name==="AsyncFunction"&&K.length!==1)throw new GQ}else if(K.constructor.name==="AsyncFunction"&&K.length===3)throw new GQ}else if(k[G]!==void 0&&typeof k[G]!="function")throw new ORe(G,Object.prototype.toString.call(k[G]))}let Ne=k.constraints||{},je={...k.config,url:Te,method:k.method},Fe=new MQt({schema:k.schema,handler:k.handler.bind(this),config:je,errorHandler:k.errorHandler,childLoggerFactory:k.childLoggerFactory,bodyLimit:k.bodyLimit,logLevel:k.logLevel,logSerializers:k.logSerializers,attachValidation:k.attachValidation,schemaErrorFormatter:k.schemaErrorFormatter,replySerializer:this[zQ],validatorCompiler:k.validatorCompiler,serializerCompiler:k.serializerCompiler,exposeHeadRoute:D,prefixTrailingSlash:k.prefixTrailingSlash||"both",server:this,isFastify:ue});k.version&&(GQt(),Ne.version=k.version);let ve=e.findRoute("HEAD",k.url,Ne),F=ve!==null;Z&&F&&!Fe[VQ]&&ve.store[VQ]&&e.off("HEAD",k.url,Ne);try{e.on(k.method,k.url,{constraints:Ne},R,Fe)}catch(G){if(!Fe[VQ])throw G.message.includes(`Method '${k.method}' already declared for route '${k.url}'`)?new XQt(k.method,k.url):G}if(this.after((G,K)=>{Fe.errorHandler=k.errorHandler?mHt(this[LRe],k.errorHandler):this[LRe],Fe._parserOptions.limit=k.bodyLimit||null,Fe.logLevel=k.logLevel,Fe.logSerializers=k.logSerializers,Fe.attachValidation=k.attachValidation,Fe[zQ]=this[zQ],Fe.schemaErrorFormatter=k.schemaErrorFormatter||this[pHt]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of RRe){let Q=this[DRe][q].concat(k[q]||[]).map(ee=>ee.bind(this));Fe[q]=Q.length?Q:null}for(;!Fe.Request[MRe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[MRe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),k.schema){Fe.schema=jQt(Fe.schema,this.initialConfig);let q=this[uHt];!k.validatorCompiler&&(k.schema.body||k.schema.headers||k.schema.querystring||k.schema.params)&&q.setupValidator(this[BRe]);try{let Q=typeof k?.validatorCompiler=="function"||q.isCustomValidatorCompiler;zQt(Fe,k.validatorCompiler||q.validatorCompiler,Q)}catch(Q){throw new VQt(k.method,Te,Q.message)}k.schema.response&&!k.serializerCompiler&&q.setupSerializer(this[BRe]);try{KQt(Fe,k.serializerCompiler||q.serializerCompiler)}catch(Q){throw new YQt(k.method,Te,Q.message)}}}),K(G)}),D&&L&&!Z&&!F){let G=QQt(W.onSend);x.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else F&&B&&HQt()}}function R(w,N,k,B,M){let D=gHt(B.server,w),L={level:B.logLevel};B.logSerializers&&(L.serializers=B.logSerializers);let Z=hHt(B,s,w,D,L);if(Z[fHt]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",bHt.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[KQ]!==void 0&&(w.headers["accept-version"]=w.headers[KQ],w.headers[KQ]=void 0);let U=new B.Request(D,k,w,M,Z,B),z=new B.Reply(N,U,Z);c===!1&&Z.info({req:U},"incoming request"),(i===!0||B.onResponse!==null)&&a(z),B.onRequest!==null?FQt(B.onRequest,U,z,FRe):FRe(null,U,z),B.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&WQt(B.onRequestAbort,U,AHt.bind(null,z))}),B.onTimeout!==null&&(U.raw.socket._meta||U.raw.socket.on("timeout",xHt),U.raw.socket._meta={context:B,request:U,reply:z})}}function AHt(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function xHt(){let{context:t,request:e,reply:r}=this._meta;UQt(t.onTimeout,e,r,_Ht)}function $Re(t){if(typeof t!="string")throw new sHt;if(t=t.toUpperCase(),qQt.indexOf(t)===-1)throw new nHt(t);return t}function URe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new iHt(t,e)}function qRe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new aHt(t)}function FRe(t,e,r){if(r.sent!==!0){if(t!=null){r[lHt]=!0,r.send(t);return}e[dHt]=e.raw,e[WRe].preParsing!==null?$Qt(e[WRe].preParsing,e,r,wRe):wRe(null,e,r)}}function bHt(){this.keepAliveConnections.delete(this.socket)}function _Ht(){}jRe.exports={buildRouting:yHt,validateBodyLimitOption:qRe}});var JRe=_((H9r,YRe)=>{"use strict";var EHt=QQ(),HRe=zO(),GRe=lk(),vHt=dk(),{kRoutePrefix:SHt,kCanSetNotFoundHandler:IS,kFourOhFourLevelInstance:CS,kFourOhFourContext:bl,kHooks:IHt,kErrorHandler:zRe}=zs(),{lifecycleHooks:CHt}=Rp(),{buildErrorHandler:THt}=zE(),{FST_ERR_NOT_FOUND:wHt}=Di(),{createChildLogger:KRe}=mE(),{getGenReqId:VRe}=YP();function RHt(t){let{logger:e}=t,r=EHt({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[CS]=d,d[IS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[CS][bl],y=VRe(h.server,p),g=KRe(h,e,p,y),b=new GRe(y,null,p,null,g,h),x=new HRe(m,b,g);n(b,x)}}function o(d,f){let p=Object.assign({},d[bl]);p.onSend=f.onSend,f[bl]=p}function c(d,f,p,m){this[IS]===void 0&&(this[IS]=!0),this[bl]===void 0&&(this[bl]=null);let h=this,y=this[SHt]||"/";if(this[IS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${y}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[CS][IS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,y,d,f,p,m),b(g)})}function u(d,f,p,m,h){let y=new vHt({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[bl];for(let b of CHt){let x=this[IHt][b].concat(f[b]||[]).map(A=>A.bind(this));g[b]=x.length?x:null}g.errorHandler=f.errorHandler?THt(this[zRe],f.errorHandler):this[zRe]}),this[bl]!==null&&d==="/"){Object.assign(this[bl],y);return}this[CS][bl]=y,r.all(d+(d.endsWith("/")?"*":"/*"),h,y),r.all(d,h,y)}function l(d,f){let p=this[CS][bl],m=VRe(p.server,d),h=KRe(p,e,d,m);h.info({req:d},"incoming request");let y=new GRe(m,null,d,null,h,p),g=new HRe(f,y,h);y.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),y.log.warn(r.prettyPrint()),g.code(404).send(new wHt)}}YRe.exports=RHt});var ZRe=_((G9r,h3)=>{"use strict";h3.exports=qr;h3.exports.default=qr;var XRe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},NHt=Object.prototype.hasOwnProperty,OHt=new RegExp("idle","u");function qr(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)NHt.call(XRe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,y=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return qr.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=y===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let A=typeof g,S;if(S===void 0)if(A==="boolean"||g===null||A==="string"&&g&&g==+g&&!(g%1))S=+g;else return qr.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;S!==void 0&&(g=S,t!==void 0&&(t.keepAliveTimeout=S))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let A=t.forceCloseConnections,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.forceCloseConnections=D))}if(a===N&&typeof A=="string"&&!OHt.test(A)){let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=N===a;c&&(R=!0,w=0);let k=a;if(typeof A!="boolean"){let M;if(M===void 0)if(A==="false"||A===0||A===null)M=!1;else if(A==="true"||A===1)M=!0;else{let D={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(A=M,t!==void 0&&(t.forceCloseConnections=M))}var c=k===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,qr.errors=i,!1}var o=S===a}else var o=!0;if(o){let A=t.maxRequestsPerSocket,S=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A))&&A!==null){let R=typeof A,w;if(w===void 0)if(R==="boolean"||A===null||R==="string"&&A&&A==+A&&!(A%1))w=+A;else if(A===""||A===0||A===!1)w=null;else return qr.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=S===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let k=typeof R,B;if(B===void 0)if(k==="boolean"||R===null||k==="string"&&R&&R==+R&&!(R%1))B=+R;else return qr.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(R=B,t!==void 0&&(t.requestTimeout=B))}var o=w===a;if(o){let k=t.bodyLimit,B=a;if(!(typeof k=="number"&&!(k%1)&&!isNaN(k)&&isFinite(k))){let D=typeof k,L;if(L===void 0)if(D==="boolean"||k===null||D==="string"&&k&&k==+k&&!(k%1))L=+k;else return qr.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(k=L,t!==void 0&&(t.bodyLimit=L))}var o=B===a;if(o){let D=t.caseSensitive,L=a;if(typeof D!="boolean"){let W;if(W===void 0)if(D==="false"||D===0||D===null)W=!1;else if(D==="true"||D===1)W=!0;else return qr.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(D=W,t!==void 0&&(t.caseSensitive=W))}var o=L===a;if(o){let W=t.allowUnsafeRegex,U=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return qr.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=U===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Te=a,Ne=a,je=a,Fe=!1,ve=null,F=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=F===a;u&&(Fe=!0,ve=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,ve=[ve,1];else{u&&(Fe=!0,ve=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,ve=[ve,2]):u&&(Fe=!0,ve=2)}if(Fe)a=je,i!==null&&(je?i.length=je:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=Ne===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Te,i!==null&&(Te?i.length=Te:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,qr.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let Ne;if(Ne===void 0)if(oe==="false"||oe===0||oe===null)Ne=!1;else if(oe==="true"||oe===1)Ne=!0;else return qr.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Ne!==void 0&&(oe=Ne,t!==void 0&&(t.ignoreDuplicateSlashes=Ne))}var o=ue===a;if(o){let Ne=t.disableRequestLogging,je=a;if(typeof Ne!="boolean"){let ve;if(ve===void 0)if(Ne==="false"||Ne===0||Ne===null)ve=!1;else if(Ne==="true"||Ne===1)ve=!0;else return qr.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ve!==void 0&&(Ne=ve,t!==void 0&&(t.disableRequestLogging=ve))}var o=je===a;if(o){let ve=t.jsonShorthand,F=a;if(typeof ve!="boolean"){let K;if(K===void 0)if(ve==="false"||ve===0||ve===null)K=!1;else if(ve==="true"||ve===1)K=!0;else return qr.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;K!==void 0&&(ve=K,t!==void 0&&(t.jsonShorthand=K))}var o=F===a;if(o){let K=t.maxParamLength,q=a;if(!(typeof K=="number"&&!(K%1)&&!isNaN(K)&&isFinite(K))){let ee=typeof K,ne;if(ne===void 0)if(ee==="boolean"||K===null||ee==="string"&&K&&K==+K&&!(K%1))ne=+K;else return qr.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(K=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return qr.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let me=typeof X,Oe;if(Oe===void 0)if(me=="number"||me=="boolean")Oe=""+X;else if(X===null)Oe="";else return qr.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Oe!==void 0&&(X=Oe,t!==void 0&&(t.onConstructorPoisoning=Oe))}var o=ie===a;if(o){let me=t.pluginTimeout,Oe=a;if(!(typeof me=="number"&&!(me%1)&&!isNaN(me)&&isFinite(me))){let qe=typeof me,Ye;if(Ye===void 0)if(qe==="boolean"||me===null||qe==="string"&&me&&me==+me&&!(me%1))Ye=+me;else return qr.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ye!==void 0&&(me=Ye,t!==void 0&&(t.pluginTimeout=Ye))}var o=Oe===a;if(o){let qe=t.requestIdHeader,Ye=a,Je=a,et=!1,st=a;if(qe!==!1){let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:XRe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[rt]:i.push(rt),a++}var f=st===a;if(et=et||f,!et){let rt=a;if(typeof qe!="string"){let dt=typeof qe,Be;if(Be===void 0)if(dt=="number"||dt=="boolean")Be=""+qe;else if(qe===null)Be="";else{let Xe={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Xe]:i.push(Xe),a++}Be!==void 0&&(qe=Be,t!==void 0&&(t.requestIdHeader=Be))}var f=rt===a;et=et||f}if(et)a=Je,i!==null&&(Je?i.length=Je:i=null);else{let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[rt]:i.push(rt),a++,qr.errors=i,!1}var o=Ye===a;if(o){let rt=t.requestIdLogLabel,Pt=a;if(typeof rt!="string"){let Be=typeof rt,Xe;if(Xe===void 0)if(Be=="number"||Be=="boolean")Xe=""+rt;else if(rt===null)Xe="";else return qr.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Xe!==void 0&&(rt=Xe,t!==void 0&&(t.requestIdLogLabel=Xe))}var o=Pt===a;if(o){let Be=t.http2SessionTimeout,Xe=a;if(!(typeof Be=="number"&&!(Be%1)&&!isNaN(Be)&&isFinite(Be))){let nt=typeof Be,_t;if(_t===void 0)if(nt==="boolean"||Be===null||nt==="string"&&Be&&Be==+Be&&!(Be%1))_t=+Be;else return qr.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;_t!==void 0&&(Be=_t,t!==void 0&&(t.http2SessionTimeout=_t))}var o=Xe===a;if(o){let nt=t.exposeHeadRoutes,_t=a;if(typeof nt!="boolean"){let It;if(It===void 0)if(nt==="false"||nt===0||nt===null)It=!1;else if(nt==="true"||nt===1)It=!0;else return qr.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;It!==void 0&&(nt=It,t!==void 0&&(t.exposeHeadRoutes=It))}var o=_t===a;if(o){let It=t.useSemicolonDelimiter,wr=a;if(typeof It!="boolean"){let Lr;if(Lr===void 0)if(It==="false"||It===0||It===null)Lr=!1;else if(It==="true"||It===1)Lr=!0;else return qr.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Lr!==void 0&&(It=Lr,t!==void 0&&(t.useSemicolonDelimiter=Lr))}var o=wr===a;if(o){if(t.versioning!==void 0){let Lr=t.versioning,Qs=a;if(a===Qs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr)){let bs;if(Lr.storage===void 0&&(bs="storage")||Lr.deriveVersion===void 0&&(bs="deriveVersion"))return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:bs},message:"must have required property '"+bs+"'"}],!1}else return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Qs===a}else var o=!0;if(o)if(t.constraints!==void 0){let Lr=t.constraints,Qs=a;if(a===Qs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr))for(let bs in Lr){let Gs=Lr[bs],Ku=a;if(a===Ku)if(Gs&&typeof Gs=="object"&&!Array.isArray(Gs)){let Co;if(Gs.name===void 0&&(Co="name")||Gs.storage===void 0&&(Co="storage")||Gs.validate===void 0&&(Co="validate")||Gs.deriveConstraint===void 0&&(Co="deriveConstraint"))return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:Co},message:"must have required property '"+Co+"'"}],!1;if(Gs.name!==void 0){let Hc=Gs.name;if(typeof Hc!="string"){let La=typeof Hc,An;if(An===void 0)if(La=="number"||La=="boolean")An=""+Hc;else if(Hc===null)An="";else return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;An!==void 0&&(Hc=An,Gs!==void 0&&(Gs.name=An))}}}else return qr.errors=[{instancePath:e+"/constraints/"+bs.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Ku===a;if(!p)break}else return qr.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Qs===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return qr.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return qr.errors=i,a===0}h3.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var eNe=_((z9r,y3)=>{"use strict";var g3=ZRe(),kHt=eO()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:PHt}=Di();function DHt(t){let e=kHt(t);if(!g3(e)){let r=new PHt(JSON.stringify(g3.errors.map(n=>n.message)));throw r.errors=g3.errors,r}return YQ(e)}function YQ(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?YQ(n):n)}return Object.freeze(t)}y3.exports=DHt;y3.exports.defaultInitOptions=g3.defaultInitOptions;y3.exports.utils={deepFreezeObject:YQ}});var uNe=_((K9r,cNe)=>{"use strict";var{kAvvioBoot:BHt,kChildren:tNe,kRoutePrefix:rNe,kLogLevel:nNe,kLogSerializers:JQ,kHooks:XQ,kSchemaController:Lx,kContentTypeParser:sNe,kReply:iNe,kRequest:aNe,kFourOhFour:LHt,kPluginNameChain:oNe}=zs(),MHt=zO(),WHt=lk(),$Ht=EQ(),UHt=XF(),{buildHooks:FHt}=Rp(),TS=wQ();cNe.exports=function(e,r,n){let s=TS.registerPlugin.call(e,r),i=TS.getPluginName(r)||TS.getFuncPreview(r);if(s)return e[oNe].push(i),e;let a=Object.create(e);e[tNe].push(a),a.ready=e[BHt].bind(a),a[tNe]=[],a[iNe]=MHt.buildReply(a[iNe]),a[aNe]=WHt.buildRequest(a[aNe]),a[sNe]=UHt.helpers.buildContentTypeParser(a[sNe]),a[XQ]=FHt(a[XQ]),a[rNe]=qHt(a[rNe],n.prefix),a[nNe]=n.logLevel||a[nNe],a[Lx]=$Ht.buildSchemaController(e[Lx]),a.getSchema=a[Lx].getSchema.bind(a[Lx]),a.getSchemas=a[Lx].getSchemas.bind(a[Lx]),a[TS.kRegisteredPlugins]=Object.create(a[TS.kRegisteredPlugins]),a[oNe]=[i],(a[JQ]||n.logSerializers)&&(a[JQ]=Object.assign(Object.create(a[JQ]),n.logSerializers)),n.prefix&&a[LHt].arrange404(a);for(let o of a[XQ].onRegister)o.call(this,a,n);return a};function qHt(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var dNe=_((V9r,lNe)=>{"use strict";lNe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var mNe=_(ZQ=>{"use strict";ZQ.parse=VHt;ZQ.serialize=YHt;var jHt=Object.prototype.toString,QHt=Object.prototype.hasOwnProperty,HHt=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,GHt=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,zHt=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,KHt=/^[\u0020-\u003A\u003D-\u007E]*$/;function VHt(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||JHt,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=fNe(t,i,a),u=pNe(t,a,c),l=t.slice(c,u);if(!QHt.call(r,l)){var d=fNe(t,a+1,o),f=pNe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=ZHt(p,s)}i=o+1}while(i<n);return r}function fNe(t,e,r){do{var n=t.charCodeAt(e);if(n!==32&&n!==9)return e}while(++e<r);return r}function pNe(t,e,r){for(;e>r;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function YHt(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!HHt.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!GHt.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!zHt.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!KHt.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!XHt(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function JHt(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function XHt(t){return jHt.call(t)==="[object Date]"}function ZHt(t,e){try{return e(t)}catch{return t}}});var yNe=_((J9r,gNe)=>{"use strict";var{URL:hNe}=require("node:url"),eH="http://localhost";gNe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=eH+e);let n=typeof e=="object"?Object.assign(new hNe(eH),e):new hNe(e,eH);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},e.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var ANe=_((X9r,tH)=>{"use strict";var{randomUUID:eGt}=require("node:crypto"),{Readable:tGt}=require("node:stream"),Mx;function rGt(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function nGt(t){Mx=Mx??new TextEncoder;let e=`----formdata-${eGt()}`,r=`--${e}\r
|
|
Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),s=c=>c.replace(/\r?\n|\r/g,`\r
|
|
`),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of t)if(typeof u=="string")yield Mx.encode(`${r}; name="${n(s(c))}"\r
|
|
\r
|
|
`),yield Mx.encode(`${s(u)}\r
|
|
`);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r
|
|
Content-Type: ${u.type||"application/octet-stream"}\r
|
|
\r
|
|
`,yield Mx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield Mx.encode(`--${e}--`)}return{stream:tGt.from(a()),contentType:`multipart/form-data; boundary=${e}`}}tH.exports.isFormDataLike=rGt;tH.exports.formDataToStream=nGt});var _Ne=_((Z9r,A3)=>{"use strict";var{Readable:xNe,addAbortSignal:sGt}=require("node:stream"),nH=require("node:util"),iGt=mNe(),aGt=require("node:assert"),{createDeprecation:oGt}=VW(),cGt=yNe(),{isFormDataLike:uGt,formDataToStream:lGt}=ANe(),{EventEmitter:dGt}=require("node:events"),fGt=oGt({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function pGt(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var rH=class extends dGt{constructor(e){super(),this.remoteAddress=e}};function bNe(t){return new e(this);function e(r){_l.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(_l.prototype))this.constructor.prototype[n]=_l.prototype[n];return nH.inherits(this.constructor,t.Request),this}}function _l(t){xNe.call(this,{autoDestroy:!1});let e=cGt(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];aGt(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||t.authority||pGt(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>iGt.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new rH(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return fGt(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(uGt(n)){let a=lGt(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:t.simulate||{}};let i=t.signal;return i&&sGt(i,this),this}nH.inherits(_l,xNe);nH.inherits(bNe,_l);_l.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};_l.prototype._read=function(t){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};_l.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};A3.exports=_l;A3.exports.Request=_l;A3.exports.CustomRequest=bNe});var vNe=_((eqr,wS)=>{"use strict";var x3={decodeValues:!0,map:!1,silent:!1};function sH(t){return typeof t!="string"||t in{}}function iH(){return Object.create(null)}function aH(t){return typeof t=="string"&&!!t.trim()}function oH(t,e){var r=t.split(";").filter(aH),n=r.shift(),s=mGt(n),i=s.name,a=s.value;if(e=e?Object.assign({},x3,e):x3,sH(i))return null;try{a=e.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=iH();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!sH(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function mGt(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function ENe(t,e){if(e=e?Object.assign({},x3,e):x3,!t)return e.map?iH():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=iH();return t.filter(aH).reduce(function(s,i){var a=oH(i,e);return a&&!sH(a.name)&&(s[a.name]=a),s},n)}else return t.filter(aH).map(function(s){return oH(s,e)}).filter(Boolean)}function hGt(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r<t.length&&/\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}wS.exports=ENe;wS.exports.parse=ENe;wS.exports.parseString=oH;wS.exports.splitCookiesString=hGt});var CNe=_((tqr,INe)=>{"use strict";var RS=require("node:http"),{Writable:gGt,Readable:yGt}=require("node:stream"),AGt=require("node:util"),xGt=vNe();function d0(t,e,r){RS.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(_Gt()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=bGt(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}AGt.inherits(d0,RS.ServerResponse);d0.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};d0.prototype.writeHead=function(){let t=RS.ServerResponse.prototype.writeHead.apply(this,arguments);return SNe(this),t};d0.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),RS.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};d0.prototype.end=function(t,e,r){t&&this.write(t,e),RS.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};d0.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};d0.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function bGt(t){t._lightMyRequest.headers===null&&SNe(t),EGt(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return xGt.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return yGt.from(t._lightMyRequest.payloadChunks)},e}function _Gt(){return new gGt({write(t,e,r){setImmediate(r)}})}function EGt(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function SNe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}INe.exports=d0});var TNe=_((rqr,cH)=>{"use strict";cH.exports=_s;cH.exports.default=_s;var vGt={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function _s(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let A;if(t.url===void 0&&(A="url")){let S={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:A},message:"must have required property '"+A+"'"};i===null?i=[S]:i.push(S),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let A;if(t.path===void 0&&(A="path")){let S={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:A},message:"must have required property '"+A+"'"};i===null?i=[S]:i.push(S),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let A={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[A]:i.push(A),a++,_s.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let A=t.url,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let B=typeof A,M;if(M===void 0)if(B=="number"||B=="boolean")M=""+A;else if(A===null)M="";else{let D={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(A=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let k=a;if(a===k)if(A&&typeof A=="object"&&!Array.isArray(A)){let B;if(A.pathname===void 0&&(B="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:B},message:"must have required property '"+B+"'"};i===null?i=[M]:i.push(M),a++}else{if(A.protocol!==void 0){let M=A.protocol,D=a;if(typeof M!="string"){let L=typeof M,Z;if(Z===void 0)if(L=="number"||L=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,A!==void 0&&(A.protocol=Z))}var p=D===a}else var p=!0;if(p){if(A.hostname!==void 0){let M=A.hostname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,A!==void 0&&(A.hostname=W))}var p=D===a}else var p=!0;if(p)if(A.pathname!==void 0){let M=A.pathname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,A!==void 0&&(A.pathname=W))}var p=D===a}else var p=!0}}}else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[B]:i.push(B),a++}var m=k===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[B]:i.push(B),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.path!==void 0){let A=t.path,S=a,I=a,R=!1,w=null,N=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.path=D))}var g=N===a;g&&(R=!0,w=0);let k=a;if(a===k)if(A&&typeof A=="object"&&!Array.isArray(A)){let M;if(A.pathname===void 0&&(M="pathname")){let D={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[D]:i.push(D),a++}else{if(A.protocol!==void 0){let D=A.protocol,L=a;if(typeof D!="string"){let Z=typeof D,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+D;else if(D===null)W="";else{let U={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(D=W,A!==void 0&&(A.protocol=W))}var y=L===a}else var y=!0;if(y){if(A.hostname!==void 0){let D=A.hostname,L=a;if(typeof D!="string"){let W=typeof D,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+D;else if(D===null)U="";else{let z={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[z]:i.push(z),a++}U!==void 0&&(D=U,A!==void 0&&(A.hostname=U))}var y=L===a}else var y=!0;if(y)if(A.pathname!==void 0){let D=A.pathname,L=a;if(typeof D!="string"){let W=typeof D,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+D;else if(D===null)U="";else{let z={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[z]:i.push(z),a++}U!==void 0&&(D=U,A!==void 0&&(A.pathname=U))}var y=L===a}else var y=!0}}}else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=k===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.cookies!==void 0){let A=t.cookies,S=a;if(a===S&&!(A&&typeof A=="object"&&!Array.isArray(A)))return _s.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.headers!==void 0){let A=t.headers,S=a;if(a===S&&!(A&&typeof A=="object"&&!Array.isArray(A)))return _s.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.query!==void 0){let A=t.query,S=a,I=a,R=!1,w=a;if(a===w&&!(A&&typeof A=="object"&&!Array.isArray(A))){let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[k]:i.push(k),a++}var b=w===a;if(R=R||b,!R){let k=a;if(typeof A!="string"){let M=typeof A,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+A;else if(A===null)D="";else{let L={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(A=D,t!==void 0&&(t.query=D))}var b=k===a;R=R||b}if(R)a=I,i!==null&&(I?i.length=I:i=null);else{let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[k]:i.push(k),a++,_s.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.simulate!==void 0){let A=t.simulate,S=a;if(a===S)if(A&&typeof A=="object"&&!Array.isArray(A)){if(A.end!==void 0){let R=A.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return _s.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,A!==void 0&&(A.end=N))}var x=w===a}else var x=!0;if(x){if(A.split!==void 0){let R=A.split,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.split=k))}var x=w===a}else var x=!0;if(x){if(A.error!==void 0){let R=A.error,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.error=k))}var x=w===a}else var x=!0;if(x)if(A.close!==void 0){let R=A.close,w=a;if(typeof R!="boolean"){let k;if(k===void 0)if(R==="false"||R===0||R===null)k=!1;else if(R==="true"||R===1)k=!0;else return _s.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(R=k,A!==void 0&&(A.close=k))}var x=w===a}else var x=!0}}}else return _s.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.authority!==void 0){let A=t.authority,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.authority=w))}var h=S===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let A=t.remoteAddress,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.remoteAddress=w))}var h=S===a}else var h=!0;if(h){if(t.method!==void 0){let A=t.method,S=a;if(typeof A!="string"){let R=typeof A,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+A;else if(A===null)w="";else return _s.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(A=w,t!==void 0&&(t.method=w))}if(!(A==="ACL"||A==="BIND"||A==="CHECKOUT"||A==="CONNECT"||A==="COPY"||A==="DELETE"||A==="GET"||A==="HEAD"||A==="LINK"||A==="LOCK"||A==="M-SEARCH"||A==="MERGE"||A==="MKACTIVITY"||A==="MKCALENDAR"||A==="MKCOL"||A==="MOVE"||A==="NOTIFY"||A==="OPTIONS"||A==="PATCH"||A==="POST"||A==="PROPFIND"||A==="PROPPATCH"||A==="PURGE"||A==="PUT"||A==="REBIND"||A==="REPORT"||A==="SEARCH"||A==="SOURCE"||A==="SUBSCRIBE"||A==="TRACE"||A==="UNBIND"||A==="UNLINK"||A==="UNLOCK"||A==="UNSUBSCRIBE"||A==="acl"||A==="bind"||A==="checkout"||A==="connect"||A==="copy"||A==="delete"||A==="get"||A==="head"||A==="link"||A==="lock"||A==="m-search"||A==="merge"||A==="mkactivity"||A==="mkcalendar"||A==="mkcol"||A==="move"||A==="notify"||A==="options"||A==="patch"||A==="post"||A==="propfind"||A==="proppatch"||A==="purge"||A==="put"||A==="rebind"||A==="report"||A==="search"||A==="source"||A==="subscribe"||A==="trace"||A==="unbind"||A==="unlink"||A==="unlock"||A==="unsubscribe"))return _s.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:vGt.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=S===a}else var h=!0;if(h)if(t.validate!==void 0){let A=t.validate,S=a;if(typeof A!="boolean"){let R;if(R===void 0)if(A==="false"||A===0||A===null)R=!1;else if(A==="true"||A===1)R=!0;else return _s.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(A=R,t!==void 0&&(t.validate=R))}var h=S===a}else var h=!0}}}}}}}}}else return _s.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return _s.errors=i,a===0}});var NNe=_((nqr,OS)=>{"use strict";var SGt=require("node:assert"),uH=_Ne(),b3=CNe(),E3="The dispatch function has already been invoked",wNe=TNe();function lH(t,e,r){return r===void 0?new NS(t,e):_3(t,e,r)}function RNe(t,e,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>t.call(e,r,n))}function _3(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(SGt(typeof t=="function","dispatchFunc should be a function"),!wNe(e)))throw new Error(wNe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?uH.CustomRequest:uH;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),b3.prototype)),typeof r=="function"){let i=new s(e),a=new b3(i,r);return RNe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new b3(o,i,a);RNe(t,n,o,c)})}function NS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var IGt=["delete","get","head","options","patch","post","put","trace"];IGt.forEach(t=>{NS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(E3);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var CGt=["body","cookies","headers","payload","query"];CGt.forEach(t=>{NS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(E3);return this.option[t]=e,this}});NS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(E3);if(this._hasInvoked=!0,typeof t=="function")_3(this.dispatch,this.option,t);else return this._promise=_3(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(NS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(E3);this._hasInvoked=!0,this._promise=_3(this.dispatch,this.option)}return this._promise[t](...e)})});function TGt(t){return t instanceof uH||t instanceof b3||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}OS.exports=lH;OS.exports.default=lH;OS.exports.inject=lH;OS.exports.isInjection=TGt});var HNe=_((sqr,C3)=>{"use strict";var wGt="4.26.0",RGt=ome(),dH=require("node:http"),kS,{kAvvioBoot:PS,kChildren:fH,kServerBindings:ONe,kBodyLimit:NGt,kRoutePrefix:kNe,kLogLevel:OGt,kLogSerializers:kGt,kHooks:pH,kSchemaController:f0,kRequestAcceptVersion:PGt,kReplySerializerDefault:PNe,kContentTypeParser:DGt,kReply:BGt,kRequest:LGt,kFourOhFour:MGt,kState:hs,kOptions:mH,kPluginNameChain:DS,kSchemaErrorFormatter:hH,kErrorHandler:v3,kKeepAliveConnections:gH,kChildLoggerFactory:yH,kGenReqId:AH}=zs(),{createServer:WGt,compileValidateHTTPVersion:$Gt}=Nme(),BS=zO(),S3=lk(),UGt=dk(),{supportedMethods:FGt}=WF(),Wx=jF(),kh=XF(),DNe=EQ(),{Hooks:qGt,hookRunnerApplication:BNe,supportedHooks:xH}=Rp(),{createLogger:jGt,createChildLogger:LNe,defaultChildLoggerFactory:QGt}=mE(),MNe=wQ(),{getGenReqId:WNe,reqIdGenFactory:$Ne}=YP(),{buildRouting:HGt,validateBodyLimitOption:GGt}=QRe(),zGt=JRe(),QNe=eNe(),KGt=uNe(),{FSTDEP009:VGt}=wd(),YGt=dNe(),{appendStackTrace:JGt,AVVIO_ERRORS_MAP:UNe,...Ph}=Di(),{defaultInitOptions:Za}=QNe,{FST_ERR_ASYNC_CONSTRAINT:XGt,FST_ERR_BAD_URL:ZGt,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:ezt,FST_ERR_OPTIONS_NOT_OBJ:tzt,FST_ERR_QSP_NOT_FN:rzt,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:nzt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:szt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:izt,FST_ERR_VERSION_CONSTRAINT_NOT_STR:azt,FST_ERR_INSTANCE_ALREADY_LISTENING:ozt,FST_ERR_REOPENED_CLOSE_SERVER:czt,FST_ERR_ROUTE_REWRITE_NOT_STR:uzt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:FNe}=Ph,{buildErrorHandler:qNe}=zE();function lzt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(xH).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function I3(t){if(t=t||{},typeof t!="object")throw new tzt;if(t.querystringParser&&typeof t.querystringParser!="function")throw new rzt(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new nzt(typeof t.schemaController.bucket);GGt(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Za.requestIdHeader).toLowerCase(),r=$Ne(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Za.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new szt(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new izt(typeof a.plugins);let{logger:c,hasLogger:u}=jGt(t);t.connectionTimeout=t.connectionTimeout||Za.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Za.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Za.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Za.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||U;let l=QNe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(VGt(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new azt}}});let f=HGt({config:{defaultRoute:z,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Za.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Za.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Za.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Za.allowUnsafeRegex,buildPrettyMeta:lzt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Za.useSemicolonDelimiter}}),p=zGt(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:y}=WGt(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",x=t.forceCloseConnections;if(x==="idle"&&!b)throw new ezt;typeof x!="boolean"&&(x=b?"idle":!1);let A=!g&&x===!0?new Set:YGt(),S=BS.setupResponseListeners,I=DNe.buildSchemaController(null,t.schemaController),R={[hs]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[gH]:A,[mH]:t,[fH]:[],[ONe]:[],[NGt]:s,[kNe]:"",[OGt]:"",[kGt]:null,[pH]:new qGt,[f0]:I,[hH]:null,[v3]:qNe(),[yH]:QGt,[PNe]:null,[DGt]:new kh(s,t.onProtoPoisoning||Za.onProtoPoisoning,t.onConstructorPoisoning||Za.onConstructorPoisoning),[BGt]:BS.buildReply(BS),[LGt]:S3.buildRequest(S3,t.trustProxy),[MGt]:p,[MNe.kRegisteredPlugins]:[],[DS]:["fastify"],[PS]:null,[AH]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:Q,options:ee,handler:ne})},get:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:Q,options:ee,handler:ne})},head:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:Q,options:ee,handler:ne})},patch:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:Q,options:ee,handler:ne})},post:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:Q,options:ee,handler:ne})},put:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:Q,options:ee,handler:ne})},options:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:Q,options:ee,handler:ne})},all:function(Q,ee,ne){return f.prepareRoute.call(this,{method:FGt,url:Q,options:ee,handler:ne})},route:function(Q){return f.route.call(this,{options:Q})},hasRoute:function(Q){return f.hasRoute.call(this,{options:Q})},findRoute:function(Q){return f.findRoute(Q)},log:c,withTypeProvider:L,addHook:Z,addSchema:W,getSchema:I.getSchema.bind(I),getSchemas:I.getSchemas.bind(I),setValidatorCompiler:oe,setSerializerCompiler:Te,setSchemaController:Ne,setReplySerializer:je,setSchemaErrorFormatter:ue,setGenReqId:K,addContentTypeParser:kh.helpers.addContentTypeParser,hasContentTypeParser:kh.helpers.hasContentTypeParser,getDefaultJsonParser:kh.defaultParsers.getDefaultJsonParser,defaultTextParser:kh.defaultParsers.defaultTextParser,removeContentTypeParser:kh.helpers.removeContentTypeParser,removeAllContentTypeParsers:kh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[MNe.kRegisteredPlugins].includes(q)||this[DS].includes(q)},listen:y,server:h,addresses:function(){let q=this[ONe].map(Q=>Q.address());return q.push(this.server.address()),q.filter(Q=>Q)},decorate:Wx.add,hasDecorator:Wx.exist,decorateReply:Wx.decorateReply,decorateRequest:Wx.decorateRequest,hasRequestDecorator:Wx.existRequest,hasReplyDecorator:Wx.existReply,inject:M,printRoutes:F,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:ve,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let Q=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[mH].https?"https":"http"}://${Q}:${q.port}`}},pluginName:{configurable:!0,get(){return this[DS].length>1?this[DS].join(" -> "):this[DS][0]}},prefix:{configurable:!0,get(){return this[kNe]}},validatorCompiler:{configurable:!0,get(){return this[f0].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[f0].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[yH]}},version:{configurable:!0,get(){return wGt}},errorHandler:{configurable:!0,get(){return this[v3].func}},genReqId:{configurable:!0,get(){return this[AH]}}}),t.schemaErrorFormatter&&(jNe(t.schemaErrorFormatter),R[hH]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=RGt(R,{autostart:!1,timeout:isNaN(w)===!1?w:Za.pluginTimeout,expose:{use:"register"}});N.override=KGt,N.on("start",()=>R[hs].started=!0),R[PS]=R.ready,R.ready=D,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,Q)=>{R[hs].closing=!0,f.closeRoutes(),BNe("preClose",R[PS],R,function(){if(R[hs].listening){if(x==="idle")q.server.closeIdleConnections();else if(g&&x)q.server.closeAllConnections();else if(x===!0)for(let ee of R[gH])ee.destroy(),R[gH].delete(ee)}!t.serverFactory||R[hs].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?Q(null):Q()}):process.nextTick(Q,null)})})});let k=new UGt({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:S,throwIfAlreadyStarted:B,validateHTTPVersion:$Gt(t),keepAliveConnections:A}),h.on("clientError",t.clientErrorHandler.bind(R));try{let Q=require("node:diagnostics_channel").channel("fastify.initialization");Q.hasSubscribers&&Q.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function B(q){if(R[hs].started)throw new ozt(q)}function M(q,Q){if(kS===void 0&&(kS=NNe()),R[hs].started){if(R[hs].closing){let ee=new czt;if(Q){Q(ee);return}else return Promise.reject(ee)}return kS(m,q,Q)}if(Q)this.ready(ee=>{ee?Q(ee,null):kS(m,q,Q)});else return kS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function D(q){if(this[hs].readyPromise!==null){if(q!=null){this[hs].readyPromise.then(()=>q(null,R),q);return}return this[hs].readyPromise}let Q,ee;if(process.nextTick(ne),this[hs].readyPromise=new Promise(function(X,ie){Q=X,ee=ie}),q)this[hs].readyPromise.then(()=>q(null,R),q);else return this[hs].readyPromise;function ne(){R[PS]((X,ie)=>{X||R[hs].started||R[hs].ready||R[hs].booting?re(X):(R[hs].booting=!0,BNe("onReady",R[PS],R,re)),ie()})}function re(X){if(X=X!=null&&UNe[X.code]!=null?JGt(X,new UNe[X.code](X.message)):X,X)return ee(X);Q(R),R[hs].booting=!1,R[hs].ready=!0,R[hs].promise=null}}function L(){return this}function Z(q,Q){if(B('Cannot call "addHook"!'),Q==null)throw new Ph.FST_ERR_HOOK_INVALID_HANDLER(q,Q);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(Q.constructor.name==="AsyncFunction"&&Q.length===4)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==0)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==1)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(Q.constructor.name==="AsyncFunction"&&Q.length===3)throw new Ph.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(Q):q==="onReady"||q==="onListen"||q==="onRoute"?this[pH].add(q,Q):this.after((ne,re)=>{ee.call(this,q,Q),re(ne)}),this;function ee(ne,re){this[pH].add(ne,re),this[fH].forEach(X=>ee.call(X,ne,re))}}function W(q){return B('Cannot call "addSchema"!'),this[f0].add(q),this[fH].forEach(Q=>Q.addSchema(q)),this}function U(q,Q){if(q.code==="ECONNRESET"||Q.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=dH.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),Q.writable&&Q.write(`HTTP/1.1 ${ne} ${re}\r
|
|
Content-Length: ${ee.length}\r
|
|
Content-Type: application/json\r
|
|
\r
|
|
${ee}`),Q.destroy(q)}function z(q,Q){q.headers["accept-version"]!==void 0&&(q.headers[PGt]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,Q)}function j(q,Q,ee){if(o){let re=WNe(k.server,Q),X=LNe(k,c,Q,re),ie=new S3(re,null,Q,null,X,k),ce=new BS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new ZGt(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,Q,ee){if(q!==!1)return function(re){if(re){if(o){let ie=WNe(k.server,Q),ce=LNe(k,c,Q,ie),me=new S3(ie,null,Q,null,ce,k),Oe=new BS(ee,me,ce);return i===!1&&ce.info({req:me},"incoming request"),o(new XGt,me,Oe)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,Q){return B('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,Q,N,f.routeHandler),this}function oe(q){return B('Cannot call "setValidatorCompiler"!'),this[f0].setValidatorCompiler(q),this}function ue(q){return B('Cannot call "setSchemaErrorFormatter"!'),jNe(q),this[hH]=q.bind(this),this}function Te(q){return B('Cannot call "setSerializerCompiler"!'),this[f0].setSerializerCompiler(q),this}function Ne(q){B('Cannot call "setSchemaController"!');let Q=this[f0],ee=DNe.buildSchemaController(Q,Object.assign({},Q.opts,q));return this[f0]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function je(q){return B('Cannot call "setReplySerializer"!'),this[PNe]=q,this}function Fe(q){return B('Cannot call "setErrorHandler"!'),this[v3]=qNe(this[v3],q.bind(this)),this}function ve(q){return B('Cannot call "setChildLoggerFactory"!'),this[yH]=q,this}function F(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?xH.concat(q.includeMeta):xH:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:Q,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),Q){X.originalUrl=X.url;let ce=Q.call(R,X);if(typeof ce=="string")X.url=ce;else{let me=new uzt(X.url,typeof ce);X.destroy(me)}}q.routing(X,ie,J(ne,X,ie))}}function K(q){return B('Cannot call "setGenReqId"!'),this[AH]=$Ne(this[mH].requestIdHeader,q),this}}I3.errorCodes=Ph;function jNe(t){if(typeof t!="function")throw new FNe(typeof t);if(t.constructor.name==="AsyncFunction")throw new FNe("AsyncFunction")}C3.exports=I3;C3.exports.fastify=I3;C3.exports.default=I3});var iOe=_((lqr,sOe)=>{var nOe=require("stream").Stream,Hzt=require("util");sOe.exports=pu;function pu(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Hzt.inherits(pu,nOe);pu.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(pu.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});pu.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};pu.prototype.resume=function(){this._released||this.release(),this.source.resume()};pu.prototype.pause=function(){this.source.pause()};pu.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};pu.prototype.pipe=function(){var t=nOe.prototype.pipe.apply(this,arguments);return this.resume(),t};pu.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};pu.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var uOe=_((dqr,cOe)=>{var Gzt=require("util"),oOe=require("stream").Stream,aOe=iOe();cOe.exports=Yn;function Yn(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}Gzt.inherits(Yn,oOe);Yn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};Yn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};Yn.prototype.append=function(t){var e=Yn.isStreamLike(t);if(e){if(!(t instanceof aOe)){var r=aOe.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};Yn.prototype.pipe=function(t,e){return oOe.prototype.pipe.call(this,t,e),this.resume(),t};Yn.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};Yn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=Yn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Yn.prototype._pipeNext=function(t){this._currentStream=t;var e=Yn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};Yn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};Yn.prototype.write=function(t){this.emit("data",t)};Yn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Yn.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};Yn.prototype.end=function(){this._reset(),this.emit("end")};Yn.prototype.destroy=function(){this._reset(),this.emit("close")};Yn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Yn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};Yn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Yn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var lOe=_((fqr,zzt)=>{zzt.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var fOe=_((pqr,dOe)=>{dOe.exports=lOe()});var hOe=_(eo=>{"use strict";var O3=fOe(),Kzt=require("path").extname,pOe=/^\s*([^;\s]*)(?:;|\s|$)/,Vzt=/^text\//i;eo.charset=mOe;eo.charsets={lookup:mOe};eo.contentType=Yzt;eo.extension=Jzt;eo.extensions=Object.create(null);eo.lookup=Xzt;eo.types=Object.create(null);Zzt(eo.extensions,eo.types);function mOe(t){if(!t||typeof t!="string")return!1;var e=pOe.exec(t),r=e&&O3[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Vzt.test(e[1])?"UTF-8":!1}function Yzt(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?eo.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=eo.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function Jzt(t){if(!t||typeof t!="string")return!1;var e=pOe.exec(t),r=e&&eo.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Xzt(t){if(!t||typeof t!="string")return!1;var e=Kzt("x."+t).toLowerCase().substr(1);return e&&eo.types[e]||!1}function Zzt(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(O3).forEach(function(s){var i=O3[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;o<a.length;o++){var c=a[o];if(e[c]){var u=r.indexOf(O3[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 yOe=_((hqr,gOe)=>{gOe.exports=eKt;function eKt(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var vH=_((gqr,xOe)=>{var AOe=yOe();xOe.exports=tKt;function tKt(t){var e=!1;return AOe(function(){e=!0}),function(n,s){e?t(n,s):AOe(function(){t(n,s)})}}});var SH=_((yqr,bOe)=>{bOe.exports=rKt;function rKt(t){Object.keys(t.jobs).forEach(nKt.bind(t)),t.jobs={}}function nKt(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var IH=_((Aqr,EOe)=>{var _Oe=vH(),sKt=SH();EOe.exports=iKt;function iKt(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=aKt(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?sKt(r):r.results[s]=a,n(i,r.results))})}function aKt(t,e,r,n){var s;return t.length==2?s=t(r,_Oe(n)):s=t(r,e,_Oe(n)),s}});var CH=_((xqr,vOe)=>{vOe.exports=oKt;function oKt(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var TH=_((bqr,SOe)=>{var cKt=SH(),uKt=vH();SOe.exports=lKt;function lKt(t){Object.keys(this.jobs).length&&(this.index=this.size,cKt(this),uKt(t)(null,this.results))}});var COe=_((_qr,IOe)=>{var dKt=IH(),fKt=CH(),pKt=TH();IOe.exports=mKt;function mKt(t,e,r){for(var n=fKt(t);n.index<(n.keyedList||t).length;)dKt(t,e,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return pKt.bind(n,r)}});var wH=_((Eqr,k3)=>{var TOe=IH(),hKt=CH(),gKt=TH();k3.exports=yKt;k3.exports.ascending=wOe;k3.exports.descending=AKt;function yKt(t,e,r,n){var s=hKt(t,r);return TOe(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){TOe(t,e,s,i);return}n(null,s.results)}),gKt.bind(s,n)}function wOe(t,e){return t<e?-1:t>e?1:0}function AKt(t,e){return-1*wOe(t,e)}});var NOe=_((vqr,ROe)=>{var xKt=wH();ROe.exports=bKt;function bKt(t,e,r){return xKt(t,e,null,r)}});var kOe=_((Sqr,OOe)=>{OOe.exports={parallel:COe(),serial:NOe(),serialOrdered:wH()}});var RH=_((Iqr,POe)=>{"use strict";POe.exports=Object});var BOe=_((Cqr,DOe)=>{"use strict";DOe.exports=Error});var MOe=_((Tqr,LOe)=>{"use strict";LOe.exports=EvalError});var $Oe=_((wqr,WOe)=>{"use strict";WOe.exports=RangeError});var FOe=_((Rqr,UOe)=>{"use strict";UOe.exports=ReferenceError});var jOe=_((Nqr,qOe)=>{"use strict";qOe.exports=SyntaxError});var p0=_((Oqr,QOe)=>{"use strict";QOe.exports=TypeError});var GOe=_((kqr,HOe)=>{"use strict";HOe.exports=URIError});var KOe=_((Pqr,zOe)=>{"use strict";zOe.exports=Math.abs});var YOe=_((Dqr,VOe)=>{"use strict";VOe.exports=Math.floor});var XOe=_((Bqr,JOe)=>{"use strict";JOe.exports=Math.max});var eke=_((Lqr,ZOe)=>{"use strict";ZOe.exports=Math.min});var rke=_((Mqr,tke)=>{"use strict";tke.exports=Math.pow});var ske=_((Wqr,nke)=>{"use strict";nke.exports=Math.round});var ake=_(($qr,ike)=>{"use strict";ike.exports=Number.isNaN||function(e){return e!==e}});var cke=_((Uqr,oke)=>{"use strict";var _Kt=ake();oke.exports=function(e){return _Kt(e)||e===0?e:e<0?-1:1}});var lke=_((Fqr,uke)=>{"use strict";uke.exports=Object.getOwnPropertyDescriptor});var NH=_((qqr,dke)=>{"use strict";var P3=lke();if(P3)try{P3([],"length")}catch{P3=null}dke.exports=P3});var pke=_((jqr,fke)=>{"use strict";var D3=Object.defineProperty||!1;if(D3)try{D3({},"a",{value:1})}catch{D3=!1}fke.exports=D3});var OH=_((Qqr,mke)=>{"use strict";mke.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var yke=_((Hqr,gke)=>{"use strict";var hke=typeof Symbol<"u"&&Symbol,EKt=OH();gke.exports=function(){return typeof hke!="function"||typeof Symbol!="function"||typeof hke("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:EKt()}});var kH=_((Gqr,Ake)=>{"use strict";Ake.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var PH=_((zqr,xke)=>{"use strict";var vKt=RH();xke.exports=vKt.getPrototypeOf||null});var Eke=_((Kqr,_ke)=>{"use strict";var SKt="Function.prototype.bind called on incompatible ",IKt=Object.prototype.toString,CKt=Math.max,TKt="[object Function]",bke=function(e,r){for(var n=[],s=0;s<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},wKt=function(e,r){for(var n=[],s=r||0,i=0;s<e.length;s+=1,i+=1)n[i]=e[s];return n},RKt=function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=e);return r};_ke.exports=function(e){var r=this;if(typeof r!="function"||IKt.apply(r)!==TKt)throw new TypeError(SKt+r);for(var n=wKt(arguments,1),s,i=function(){if(this instanceof s){var l=r.apply(this,bke(n,arguments));return Object(l)===l?l:this}return r.apply(e,bke(n,arguments))},a=CKt(0,r.length-n.length),o=[],c=0;c<a;c++)o[c]="$"+c;if(s=Function("binder","return function ("+RKt(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 $S=_((Vqr,vke)=>{"use strict";var NKt=Eke();vke.exports=Function.prototype.bind||NKt});var B3=_((Yqr,Ske)=>{"use strict";Ske.exports=Function.prototype.call});var DH=_((Jqr,Ike)=>{"use strict";Ike.exports=Function.prototype.apply});var Tke=_((Xqr,Cke)=>{"use strict";Cke.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var Rke=_((Zqr,wke)=>{"use strict";var OKt=$S(),kKt=DH(),PKt=B3(),DKt=Tke();wke.exports=DKt||OKt.call(PKt,kKt)});var BH=_((ejr,Nke)=>{"use strict";var BKt=$S(),LKt=p0(),MKt=B3(),WKt=Rke();Nke.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new LKt("a function is required");return WKt(BKt,MKt,e)}});var Lke=_((tjr,Bke)=>{"use strict";var $Kt=BH(),Oke=NH(),Pke;try{Pke=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var LH=!!Pke&&Oke&&Oke(Object.prototype,"__proto__"),Dke=Object,kke=Dke.getPrototypeOf;Bke.exports=LH&&typeof LH.get=="function"?$Kt([LH.get]):typeof kke=="function"?function(e){return kke(e==null?e:Dke(e))}:!1});var Fke=_((rjr,Uke)=>{"use strict";var Mke=kH(),Wke=PH(),$ke=Lke();Uke.exports=Mke?function(e){return Mke(e)}:Wke?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return Wke(e)}:$ke?function(e){return $ke(e)}:null});var L3=_((njr,qke)=>{"use strict";var UKt=Function.prototype.call,FKt=Object.prototype.hasOwnProperty,qKt=$S();qke.exports=qKt.call(UKt,FKt)});var jS=_((sjr,Kke)=>{"use strict";var mr,jKt=RH(),QKt=BOe(),HKt=MOe(),GKt=$Oe(),zKt=FOe(),Qx=jOe(),jx=p0(),KKt=GOe(),VKt=KOe(),YKt=YOe(),JKt=XOe(),XKt=eke(),ZKt=rke(),eVt=ske(),tVt=cke(),Gke=Function,MH=function(t){try{return Gke('"use strict"; return ('+t+").constructor;")()}catch{}},US=NH(),rVt=pke(),WH=function(){throw new jx},nVt=US?function(){try{return arguments.callee,WH}catch{try{return US(arguments,"callee").get}catch{return WH}}}():WH,Fx=yke()(),Vs=Fke(),sVt=PH(),iVt=kH(),zke=DH(),FS=B3(),qx={},aVt=typeof Uint8Array>"u"||!Vs?mr:Vs(Uint8Array),Dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?mr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?mr:ArrayBuffer,"%ArrayIteratorPrototype%":Fx&&Vs?Vs([][Symbol.iterator]()):mr,"%AsyncFromSyncIteratorPrototype%":mr,"%AsyncFunction%":qx,"%AsyncGenerator%":qx,"%AsyncGeneratorFunction%":qx,"%AsyncIteratorPrototype%":qx,"%Atomics%":typeof Atomics>"u"?mr:Atomics,"%BigInt%":typeof BigInt>"u"?mr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?mr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?mr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?mr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":QKt,"%eval%":eval,"%EvalError%":HKt,"%Float16Array%":typeof Float16Array>"u"?mr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?mr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?mr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?mr:FinalizationRegistry,"%Function%":Gke,"%GeneratorFunction%":qx,"%Int8Array%":typeof Int8Array>"u"?mr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?mr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?mr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Fx&&Vs?Vs(Vs([][Symbol.iterator]())):mr,"%JSON%":typeof JSON=="object"?JSON:mr,"%Map%":typeof Map>"u"?mr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Fx||!Vs?mr:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":jKt,"%Object.getOwnPropertyDescriptor%":US,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?mr:Promise,"%Proxy%":typeof Proxy>"u"?mr:Proxy,"%RangeError%":GKt,"%ReferenceError%":zKt,"%Reflect%":typeof Reflect>"u"?mr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?mr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Fx||!Vs?mr:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?mr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Fx&&Vs?Vs(""[Symbol.iterator]()):mr,"%Symbol%":Fx?Symbol:mr,"%SyntaxError%":Qx,"%ThrowTypeError%":nVt,"%TypedArray%":aVt,"%TypeError%":jx,"%Uint8Array%":typeof Uint8Array>"u"?mr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?mr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?mr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?mr:Uint32Array,"%URIError%":KKt,"%WeakMap%":typeof WeakMap>"u"?mr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?mr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?mr:WeakSet,"%Function.prototype.call%":FS,"%Function.prototype.apply%":zke,"%Object.defineProperty%":rVt,"%Object.getPrototypeOf%":sVt,"%Math.abs%":VKt,"%Math.floor%":YKt,"%Math.max%":JKt,"%Math.min%":XKt,"%Math.pow%":ZKt,"%Math.round%":eVt,"%Math.sign%":tVt,"%Reflect.getPrototypeOf%":iVt};if(Vs)try{null.error}catch(t){jke=Vs(Vs(t)),Dh["%Error.prototype%"]=jke}var jke,oVt=function t(e){var r;if(e==="%AsyncFunction%")r=MH("async function () {}");else if(e==="%GeneratorFunction%")r=MH("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=MH("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return Dh[e]=r,r},Qke={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},qS=$S(),M3=L3(),cVt=qS.call(FS,Array.prototype.concat),uVt=qS.call(zke,Array.prototype.splice),Hke=qS.call(FS,String.prototype.replace),W3=qS.call(FS,String.prototype.slice),lVt=qS.call(FS,RegExp.prototype.exec),dVt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,fVt=/\\(\\)?/g,pVt=function(e){var r=W3(e,0,1),n=W3(e,-1);if(r==="%"&&n!=="%")throw new Qx("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new Qx("invalid intrinsic syntax, expected opening `%`");var s=[];return Hke(e,dVt,function(i,a,o,c){s[s.length]=o?Hke(c,fVt,"$1"):a||i}),s},mVt=function(e,r){var n=e,s;if(M3(Qke,n)&&(s=Qke[n],n="%"+s[0]+"%"),M3(Dh,n)){var i=Dh[n];if(i===qx&&(i=oVt(n)),typeof i>"u"&&!r)throw new jx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new Qx("intrinsic "+e+" does not exist!")};Kke.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new jx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new jx('"allowMissing" argument must be a boolean');if(lVt(/^%?[^%]*%?$/,e)===null)throw new Qx("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=pVt(e),s=n.length>0?n[0]:"",i=mVt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],uVt(n,cVt([0,1],u)));for(var l=1,d=!0;l<n.length;l+=1){var f=n[l],p=W3(f,0,1),m=W3(f,-1);if((p==='"'||p==="'"||p==="`"||m==='"'||m==="'"||m==="`")&&p!==m)throw new Qx("property names with quotes must have matching quotes");if((f==="constructor"||!d)&&(c=!0),s+="."+f,a="%"+s+"%",M3(Dh,a))o=Dh[a];else if(o!=null){if(!(f in o)){if(!r)throw new jx("base intrinsic for "+e+" exists, but the property is not available.");return}if(US&&l+1>=n.length){var h=US(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=M3(o,f),o=o[f];d&&!c&&(Dh[a]=o)}}return o}});var Yke=_((ijr,Vke)=>{"use strict";var hVt=OH();Vke.exports=function(){return hVt()&&!!Symbol.toStringTag}});var Zke=_((ajr,Xke)=>{"use strict";var gVt=jS(),Jke=gVt("%Object.defineProperty%",!0),yVt=Yke()(),AVt=L3(),xVt=p0(),$3=yVt?Symbol.toStringTag:null;Xke.exports=function(e,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new xVt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");$3&&(n||!AVt(e,$3))&&(Jke?Jke(e,$3,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[$3]=r)}});var tPe=_((ojr,ePe)=>{"use strict";ePe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var nPe=_((cjr,rPe)=>{"use strict";var qH=uOe(),bVt=require("util"),$H=require("path"),_Vt=require("http"),EVt=require("https"),vVt=require("url").parse,SVt=require("fs"),IVt=require("stream").Stream,CVt=require("crypto"),UH=hOe(),TVt=kOe(),wVt=Zke(),m0=L3(),FH=tPe();function kr(t){if(!(this instanceof kr))return new kr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],qH.call(this),t=t||{};for(var e in t)this[e]=t[e]}bVt.inherits(kr,qH);kr.LINE_BREAK=`\r
|
|
`;kr.DEFAULT_CONTENT_TYPE="application/octet-stream";kr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=qH.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};kr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+kr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&m0(e,"httpVersion"))&&!(e instanceof IVt))&&(r.knownLength||this._valuesToMeasure.push(e))};kr.prototype._lengthRetriever=function(t,e){m0(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):SVt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):m0(t,"httpVersion")?e(null,Number(t.headers["content-length"])):m0(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};kr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&FH(a,r.header);var o;for(var c in a)if(m0(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+kr.LINE_BREAK)}return"--"+this.getBoundary()+kr.LINE_BREAK+i+kr.LINE_BREAK};kr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=$H.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=$H.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&m0(t,"httpVersion")&&(r=$H.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};kr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=UH.lookup(t.name)),!r&&t&&t.path&&(r=UH.lookup(t.path)),!r&&t&&t.readable&&m0(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=UH.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=kr.DEFAULT_CONTENT_TYPE),r};kr.prototype._multiPartFooter=function(){return function(t){var e=kr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};kr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+kr.LINE_BREAK};kr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)m0(t,e)&&(r[e.toLowerCase()]=t[e]);return r};kr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};kr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};kr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r<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(kr.LINE_BREAK)])));return Buffer.concat([t,Buffer.from(this._lastBoundary())])};kr.prototype._generateBoundary=function(){this._boundary="--------------------------"+CVt.randomBytes(12).toString("hex")};kr.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};kr.prototype.hasKnownLength=function(){var t=!0;return this._valuesToMeasure.length&&(t=!1),t};kr.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}TVt.parallel(this._valuesToMeasure,this._lengthRetriever,function(r,n){if(r){t(r);return}n.forEach(function(s){e+=s}),t(null,e)})};kr.prototype.submit=function(t,e){var r,n,s={method:"post"};return typeof t=="string"?(t=vVt(t),n=FH({port:t.port,path:t.pathname,host:t.hostname,protocol:t.protocol},s)):(n=FH(t,s),n.port||(n.port=n.protocol==="https:"?443:80)),n.headers=this.getHeaders(t.headers),n.protocol==="https:"?r=EVt.request(n):r=_Vt.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};kr.prototype._error=function(t){this.error||(this.error=t,this.pause(),this.emit("error",t))};kr.prototype.toString=function(){return"[object FormData]"};wVt(kr.prototype,"FormData");rPe.exports=kr});var xPe=_(APe=>{"use strict";var QVt=require("url").parse,HVt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},GVt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function zVt(t){var e=typeof t=="string"?QVt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||HVt[r]||0,!KVt(n,s)))return"";var i=Kx("npm_config_"+r+"_proxy")||Kx(r+"_proxy")||Kx("npm_config_proxy")||Kx("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function KVt(t,e){var r=(Kx("npm_config_no_proxy")||Kx("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!GVt.call(t,i)):t!==i}):!0}function Kx(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}APe.getProxyForUrl=zVt});var _Pe=_((uQr,bPe)=>{var Vx=1e3,Yx=Vx*60,Jx=Yx*60,Mh=Jx*24,VVt=Mh*7,YVt=Mh*365.25;bPe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return JVt(t);if(r==="number"&&isFinite(t))return e.long?ZVt(t):XVt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function JVt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*YVt;case"weeks":case"week":case"w":return r*VVt;case"days":case"day":case"d":return r*Mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Jx;case"minutes":case"minute":case"mins":case"min":case"m":return r*Yx;case"seconds":case"second":case"secs":case"sec":case"s":return r*Vx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function XVt(t){var e=Math.abs(t);return e>=Mh?Math.round(t/Mh)+"d":e>=Jx?Math.round(t/Jx)+"h":e>=Yx?Math.round(t/Yx)+"m":e>=Vx?Math.round(t/Vx)+"s":t+"ms"}function ZVt(t){var e=Math.abs(t);return e>=Mh?j3(t,e,Mh,"day"):e>=Jx?j3(t,e,Jx,"hour"):e>=Yx?j3(t,e,Yx,"minute"):e>=Vx?j3(t,e,Vx,"second"):t+" ms"}function j3(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var XH=_((lQr,EPe)=>{function eYt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=_Pe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f<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(...y){if(!h.enabled)return;let g=h,b=Number(new Date),x=b-(d||b);g.diff=x,g.prev=d,g.curr=b,d=b,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(I,R)=>{if(I==="%%")return"%";A++;let w=r.formatters[R];if(typeof w=="function"){let N=y[A];I=w.call(g,N),y.splice(A,1),A--}return I}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,y)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:y=>{f=y}}),typeof r.init=="function"&&r.init(h),h}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,p=0,m=-1,h=0;for(;f<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}EPe.exports=eYt});var vPe=_((to,Q3)=>{to.formatArgs=rYt;to.save=nYt;to.load=sYt;to.useColors=tYt;to.storage=iYt();to.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();to.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function tYt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function rYt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+Q3.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}to.log=console.debug||console.log||(()=>{});function nYt(t){try{t?to.storage.setItem("debug",t):to.storage.removeItem("debug")}catch{}}function sYt(){let t;try{t=to.storage.getItem("debug")||to.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function iYt(){try{return localStorage}catch{}}Q3.exports=XH()(to);var{formatters:aYt}=Q3.exports;aYt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var IPe=_((dQr,SPe)=>{"use strict";SPe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n<s)}});var wPe=_((fQr,TPe)=>{"use strict";var oYt=require("os"),CPe=require("tty"),Ec=IPe(),{env:Ys}=process,y0;Ec("no-color")||Ec("no-colors")||Ec("color=false")||Ec("color=never")?y0=0:(Ec("color")||Ec("colors")||Ec("color=true")||Ec("color=always"))&&(y0=1);"FORCE_COLOR"in Ys&&(Ys.FORCE_COLOR==="true"?y0=1:Ys.FORCE_COLOR==="false"?y0=0:y0=Ys.FORCE_COLOR.length===0?1:Math.min(parseInt(Ys.FORCE_COLOR,10),3));function ZH(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function eG(t,e){if(y0===0)return 0;if(Ec("color=16m")||Ec("color=full")||Ec("color=truecolor"))return 3;if(Ec("color=256"))return 2;if(t&&!e&&y0===void 0)return 0;let r=y0||0;if(Ys.TERM==="dumb")return r;if(process.platform==="win32"){let n=oYt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in Ys)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in Ys)||Ys.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in Ys)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ys.TEAMCITY_VERSION)?1:0;if(Ys.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Ys){let n=parseInt((Ys.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ys.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ys.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Ys.TERM)||"COLORTERM"in Ys?1:r}function cYt(t){let e=eG(t,t&&t.isTTY);return ZH(e)}TPe.exports={supportsColor:cYt,stdout:ZH(eG(!0,CPe.isatty(1))),stderr:ZH(eG(!0,CPe.isatty(2)))}});var NPe=_((Js,G3)=>{var uYt=require("tty"),H3=require("util");Js.init=gYt;Js.log=pYt;Js.formatArgs=dYt;Js.save=mYt;Js.load=hYt;Js.useColors=lYt;Js.destroy=H3.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Js.colors=[6,2,3,4,5,1];try{let t=wPe();t&&(t.stderr||t).level>=2&&(Js.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Js.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function lYt(){return"colors"in Js.inspectOpts?!!Js.inspectOpts.colors:uYt.isatty(process.stderr.fd)}function dYt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
|
|
`).join(`
|
|
`+i),t.push(s+"m+"+G3.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=fYt()+e+" "+t[0]}function fYt(){return Js.inspectOpts.hideDate?"":new Date().toISOString()+" "}function pYt(...t){return process.stderr.write(H3.formatWithOptions(Js.inspectOpts,...t)+`
|
|
`)}function mYt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function hYt(){return process.env.DEBUG}function gYt(t){t.inspectOpts={};let e=Object.keys(Js.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=Js.inspectOpts[e[r]]}G3.exports=XH()(Js);var{formatters:RPe}=G3.exports;RPe.o=function(t){return this.inspectOpts.colors=this.useColors,H3.inspect(t,this.inspectOpts).split(`
|
|
`).map(e=>e.trim()).join(" ")};RPe.O=function(t){return this.inspectOpts.colors=this.useColors,H3.inspect(t,this.inspectOpts)}});var OPe=_((pQr,tG)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?tG.exports=vPe():tG.exports=NPe()});var PPe=_((mQr,kPe)=>{var zS;kPe.exports=function(){if(!zS){try{zS=OPe()("follow-redirects")}catch{}typeof zS!="function"&&(zS=function(){})}zS.apply(null,arguments)}});var WPe=_((hQr,pG)=>{var VS=require("url"),KS=VS.URL,yYt=require("http"),AYt=require("https"),aG=require("stream").Writable,oG=require("assert"),DPe=PPe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=$h(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var cG=!1;try{oG(new KS(""))}catch(t){cG=t.code==="ERR_INVALID_URL"}var xYt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],uG=["abort","aborted","connect","error","socket","timeout"],lG=Object.create(null);uG.forEach(function(t){lG[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var nG=YS("ERR_INVALID_URL","Invalid URL",TypeError),sG=YS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),bYt=YS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",sG),_Yt=YS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),EYt=YS("ERR_STREAM_WRITE_AFTER_END","write after end"),vYt=aG.prototype.destroy||LPe;function ro(t,e){aG.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof sG?s:new sG({cause:s}))}},this._performRequest()}ro.prototype=Object.create(aG.prototype);ro.prototype.abort=function(){fG(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};ro.prototype.destroy=function(t){return fG(this._currentRequest,t),vYt.call(this,t),this};ro.prototype.write=function(t,e,r){if(this._ending)throw new EYt;if(!Wh(t)&&!CYt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if($h(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new _Yt),this.abort())};ro.prototype.end=function(t,e,r){if($h(t)?(r=t,t=e=null):$h(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};ro.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};ro.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};ro.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},t),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(t){ro.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(ro.prototype,t,{get:function(){return this._currentRequest[t]}})});ro.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};ro.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of uG)n.on(s,lG[s]);if(this._currentUrl=/^\//.test(this._options.path)?VS.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i<o.length){var l=o[i++];n.finished||n.write(l.data,l.encoding,c)}else a._ended&&n.end()})()}};ro.prototype._processResponse=function(t){var e=t.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:t.headers,statusCode:e});var r=t.headers.location;if(!r||this._options.followRedirects===!1||e<300||e>=400){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(fG(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new bYt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],rG(/^content-/i,this._options.headers));var a=rG(/^host$/i,this._options.headers),o=dG(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:VS.format(Object.assign(o,{host:c})),l=SYt(r,u);if(DPe("redirecting to",l.href),this._isRedirect=!0,iG(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!IYt(l.host,c))&&rG(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),$h(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function BPe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return TYt(u)?u=iG(u):Wh(u)?u=iG(dG(u)):(d=l,l=MPe(u),u={protocol:s}),$h(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!Wh(l.host)&&!Wh(l.hostname)&&(l.hostname="::1"),oG.equal(l.protocol,s,"protocol mismatch"),DPe("options",l),new ro(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function LPe(){}function dG(t){var e;if(cG)e=new KS(t);else if(e=MPe(VS.parse(t)),!Wh(e.protocol))throw new nG({input:t});return e}function SYt(t,e){return cG?new KS(t,e):dG(VS.resolve(e,t))}function MPe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new nG({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new nG({input:t.href||t});return t}function iG(t,e){var r=e||{};for(var n of xYt)r[n]=t[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function rG(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function YS(t,e,r){function n(s){$h(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function fG(t,e){for(var r of uG)t.removeListener(r,lG[r]);t.on("error",LPe),t.destroy(e)}function IYt(t,e){oG(Wh(t)&&Wh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function Wh(t){return typeof t=="string"||t instanceof String}function $h(t){return typeof t=="function"}function CYt(t){return typeof t=="object"&&"length"in t}function TYt(t){return KS&&t instanceof KS}pG.exports=BPe({http:yYt,https:AYt});pG.exports.wrap=BPe});var AD=_(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});Sl.AttributeAction=Sl.IgnoreCaseMode=Sl.SelectorType=void 0;var VJt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(VJt=Sl.SelectorType||(Sl.SelectorType={}));Sl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var YJt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})(YJt=Sl.AttributeAction||(Sl.AttributeAction={}))});var lDe=_(ab=>{"use strict";Object.defineProperty(ab,"__esModule",{value:!0});ab.parse=ab.isTraversal=void 0;var Hr=AD(),aDe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,JJt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,XJt=new Map([[126,Hr.AttributeAction.Element],[94,Hr.AttributeAction.Start],[36,Hr.AttributeAction.End],[42,Hr.AttributeAction.Any],[33,Hr.AttributeAction.Not],[124,Hr.AttributeAction.Hyphen]]),ZJt=new Set(["has","not","matches","is","where","host","host-context"]);function cDe(t){switch(t.type){case Hr.SelectorType.Adjacent:case Hr.SelectorType.Child:case Hr.SelectorType.Descendant:case Hr.SelectorType.Parent:case Hr.SelectorType.Sibling:case Hr.SelectorType.ColumnCombinator:return!0;default:return!1}}ab.isTraversal=cDe;var eXt=new Set(["contains","icontains"]);function tXt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function dI(t){return t.replace(JJt,tXt)}function HG(t){return t===39||t===34}function oDe(t){return t===32||t===9||t===10||t===12||t===13}function rXt(t){var e=[],r=uDe(e,"".concat(t),0);if(r<t.length)throw new Error("Unmatched selector: ".concat(t.slice(r)));return e}ab.parse=rXt;function uDe(t,e,r){var n=[];function s(D){var L=e.slice(r+D).match(aDe);if(!L)throw new Error("Expected name, found ".concat(e.slice(r)));var Z=L[0];return r+=D+Z.length,dI(Z)}function i(D){for(r+=D;r<e.length&&oDe(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 dI(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&&cDe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(D){if(n.length>0&&n[n.length-1].type===Hr.SelectorType.Descendant){n[n.length-1].type=D;return}c(),n.push({type:D})}function l(D,L){n.push({type:Hr.SelectorType.Attribute,name:D,action:L,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Hr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r<e.length;){var f=e.charCodeAt(r);switch(f){case 32:case 9:case 10:case 12:case 13:{(n.length===0||n[0].type!==Hr.SelectorType.Descendant)&&(c(),n.push({type:Hr.SelectorType.Descendant})),i(1);break}case 62:{u(Hr.SelectorType.Child),i(1);break}case 60:{u(Hr.SelectorType.Parent),i(1);break}case 126:{u(Hr.SelectorType.Sibling),i(1);break}case 43:{u(Hr.SelectorType.Adjacent),i(1);break}case 46:{l("class",Hr.AttributeAction.Element);break}case 35:{l("id",Hr.AttributeAction.Equals);break}case 91:{i(1);var 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=Hr.AttributeAction.Exists,y=XJt.get(e.charCodeAt(r));if(y){if(h=y,e.charCodeAt(r+1)!==61)throw new Error("Expected `=`");i(2)}else e.charCodeAt(r)===61&&(h=Hr.AttributeAction.Equals,i(1));var g="",b=null;if(h!=="exists"){if(HG(e.charCodeAt(r))){for(var x=e.charCodeAt(r),A=r+1;A<e.length&&(e.charCodeAt(A)!==x||o(A));)A+=1;if(e.charCodeAt(A)!==x)throw new Error("Attribute value didn't end");g=dI(e.slice(r+1,A)),r=A+1}else{for(var S=r;r<e.length&&(!oDe(e.charCodeAt(r))&&e.charCodeAt(r)!==93||o(r));)r+=1;g=dI(e.slice(S,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:Hr.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:Hr.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(ZJt.has(w)){if(HG(e.charCodeAt(r+1)))throw new Error("Pseudo-selector ".concat(w," cannot be quoted"));if(N=[],r=uDe(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(),eXt.has(w)){var k=N.charCodeAt(0);k===N.charCodeAt(N.length-1)&&HG(k)&&(N=N.slice(1,-1))}N=dI(N)}n.push({type:Hr.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(Hr.SelectorType.ColumnCombinator),i(2);break}}else if(aDe.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:Hr.SelectorType.Universal,namespace:m}:{type:Hr.SelectorType.Tag,name:M,namespace:m})}}}return d(),r}});var yDe=_(cb=>{"use strict";var xD=cb&&cb.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n<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(cb,"__esModule",{value:!0});cb.stringify=void 0;var Jn=AD(),pDe=["\\",'"'],mDe=xD(xD([],pDe,!0),["(",")"],!1),nXt=new Set(pDe.map(function(t){return t.charCodeAt(0)})),dDe=new Set(mDe.map(function(t){return t.charCodeAt(0)})),ob=new Set(xD(xD([],mDe,!0),["~","^","$","*","+","!","|",":","[","]"," ","."],!1).map(function(t){return t.charCodeAt(0)}));function hDe(t){return t.map(function(e){return e.map(sXt).join("")}).join(", ")}cb.stringify=hDe;function sXt(t,e,r){switch(t.type){case Jn.SelectorType.Child:return e===0?"> ":" > ";case Jn.SelectorType.Parent:return e===0?"< ":" < ";case Jn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Jn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Jn.SelectorType.Descendant:return" ";case Jn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Jn.SelectorType.Universal:return t.namespace==="*"&&e+1<r.length&&"name"in r[e+1]?"":"".concat(gDe(t.namespace),"*");case Jn.SelectorType.Tag:return fDe(t);case Jn.SelectorType.PseudoElement:return"::".concat(uf(t.name,ob)).concat(t.data===null?"":"(".concat(uf(t.data,dDe),")"));case Jn.SelectorType.Pseudo:return":".concat(uf(t.name,ob)).concat(t.data===null?"":"(".concat(typeof t.data=="string"?uf(t.data,dDe):hDe(t.data),")"));case Jn.SelectorType.Attribute:{if(t.name==="id"&&t.action===Jn.AttributeAction.Equals&&t.ignoreCase==="quirks"&&!t.namespace)return"#".concat(uf(t.value,ob));if(t.name==="class"&&t.action===Jn.AttributeAction.Element&&t.ignoreCase==="quirks"&&!t.namespace)return".".concat(uf(t.value,ob));var n=fDe(t);return t.action===Jn.AttributeAction.Exists?"[".concat(n,"]"):"[".concat(n).concat(iXt(t.action),'="').concat(uf(t.value,nXt),'"').concat(t.ignoreCase===null?"":t.ignoreCase?" i":" s","]")}}}function iXt(t){switch(t){case Jn.AttributeAction.Equals:return"";case Jn.AttributeAction.Element:return"~";case Jn.AttributeAction.Start:return"^";case Jn.AttributeAction.End:return"$";case Jn.AttributeAction.Any:return"*";case Jn.AttributeAction.Not:return"!";case Jn.AttributeAction.Hyphen:return"|";case Jn.AttributeAction.Exists:throw new Error("Shouldn't be here")}}function fDe(t){return"".concat(gDe(t.namespace)).concat(uf(t.name,ob))}function gDe(t){return t!==null?"".concat(t==="*"?"*":uf(t,ob),"|"):""}function uf(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 ub=_(Po=>{"use strict";var aXt=Po&&Po.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),oXt=Po&&Po.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&aXt(e,t,r)};Object.defineProperty(Po,"__esModule",{value:!0});Po.stringify=Po.parse=Po.isTraversal=void 0;oXt(AD(),Po);var ADe=lDe();Object.defineProperty(Po,"isTraversal",{enumerable:!0,get:function(){return ADe.isTraversal}});Object.defineProperty(Po,"parse",{enumerable:!0,get:function(){return ADe.parse}});var cXt=yDe();Object.defineProperty(Po,"stringify",{enumerable:!0,get:function(){return cXt.stringify}})});var S0=_((eKr,xDe)=>{xDe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var NI=_((Pz,Dz)=>{(function(t,e){typeof Pz=="object"&&typeof Dz<"u"?Dz.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(Pz,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var D=["th","st","nd","rd"],L=M%100;return"["+M+(D[(L-20)%10]||D[L]||D[0])+"]"}},g=function(M,D,L){var Z=String(M);return!Z||Z.length>=D?M:""+Array(D+1-Z.length).join(L)+M},b={s:g,z:function(M){var D=-M.utcOffset(),L=Math.abs(D),Z=Math.floor(L/60),W=L%60;return(D<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(D,L){if(D.date()<L.date())return-M(L,D);var Z=12*(L.year()-D.year())+(L.month()-D.month()),W=D.clone().add(Z,u),U=L-W<0,z=D.clone().add(Z+(U?-1:1),u);return+(-(Z+(L-W)/(U?W-z:z-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}},x="en",A={};A[x]=y;var S="$isDayjsObject",I=function(M){return M instanceof k||!(!M||!M[S])},R=function M(D,L,Z){var W;if(!D)return x;if(typeof D=="string"){var U=D.toLowerCase();A[U]&&(W=U),L&&(A[U]=L,W=U);var z=D.split("-");if(!W&&z.length>1)return M(z[0])}else{var j=D.name;A[j]=D,W=j}return!Z&&W&&(x=W),W||!Z&&x},w=function(M,D){if(I(M))return M.clone();var L=typeof D=="object"?D:{};return L.date=M,L.args=arguments,new k(L)},N=b;N.l=R,N.i=I,N.w=function(M,D){return w(M,{locale:D.$L,utc:D.$u,x:D.$x,$offset:D.$offset})};var k=function(){function M(L){this.$L=R(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[S]=!0}var D=M.prototype;return D.parse=function(L){this.$d=function(Z){var W=Z.date,U=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var z=W.match(m);if(z){var j=z[2]-1||0,J=(z[7]||"0").substring(0,3);return U?new Date(Date.UTC(z[1],j,z[3]||1,z[4]||0,z[5]||0,z[6]||0,J)):new Date(z[1],j,z[3]||1,z[4]||0,z[5]||0,z[6]||0,J)}}return new Date(W)}(L),this.init()},D.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},D.$utils=function(){return N},D.isValid=function(){return this.$d.toString()!==p},D.isSame=function(L,Z){var W=w(L);return this.startOf(Z)<=W&&W<=this.endOf(Z)},D.isAfter=function(L,Z){return w(L)<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,U=!!N.u(Z)||Z,z=N.p(L),j=function(Fe,ve){var F=N.w(W.$u?Date.UTC(W.$y,ve,Fe):new Date(W.$y,ve,Fe),W);return U?F:F.endOf(o)},J=function(Fe,ve){return N.w(W.toDate()[Fe].apply(W.toDate("s"),(U?[0,0,0,0]:[23,59,59,999]).slice(ve)),W)},se=this.$W,oe=this.$M,ue=this.$D,Te="set"+(this.$u?"UTC":"");switch(z){case d:return U?j(1,0):j(31,11);case u:return U?j(1,oe):j(0,oe+1);case c:var Ne=this.$locale().weekStart||0,je=(se<Ne?se+7:se)-Ne;return j(U?ue-je:ue+(6-je),oe);case o:case f:return J(Te+"Hours",0);case a:return J(Te+"Minutes",1);case i:return J(Te+"Seconds",2);case s:return J(Te+"Milliseconds",3);default:return this.clone()}},D.endOf=function(L){return this.startOf(L,!1)},D.$set=function(L,Z){var W,U=N.p(L),z="set"+(this.$u?"UTC":""),j=(W={},W[o]=z+"Date",W[f]=z+"Date",W[u]=z+"Month",W[d]=z+"FullYear",W[a]=z+"Hours",W[i]=z+"Minutes",W[s]=z+"Seconds",W[n]=z+"Milliseconds",W)[U],J=U===o?this.$D+(Z-this.$W):Z;if(U===u||U===d){var se=this.clone().set(f,1);se.$d[j](J),se.init(),this.$d=se.set(f,Math.min(this.$D,se.daysInMonth())).$d}else j&&this.$d[j](J);return this.init(),this},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,U=this;L=Number(L);var z=N.p(Z),j=function(oe){var ue=w(U);return N.w(ue.date(ue.date()+Math.round(oe*L)),U)};if(z===u)return this.set(u,this.$M+L);if(z===d)return this.set(d,this.$y+L);if(z===o)return j(1);if(z===c)return j(7);var J=(W={},W[i]=e,W[a]=r,W[s]=t,W)[z]||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 U=L||"YYYY-MM-DDTHH:mm:ssZ",z=N.z(this),j=this.$H,J=this.$m,se=this.$M,oe=W.weekdays,ue=W.months,Te=W.meridiem,Ne=function(ve,F,G,K){return ve&&(ve[F]||ve(Z,U))||G[F].slice(0,K)},je=function(ve){return N.s(j%12||12,ve,"0")},Fe=Te||function(ve,F,G){var K=ve<12?"AM":"PM";return G?K.toLowerCase():K};return U.replace(h,function(ve,F){return F||function(G){switch(G){case"YY":return String(Z.$y).slice(-2);case"YYYY":return N.s(Z.$y,4,"0");case"M":return se+1;case"MM":return N.s(se+1,2,"0");case"MMM":return Ne(W.monthsShort,se,ue,3);case"MMMM":return Ne(ue,se);case"D":return Z.$D;case"DD":return N.s(Z.$D,2,"0");case"d":return String(Z.$W);case"dd":return Ne(W.weekdaysMin,Z.$W,oe,2);case"ddd":return Ne(W.weekdaysShort,Z.$W,oe,3);case"dddd":return oe[Z.$W];case"H":return String(j);case"HH":return N.s(j,2,"0");case"h":return je(1);case"hh":return je(2);case"a":return Fe(j,J,!0);case"A":return Fe(j,J,!1);case"m":return String(J);case"mm":return N.s(J,2,"0");case"s":return String(Z.$s);case"ss":return N.s(Z.$s,2,"0");case"SSS":return N.s(Z.$ms,3,"0");case"Z":return z}return null}(ve)||z.replace(":","")})},D.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},D.diff=function(L,Z,W){var U,z=this,j=N.p(Z),J=w(L),se=(J.utcOffset()-this.utcOffset())*e,oe=this-J,ue=function(){return N.m(z,J)};switch(j){case d:U=ue()/12;break;case u:U=ue();break;case l:U=ue()/3;break;case c:U=(oe-se)/6048e5;break;case o:U=(oe-se)/864e5;break;case a:U=oe/r;break;case i:U=oe/e;break;case s:U=oe/t;break;default:U=oe}return W?U:N.a(U)},D.daysInMonth=function(){return this.endOf(u).$D},D.$locale=function(){return A[this.$L]},D.locale=function(L,Z){if(!L)return this.$L;var W=this.clone(),U=R(L,Z,!0);return U&&(W.$L=U),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=k.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,k,w),M.$i=!0),w},w.locale=R,w.isDayjs=I,w.unix=function(M){return w(1e3*M)},w.en=A[x],w.Ls=A,w.p={},w})});var Ar=_((ZD,eBe)=>{(function(t,e){typeof ZD=="object"?eBe.exports=ZD=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(ZD,function(){var t=t||function(e,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function g(){}return function(b){var x;return g.prototype=b,x=new g,g.prototype=null,x}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,x=g.words,A=this.sigBytes,S=g.sigBytes;if(this.clamp(),A%4)for(var I=0;I<S;I++){var R=x[I>>>2]>>>24-I%4*8&255;b[A+I>>>2]|=R<<24-(A+I)%4*8}else for(var w=0;w<S;w+=4)b[A+w>>>2]=x[w>>>2];return this.sigBytes+=S,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],x=0;x<g;x+=4)b.push(s());return new u.init(b,g)}}),l=a.enc={},d=l.Hex={stringify:function(g){for(var b=g.words,x=g.sigBytes,A=[],S=0;S<x;S++){var I=b[S>>>2]>>>24-S%4*8&255;A.push((I>>>4).toString(16)),A.push((I&15).toString(16))}return A.join("")},parse:function(g){for(var b=g.length,x=[],A=0;A<b;A+=2)x[A>>>3]|=parseInt(g.substr(A,2),16)<<24-A%8*4;return new u.init(x,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,x=g.sigBytes,A=[],S=0;S<x;S++){var I=b[S>>>2]>>>24-S%4*8&255;A.push(String.fromCharCode(I))}return A.join("")},parse:function(g){for(var b=g.length,x=[],A=0;A<b;A++)x[A>>>2]|=(g.charCodeAt(A)&255)<<24-A%4*8;return new u.init(x,b)}},p=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=p.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var b,x=this._data,A=x.words,S=x.sigBytes,I=this.blockSize,R=I*4,w=S/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*I,k=e.min(N*4,S);if(N){for(var B=0;B<N;B+=I)this._doProcessBlock(A,B);b=A.splice(0,N),x.sigBytes-=k}return new u.init(b,k)},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,x){return new g.init(x).finalize(b)}},_createHmacHelper:function(g){return function(b,x){return new y.HMAC.init(g,x).finalize(b)}}}),y=a.algo={};return a}(Math);return t})});var OI=_((e4,tBe)=>{(function(t,e){typeof e4=="object"?tBe.exports=e4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(e4,function(t){return function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f<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 nBe=_((t4,rBe)=>{(function(t,e){typeof t4=="object"?rBe.exports=t4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(t4,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u<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 iBe=_((r4,sBe)=>{(function(t,e){typeof r4=="object"?sBe.exports=r4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(r4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d<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 k0=_((n4,aBe)=>{(function(t,e){typeof n4=="object"?aBe.exports=n4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(n4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f<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,y=p<<16|m<<8|h,g=0;g<4&&f+g*.75<u;g++)d.push(l.charAt(y>>>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 cBe=_((s4,oBe)=>{(function(t,e){typeof s4=="object"?oBe.exports=s4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(s4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],p=0;p<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,y=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|y,b=0;b<4&&p+b*.75<l;b++)f.push(d.charAt(g>>>6*(3-b)&63));var x=d.charAt(64);if(x)for(;f.length%4;)f.push(x);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f<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 P0=_((i4,uBe)=>{(function(t,e){typeof i4=="object"?uBe.exports=i4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(i4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var y=m+h,g=p[y];p[y]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,x=p[m+0],A=p[m+1],S=p[m+2],I=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],k=p[m+7],B=p[m+8],M=p[m+9],D=p[m+10],L=p[m+11],Z=p[m+12],W=p[m+13],U=p[m+14],z=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,x,7,o[0]),oe=u(oe,j,J,se,A,12,o[1]),se=u(se,oe,j,J,S,17,o[2]),J=u(J,se,oe,j,I,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,k,22,o[7]),j=u(j,J,se,oe,B,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,D,17,o[10]),J=u(J,se,oe,j,L,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,U,17,o[14]),J=u(J,se,oe,j,z,22,o[15]),j=l(j,J,se,oe,A,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,L,14,o[18]),J=l(J,se,oe,j,x,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,D,9,o[21]),se=l(se,oe,j,J,z,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,U,9,o[25]),se=l(se,oe,j,J,I,14,o[26]),J=l(J,se,oe,j,B,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,S,9,o[29]),se=l(se,oe,j,J,k,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,B,11,o[33]),se=d(se,oe,j,J,L,16,o[34]),J=d(J,se,oe,j,U,23,o[35]),j=d(j,J,se,oe,A,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,k,16,o[38]),J=d(J,se,oe,j,D,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,x,11,o[41]),se=d(se,oe,j,J,I,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,z,16,o[46]),J=d(J,se,oe,j,S,23,o[47]),j=f(j,J,se,oe,x,6,o[48]),oe=f(oe,j,J,se,k,10,o[49]),se=f(se,oe,j,J,U,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,I,10,o[53]),se=f(se,oe,j,J,D,15,o[54]),J=f(J,se,oe,j,A,21,o[55]),j=f(j,J,se,oe,B,6,o[56]),oe=f(oe,j,J,se,z,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,L,10,o[61]),se=f(se,oe,j,J,S,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,y=p.sigBytes*8;m[y>>>5]|=128<<24-y%32;var g=e.floor(h/4294967296),b=h;m[(y+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(y+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var x=this._hash,A=x.words,S=0;S<4;S++){var I=A[S];A[S]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}return x},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,y,g,b,x){var A=p+(m&h|~m&y)+g+x;return(A<<b|A>>>32-b)+m}function l(p,m,h,y,g,b,x){var A=p+(m&y|h&~y)+g+x;return(A<<b|A>>>32-b)+m}function d(p,m,h,y,g,b,x){var A=p+(m^h^y)+g+x;return(A<<b|A>>>32-b)+m}function f(p,m,h,y,g,b,x){var A=p+(h^(m|~y))+g+x;return(A<<b|A>>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var Bz=_((a4,lBe)=>{(function(t,e){typeof a4=="object"?lBe.exports=a4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(a4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],p=l[2],m=l[3],h=l[4],y=0;y<80;y++){if(y<16)a[y]=c[u+y]|0;else{var g=a[y-3]^a[y-8]^a[y-14]^a[y-16];a[y]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[y];y<20?b+=(f&p|~f&m)+1518500249:y<40?b+=(f^p^m)+1859775393:y<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var c4=_((o4,dBe)=>{(function(t,e){typeof o4=="object"?dBe.exports=o4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(o4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var y=e.sqrt(h),g=2;g<=y;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],y=p[2],g=p[3],b=p[4],x=p[5],A=p[6],S=p[7],I=0;I<64;I++){if(I<16)u[I]=d[f+I]|0;else{var R=u[I-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[I-2],k=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[I]=w+u[I-7]+k+u[I-16]}var B=b&x^~b&A,M=m&h^m&y^h&y,D=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),L=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=S+L+B+c[I]+u[I],W=D+M;S=A,A=x,x=b,b=g+Z|0,g=y,y=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+y|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+x|0,p[6]=p[6]+A|0,p[7]=p[7]+S|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),t.SHA256})});var pBe=_((u4,fBe)=>{(function(t,e,r){typeof u4=="object"?fBe.exports=u4=e(Ar(),c4()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(u4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var Lz=_((l4,mBe)=>{(function(t,e,r){typeof l4=="object"?mBe.exports=l4=e(Ar(),OI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(l4,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,p){for(var m=this._hash.words,h=m[0],y=m[1],g=m[2],b=m[3],x=m[4],A=m[5],S=m[6],I=m[7],R=h.high,w=h.low,N=y.high,k=y.low,B=g.high,M=g.low,D=b.high,L=b.low,Z=x.high,W=x.low,U=A.high,z=A.low,j=S.high,J=S.low,se=I.high,oe=I.low,ue=R,Te=w,Ne=N,je=k,Fe=B,ve=M,F=D,G=L,K=Z,q=W,Q=U,ee=z,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var me,Oe,Pe=l[ce];if(ce<16)Oe=Pe.high=f[p+ce*2]|0,me=Pe.low=f[p+ce*2+1]|0;else{var qe=l[ce-15],Ye=qe.high,Je=qe.low,et=(Ye>>>1|Je<<31)^(Ye>>>8|Je<<24)^Ye>>>7,st=(Je>>>1|Ye<<31)^(Je>>>8|Ye<<24)^(Je>>>7|Ye<<25),ut=l[ce-2],rt=ut.high,Pt=ut.low,dt=(rt>>>19|Pt<<13)^(rt<<3|Pt>>>29)^rt>>>6,Be=(Pt>>>19|rt<<13)^(Pt<<3|rt>>>29)^(Pt>>>6|rt<<26),Xe=l[ce-7],pt=Xe.high,nt=Xe.low,_t=l[ce-16],yn=_t.high,It=_t.low;me=st+nt,Oe=et+pt+(me>>>0<st>>>0?1:0),me=me+Be,Oe=Oe+dt+(me>>>0<Be>>>0?1:0),me=me+It,Oe=Oe+yn+(me>>>0<It>>>0?1:0),Pe.high=Oe,Pe.low=me}var wr=K&Q^~K&ne,js=q&ee^~q&re,Lr=ue&Ne^ue&Fe^Ne&Fe,Qs=Te&je^Te&ve^je&ve,Hs=(ue>>>28|Te<<4)^(ue<<30|Te>>>2)^(ue<<25|Te>>>7),bs=(Te>>>28|ue<<4)^(Te<<30|ue>>>2)^(Te<<25|ue>>>7),Gs=(K>>>14|q<<18)^(K>>>18|q<<14)^(K<<23|q>>>9),Ku=(q>>>14|K<<18)^(q>>>18|K<<14)^(q<<23|K>>>9),Co=u[ce],Hc=Co.high,La=Co.low,An=ie+Ku,Ma=X+Gs+(An>>>0<ie>>>0?1:0),An=An+js,Ma=Ma+wr+(An>>>0<js>>>0?1:0),An=An+La,Ma=Ma+Hc+(An>>>0<La>>>0?1:0),An=An+me,Ma=Ma+Oe+(An>>>0<me>>>0?1:0),Ed=bs+Qs,To=Hs+Lr+(Ed>>>0<bs>>>0?1:0);X=ne,ie=re,ne=Q,re=ee,Q=K,ee=q,q=G+An|0,K=F+Ma+(q>>>0<G>>>0?1:0)|0,F=Fe,G=ve,Fe=Ne,ve=je,Ne=ue,je=Te,Te=An+Ed|0,ue=Ma+To+(Te>>>0<An>>>0?1:0)|0}w=h.low=w+Te,h.high=R+ue+(w>>>0<Te>>>0?1:0),k=y.low=k+je,y.high=N+Ne+(k>>>0<je>>>0?1:0),M=g.low=M+ve,g.high=B+Fe+(M>>>0<ve>>>0?1:0),L=b.low=L+G,b.high=D+F+(L>>>0<G>>>0?1:0),W=x.low=W+q,x.high=Z+K+(W>>>0<q>>>0?1:0),z=A.low=z+ee,A.high=U+Q+(z>>>0<ee>>>0?1:0),J=S.low=J+re,S.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 y=this._hash.toX32();return y},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var gBe=_((d4,hBe)=>{(function(t,e,r){typeof d4=="object"?hBe.exports=d4=e(Ar(),OI(),Lz()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})(d4,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var ABe=_((f4,yBe)=>{(function(t,e,r){typeof f4=="object"?yBe.exports=f4=e(Ar(),OI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(f4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,y=0;y<24;y++){u[m+5*h]=(y+1)*(y+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var x=1,A=0;A<24;A++){for(var S=0,I=0,R=0;R<7;R++){if(x&1){var w=(1<<R)-1;w<32?I^=1<<w:S^=1<<w-32}x&128?x=x<<1^113:x<<=1}d[A]=o.create(S,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 y=this._state,g=this.blockSize/2,b=0;b<g;b++){var x=m[h+2*b],A=m[h+2*b+1];x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360,A=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360;var S=y[b];S.high^=A,S.low^=x}for(var I=0;I<24;I++){for(var R=0;R<5;R++){for(var w=0,N=0,k=0;k<5;k++){var S=y[R+5*k];w^=S.high,N^=S.low}var B=f[R];B.high=w,B.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],D=f[(R+1)%5],L=D.high,Z=D.low,w=M.high^(L<<1|Z>>>31),N=M.low^(Z<<1|L>>>31),k=0;k<5;k++){var S=y[R+5*k];S.high^=w,S.low^=N}for(var W=1;W<25;W++){var w,N,S=y[W],U=S.high,z=S.low,j=u[W];j<32?(w=U<<j|z>>>32-j,N=z<<j|U>>>32-j):(w=z<<j-32|U>>>64-j,N=U<<j-32|z>>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=y[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var k=0;k<5;k++){var W=R+5*k,S=y[W],ue=f[W],Te=f[(R+1)%5+5*k],Ne=f[(R+2)%5+5*k];S.high=ue.high^~Te.high&Ne.high,S.low=ue.low^~Te.low&Ne.low}var S=y[0],je=d[I];S.high^=je.high,S.low^=je.low}},_doFinalize:function(){var m=this._data,h=m.words,y=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var x=this._state,A=this.cfg.outputLength/8,S=A/8,I=[],R=0;R<S;R++){var w=x[R],N=w.high,k=w.low;N=(N<<8|N>>>24)&16711935|(N<<24|N>>>8)&4278255360,k=(k<<8|k>>>24)&16711935|(k<<24|k>>>8)&4278255360,I.push(k),I.push(N)}return new s.init(I,A)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),y=0;y<25;y++)h[y]=h[y].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var bBe=_((p4,xBe)=>{(function(t,e){typeof p4=="object"?xBe.exports=p4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(p4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(A,S){for(var I=0;I<16;I++){var R=S+I,w=A[R];A[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,k=d.words,B=f.words,M=o.words,D=c.words,L=u.words,Z=l.words,W,U,z,j,J,se,oe,ue,Te,Ne;se=W=N[0],oe=U=N[1],ue=z=N[2],Te=j=N[3],Ne=J=N[4];for(var je,I=0;I<80;I+=1)je=W+A[S+M[I]]|0,I<16?je+=m(U,z,j)+k[0]:I<32?je+=h(U,z,j)+k[1]:I<48?je+=y(U,z,j)+k[2]:I<64?je+=g(U,z,j)+k[3]:je+=b(U,z,j)+k[4],je=je|0,je=x(je,L[I]),je=je+J|0,W=J,J=j,j=x(z,10),z=U,U=je,je=se+A[S+D[I]]|0,I<16?je+=b(oe,ue,Te)+B[0]:I<32?je+=g(oe,ue,Te)+B[1]:I<48?je+=y(oe,ue,Te)+B[2]:I<64?je+=h(oe,ue,Te)+B[3]:je+=m(oe,ue,Te)+B[4],je=je|0,je=x(je,Z[I]),je=je+Ne|0,se=Ne,Ne=Te,Te=x(ue,10),ue=oe,oe=je;je=N[1]+z+Te|0,N[1]=N[2]+j+Ne|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+U+ue|0,N[0]=je},_doFinalize:function(){var A=this._data,S=A.words,I=this._nDataBytes*8,R=A.sigBytes*8;S[R>>>5]|=128<<24-R%32,S[(R+64>>>9<<4)+14]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360,A.sigBytes=(S.length+1)*4,this._process();for(var w=this._hash,N=w.words,k=0;k<5;k++){var B=N[k];N[k]=(B<<8|B>>>24)&16711935|(B<<24|B>>>8)&4278255360}return w},clone:function(){var A=i.clone.call(this);return A._hash=this._hash.clone(),A}});function m(A,S,I){return A^S^I}function h(A,S,I){return A&S|~A&I}function y(A,S,I){return(A|~S)^I}function g(A,S,I){return A&I|S&~I}function b(A,S,I){return A^(S|~I)}function x(A,S){return A<<S|A>>>32-S}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var h4=_((m4,_Be)=>{(function(t,e){typeof m4=="object"?_Be.exports=m4=e(Ar()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(m4,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),p=this._iKey=u.clone(),m=f.words,h=p.words,y=0;y<l;y++)m[y]^=1549556828,h[y]^=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 vBe=_((g4,EBe)=>{(function(t,e,r){typeof g4=="object"?EBe.exports=g4=e(Ar(),c4(),h4()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(g4,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),p=s.create(),m=s.create([1]),h=p.words,y=m.words,g=d.keySize,b=d.iterations;h.length<g;){var x=f.update(l).finalize(m);f.reset();for(var A=x.words,S=A.length,I=x,R=1;R<b;R++){I=f.finalize(I),f.reset();for(var w=I.words,N=0;N<S;N++)A[N]^=w[N]}p.concat(x),y[0]++}return p.sigBytes=g*4,p}});e.PBKDF2=function(u,l,d){return c.create(d).compute(u,l)}}(),t.PBKDF2})});var mf=_((y4,SBe)=>{(function(t,e,r){typeof y4=="object"?SBe.exports=y4=e(Ar(),Bz(),h4()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(y4,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),p=s.create(),m=p.words,h=d.keySize,y=d.iterations;m.length<h;){l&&f.update(l),l=f.update(c).finalize(u),f.reset();for(var g=1;g<y;g++)l=f.finalize(l),f.reset();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 Ps=_((A4,IBe)=>{(function(t,e,r){typeof A4=="object"?IBe.exports=A4=e(Ar(),mf()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(A4,function(t){t.lib.Cipher||function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(B,M){return this.create(this._ENC_XFORM_MODE,B,M)},createDecryptor:function(B,M){return this.create(this._DEC_XFORM_MODE,B,M)},init:function(B,M,D){this.cfg=this.cfg.extend(D),this._xformMode=B,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(B){return this._append(B),this._process()},finalize:function(B){B&&this._append(B);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function B(M){return typeof M=="string"?k:R}return function(M){return{encrypt:function(D,L,Z){return B(L).encrypt(M,D,L,Z)},decrypt:function(D,L,Z){return B(L).decrypt(M,D,L,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var B=this._process(!0);return B},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(B,M){return this.Encryptor.create(B,M)},createDecryptor:function(B,M){return this.Decryptor.create(B,M)},init:function(B,M){this._cipher=B,this._iv=M}}),y=m.CBC=function(){var B=h.extend();B.Encryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize;M.call(this,D,L,W),Z.encryptBlock(D,L),this._prevBlock=D.slice(L,L+W)}}),B.Decryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize,U=D.slice(L,L+W);Z.decryptBlock(D,L),M.call(this,D,L,W),this._prevBlock=U}});function M(D,L,Z){var W,U=this._iv;U?(W=U,this._iv=e):W=this._prevBlock;for(var z=0;z<Z;z++)D[L+z]^=W[z]}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=[],U=0;U<L;U+=4)W.push(Z);var z=i.create(W,L);B.concat(z)},unpad:function(B){var M=B.words[B.sigBytes-1>>>2]&255;B.sigBytes-=M}},x=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:y,padding:b}),reset:function(){var B;f.reset.call(this);var M=this.cfg,D=M.iv,L=M.mode;this._xformMode==this._ENC_XFORM_MODE?B=L.createEncryptor:(B=L.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==B?this._mode.init(this,D&&D.words):(this._mode=B.call(L,this,D&&D.words),this._mode.__creator=B)},_doProcessBlock:function(B,M){this._mode.processBlock(B,M)},_doFinalize:function(){var B,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),B=this._process(!0)):(B=this._process(!0),M.unpad(B)),B},blockSize:128/32}),A=n.CipherParams=s.extend({init:function(B){this.mixIn(B)},toString:function(B){return(B||this.formatter).stringify(this)}}),S=r.format={},I=S.OpenSSL={stringify:function(B){var M,D=B.ciphertext,L=B.salt;return L?M=i.create([1398893684,1701076831]).concat(L).concat(D):M=D,M.toString(u)},parse:function(B){var M,D=u.parse(B),L=D.words;return L[0]==1398893684&&L[1]==1701076831&&(M=i.create(L.slice(2,4)),L.splice(0,4),D.sigBytes-=16),A.create({ciphertext:D,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:I}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=B.createEncryptor(D,L),W=Z.finalize(M),U=Z.cfg;return A.create({ciphertext:W,key:D,iv:U.iv,algorithm:B,mode:U.mode,padding:U.padding,blockSize:B.blockSize,formatter:L.format})},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=B.createDecryptor(D,L).finalize(M.ciphertext);return Z},_parse:function(B,M){return typeof B=="string"?M.parse(B,this):B}}),w=r.kdf={},N=w.OpenSSL={execute:function(B,M,D,L,Z){if(L||(L=i.random(64/8)),Z)var W=d.create({keySize:M+D,hasher:Z}).compute(B,L);else var W=d.create({keySize:M+D}).compute(B,L);var U=i.create(W.words.slice(M),D*4);return W.sigBytes=M*4,A.create({key:W,iv:U,salt:L})}},k=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=L.kdf.execute(D,B.keySize,B.ivSize,L.salt,L.hasher);L.iv=Z.iv;var W=R.encrypt.call(this,B,M,Z.key,L);return W.mixIn(Z),W},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=L.kdf.execute(D,B.keySize,B.ivSize,M.salt,L.hasher);L.iv=Z.iv;var W=R.decrypt.call(this,B,M,Z.key,L);return W}})}()})});var TBe=_((x4,CBe)=>{(function(t,e,r){typeof x4=="object"?CBe.exports=x4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(x4,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),e.Decryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u<i;u++)n[s+u]^=o[u]}return e}(),t.mode.CFB})});var RBe=_((b4,wBe)=>{(function(t,e,r){typeof b4=="object"?wBe.exports=b4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(b4,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l<a;l++)n[s+l]^=u[l]}});return e.Decryptor=r,e}(),t.mode.CTR})});var OBe=_((_4,NBe)=>{(function(t,e,r){typeof _4=="object"?NBe.exports=_4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(_4,function(t){return t.mode.CTRGladman=function(){var e=t.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=e.Encryptor=e.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f<c;f++)i[a+f]^=d[f]}});return e.Decryptor=s,e}(),t.mode.CTRGladman})});var PBe=_((E4,kBe)=>{(function(t,e,r){typeof E4=="object"?kBe.exports=E4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(E4,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u<a;u++)n[s+u]^=c[u]}});return e.Decryptor=r,e}(),t.mode.OFB})});var BBe=_((v4,DBe)=>{(function(t,e,r){typeof v4=="object"?DBe.exports=v4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(v4,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var MBe=_((S4,LBe)=>{(function(t,e,r){typeof S4=="object"?LBe.exports=S4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(S4,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var $Be=_((I4,WBe)=>{(function(t,e,r){typeof I4=="object"?WBe.exports=I4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(I4,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var FBe=_((C4,UBe)=>{(function(t,e,r){typeof C4=="object"?UBe.exports=C4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(C4,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var jBe=_((T4,qBe)=>{(function(t,e,r){typeof T4=="object"?qBe.exports=T4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(T4,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var HBe=_((w4,QBe)=>{(function(t,e,r){typeof w4=="object"?QBe.exports=w4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(w4,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var zBe=_((R4,GBe)=>{(function(t,e,r){typeof R4=="object"?GBe.exports=R4=e(Ar(),Ps()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(R4,function(t){return function(e){var r=t,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),t.format.Hex})});var VBe=_((N4,KBe)=>{(function(t,e,r){typeof N4=="object"?KBe.exports=N4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(N4,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var x=0,A=0,b=0;b<256;b++){var S=A^A<<1^A<<2^A<<3^A<<4;S=S>>>8^S&255^99,i[x]=S,a[S]=x;var I=g[x],R=g[I],w=g[R],N=g[S]*257^S*16843008;o[x]=N<<24|N>>>8,c[x]=N<<16|N>>>16,u[x]=N<<8|N>>>24,l[x]=N;var N=w*16843009^R*65537^I*257^x*16843008;d[S]=N<<24|N>>>8,f[S]=N<<16|N>>>16,p[S]=N<<8|N>>>24,m[S]=N,x?(x=I^g[g[g[w^I]]],A^=g[g[A]]):x=A=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],y=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,x=b.words,A=b.sigBytes/4,S=this._nRounds=A+6,I=(S+1)*4,R=this._keySchedule=[],w=0;w<I;w++)w<A?R[w]=x[w]:(g=R[w-1],w%A?A>6&&w%A==4&&(g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255]):(g=g<<8|g>>>24,g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255],g^=h[w/A|0]<<24),R[w]=R[w-A]^g);for(var N=this._invKeySchedule=[],k=0;k<I;k++){var w=I-k;if(k%4)var g=R[w];else var g=R[w-4];k<4||w<=4?N[k]=g:N[k]=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 x=g[b+1];g[b+1]=g[b+3],g[b+3]=x,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var x=g[b+1];g[b+1]=g[b+3],g[b+3]=x},_doCryptBlock:function(g,b,x,A,S,I,R,w){for(var N=this._nRounds,k=g[b]^x[0],B=g[b+1]^x[1],M=g[b+2]^x[2],D=g[b+3]^x[3],L=4,Z=1;Z<N;Z++){var W=A[k>>>24]^S[B>>>16&255]^I[M>>>8&255]^R[D&255]^x[L++],U=A[B>>>24]^S[M>>>16&255]^I[D>>>8&255]^R[k&255]^x[L++],z=A[M>>>24]^S[D>>>16&255]^I[k>>>8&255]^R[B&255]^x[L++],j=A[D>>>24]^S[k>>>16&255]^I[B>>>8&255]^R[M&255]^x[L++];k=W,B=U,M=z,D=j}var W=(w[k>>>24]<<24|w[B>>>16&255]<<16|w[M>>>8&255]<<8|w[D&255])^x[L++],U=(w[B>>>24]<<24|w[M>>>16&255]<<16|w[D>>>8&255]<<8|w[k&255])^x[L++],z=(w[M>>>24]<<24|w[D>>>16&255]<<16|w[k>>>8&255]<<8|w[B&255])^x[L++],j=(w[D>>>24]<<24|w[k>>>16&255]<<16|w[B>>>8&255]<<8|w[M&255])^x[L++];g[b]=W,g[b+1]=U,g[b+2]=z,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(y)}(),t.AES})});var JBe=_((O4,YBe)=>{(function(t,e,r){typeof O4=="object"?YBe.exports=O4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(O4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var h=this._key,y=h.words,g=[],b=0;b<56;b++){var x=a[b]-1;g[b]=y[x>>>5]>>>31-x%32&1}for(var A=this._subKeys=[],S=0;S<16;S++){for(var I=A[S]=[],R=c[S],b=0;b<24;b++)I[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,I[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;I[0]=I[0]<<1|I[0]>>>31;for(var b=1;b<7;b++)I[b]=I[b]>>>(b-1)*4+3;I[7]=I[7]<<5|I[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=A[15-b]},encryptBlock:function(h,y){this._doCryptBlock(h,y,this._subKeys)},decryptBlock:function(h,y){this._doCryptBlock(h,y,this._invSubKeys)},_doCryptBlock:function(h,y,g){this._lBlock=h[y],this._rBlock=h[y+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var b=0;b<16;b++){for(var x=g[b],A=this._lBlock,S=this._rBlock,I=0,R=0;R<8;R++)I|=u[R][((S^x[R])&l[R])>>>0];this._lBlock=S,this._rBlock=A^I}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),h[y]=this._lBlock,h[y+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,y){var g=(this._lBlock>>>h^this._rBlock)&y;this._rBlock^=g,this._lBlock^=g<<h}function p(h,y){var g=(this._rBlock>>>h^this._lBlock)&y;this._lBlock^=g,this._rBlock^=g<<h}e.DES=s._createHelper(d);var m=i.TripleDES=s.extend({_doReset:function(){var h=this._key,y=h.words;if(y.length!==2&&y.length!==4&&y.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var g=y.slice(0,2),b=y.length<4?y.slice(0,2):y.slice(2,4),x=y.length<6?y.slice(0,2):y.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(x))},encryptBlock:function(h,y){this._des1.encryptBlock(h,y),this._des2.decryptBlock(h,y),this._des3.encryptBlock(h,y)},decryptBlock:function(h,y){this._des3.decryptBlock(h,y),this._des2.encryptBlock(h,y),this._des1.decryptBlock(h,y)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var ZBe=_((k4,XBe)=>{(function(t,e,r){typeof k4=="object"?XBe.exports=k4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(k4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var y=d[f];d[f]=d[p],d[p]=y}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var tLe=_((P4,eLe)=>{(function(t,e,r){typeof P4=="object"?eLe.exports=P4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(P4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var p=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],m=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)m[f]^=p[f+4&7];if(d){var h=d.words,y=h[0],g=h[1],b=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=b>>>16|x&4294901760,S=x<<16|b&65535;m[0]^=b,m[1]^=A,m[2]^=x,m[3]^=S,m[4]^=b,m[5]^=A,m[6]^=x,m[7]^=S;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0<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,y=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var nLe=_((D4,rLe)=>{(function(t,e,r){typeof D4=="object"?rLe.exports=D4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(D4,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,y=h[0],g=h[1],b=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=b>>>16|x&4294901760,S=x<<16|b&65535;p[0]^=b,p[1]^=A,p[2]^=x,p[3]^=S,p[4]^=b,p[5]^=A,p[6]^=x,p[7]^=S;for(var m=0;m<4;m++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0<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,y=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var iLe=_((B4,sLe)=>{(function(t,e,r){typeof B4=="object"?sLe.exports=B4=e(Ar(),k0(),P0(),mf(),Ps()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(B4,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(m,h){let y=h>>24&255,g=h>>16&255,b=h>>8&255,x=h&255,A=m.sbox[0][y]+m.sbox[1][g];return A=A^m.sbox[2][b],A=A+m.sbox[3][x],A}function l(m,h,y){let g=h,b=y,x;for(let A=0;A<i;++A)g=g^m.pbox[A],b=u(m,g)^b,x=g,g=b,b=x;return x=g,g=b,b=x,b=b^m.pbox[i],g=g^m.pbox[i+1],{left:g,right:b}}function d(m,h,y){let g=h,b=y,x;for(let A=i+1;A>1;--A)g=g^m.pbox[A],b=u(m,g)^b,x=g,g=b,b=x;return x=g,g=b,b=x,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,y){for(let S=0;S<4;S++){m.sbox[S]=[];for(let I=0;I<256;I++)m.sbox[S][I]=o[S][I]}let g=0;for(let S=0;S<i+2;S++)m.pbox[S]=a[S]^h[g],g++,g>=y&&(g=0);let b=0,x=0,A=0;for(let S=0;S<i+2;S+=2)A=l(m,b,x),b=A.left,x=A.right,m.pbox[S]=b,m.pbox[S+1]=x;for(let S=0;S<4;S++)for(let I=0;I<256;I+=2)A=l(m,b,x),b=A.left,x=A.right,m.sbox[S][I]=b,m.sbox[S][I+1]=x;return!0}var p=s.Blowfish=n.extend({_doReset:function(){if(this._keyPriorReset!==this._key){var m=this._keyPriorReset=this._key,h=m.words,y=m.sigBytes/4;f(c,h,y)}},encryptBlock:function(m,h){var y=l(c,m[h],m[h+1]);m[h]=y.left,m[h+1]=y.right},decryptBlock:function(m,h){var y=d(c,m[h],m[h+1]);m[h]=y.left,m[h+1]=y.right},blockSize:64/32,keySize:128/32,ivSize:64/32});e.Blowfish=n._createHelper(p)}(),t.Blowfish})});var Xn=_((L4,aLe)=>{(function(t,e,r){typeof L4=="object"?aLe.exports=L4=e(Ar(),OI(),nBe(),iBe(),k0(),cBe(),P0(),Bz(),c4(),pBe(),Lz(),gBe(),ABe(),bBe(),h4(),vBe(),mf(),Ps(),TBe(),RBe(),OBe(),PBe(),BBe(),MBe(),$Be(),FBe(),jBe(),HBe(),zBe(),VBe(),JBe(),ZBe(),tLe(),nLe(),iLe()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],e):t.CryptoJS=e(t.CryptoJS)})(L4,function(t){return t})});var DI=_(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.getOptions=ur.setOptions=ur.hasOwnProp=ur.formatDate=ur.camelify=ur.splitByCommaWithPreservingQuotes=ur.trim=ur.splitAt=ur.tryCatch=ur.byteSequenceToHex=ur.hexToByteSequence=ur.toNumber=ur.INVALIDPLAYLIST=ur.CONDITIONALPARAMCHECK=ur.PARAMCHECK=ur.CONDITIONALASSERT=ur.ASSERT=ur.THROW=void 0;var PI={};function Zh(t){if(!PI.strictMode){PI.silent||console.error(t.message);return}throw t}ur.THROW=Zh;function _rr(t,...e){for(let[r,n]of e.entries())n||Zh(new Error(`${t} : Failed at [${r}]`))}ur.ASSERT=_rr;function Err(...t){for(let[e,[r,n]]of t.entries())r&&(n||Zh(new Error(`Conditional Assert : Failed at [${e}]`)))}ur.CONDITIONALASSERT=Err;function vrr(...t){for(let[e,r]of t.entries())r===void 0&&Zh(new Error(`Param Check : Failed at [${e}]`))}ur.PARAMCHECK=vrr;function Srr(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Zh(new Error(`Conditional Param Check : Failed at [${e}]`))}ur.CONDITIONALPARAMCHECK=Srr;function Irr(t){Zh(new Error(`Invalid Playlist : ${t}`))}ur.INVALIDPLAYLIST=Irr;function lLe(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}ur.toNumber=lLe;function Crr(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r<t.length;r+=2)e.push(lLe(t.slice(r,r+2),16));return Buffer.from(e)}ur.hexToByteSequence=Crr;function Trr(t,e=0,r=t.length){r<=e&&Zh(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("")}`}ur.byteSequenceToHex=Trr;function wrr(t,e){try{return t()}catch(r){return e(r)}}ur.tryCatch=wrr;function Rrr(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]}ur.splitAt=Rrr;function Nrr(t,e=" "){return!t||(t=t.trim(),e===" ")||(t.startsWith(e)&&(t=t.slice(1)),t.endsWith(e)&&(t=t.slice(0,-1))),t}ur.trim=Nrr;function Orr(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}ur.splitByCommaWithPreservingQuotes=Orr;function krr(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("")}ur.camelify=krr;function Prr(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`}ur.formatDate=Prr;function Drr(t,e){return Object.hasOwnProperty.call(t,e)}ur.hasOwnProp=Drr;function Brr(t={}){PI=Object.assign(PI,t)}ur.setOptions=Brr;function Lrr(){return Object.assign({},PI)}ur.getOptions=Lrr});var Jz=_(xr=>{"use strict";var Mrr=xr&&xr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Wrr=xr&&xr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$rr=xr&&xr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Mrr(e,t,r);return Wrr(e,t),e};Object.defineProperty(xr,"__esModule",{value:!0});xr.RenditionReport=xr.PrefetchSegment=xr.PartialSegment=xr.Segment=xr.MediaPlaylist=xr.MasterPlaylist=xr.Playlist=xr.SpliceInfo=xr.DateRange=xr.MediaInitializationSection=xr.Key=xr.SessionData=xr.Variant=xr.Rendition=void 0;var vs=$rr(DI()),Wz=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){vs.PARAMCHECK(e,n,a),vs.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};xr.Rendition=Wz;var $z=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:y=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){vs.PARAMCHECK(e,n),this.uri=e,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=p,this.audio=m,this.video=h,this.subtitles=y,this.closedCaptions=g,this.currentRenditions=b}};xr.Variant=$z;var Uz=class{constructor({id:e,value:r,uri:n,language:s}){vs.PARAMCHECK(e,r||n),vs.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};xr.SessionData=Uz;var Fz=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([e!=="NONE",r]),vs.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};xr.Key=Fz;var qz=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){vs.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};xr.MediaInitializationSection=qz;var jz=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([o===!0,r]),vs.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};xr.DateRange=jz;var Qz=class{constructor({type:e,duration:r,tagName:n,value:s}){vs.PARAMCHECK(e),vs.CONDITIONALPARAMCHECK([e==="OUT",r]),vs.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};xr.SpliceInfo=Qz;var bb=class{constructor(e){vs.PARAMCHECK(e),this.type=e}},BI=class extends bb{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),vs.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};xr.Playlist=BI;var Hz=class extends BI{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};xr.MasterPlaylist=Hz;var Gz=class extends BI{constructor(e={}){super({...e,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:p=0,hash:m}=e;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=p,this.hash=m}};xr.MediaPlaylist=Gz;var zz=class extends bb{constructor({uri:e,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=p,this.markers=m,this.parts=h}};xr.Segment=zz;var Kz=class extends bb{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),vs.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};xr.PartialSegment=Kz;var Vz=class extends bb{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),vs.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};xr.PrefetchSegment=Vz;var Yz=class{constructor({uri:e,lastMSN:r,lastPart:n}){vs.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};xr.RenditionReport=Yz});var ALe=_(hf=>{"use strict";var Urr=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Frr=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qrr=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Urr(e,t,r);return Frr(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var $e=qrr(DI()),ri=Jz();function gLe(t){return $e.trim(t,'"')}function jrr(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function Qrr(t){let e=$e.splitAt(t,",");return{duration:$e.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function yLe(t){let e=$e.splitAt(t,"@");return{length:$e.toNumber(e[0]),offset:e[1]?$e.toNumber(e[1]):-1}}function Hrr(t){let e=$e.splitAt(t,"x");return{width:$e.toNumber(e[0]),height:$e.toNumber(e[1])}}function Grr(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&$e.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=$e.splitAt(s,":");if(!i||!a){$e.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function zrr(t){let e=$e.hexToByteSequence(t);return e.length!==16&&$e.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function Krr(t){return t.startsWith('"')?gLe(t):t.startsWith("0x")||t.startsWith("0X")?$e.hexToByteSequence(t):$e.toNumber(t)}function Xz(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function dLe(t){let e={};for(let r of $e.splitByCommaWithPreservingQuotes(t)){let[n,s]=$e.splitAt(r,"="),i=gLe(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=zrr(i);break;case"BYTERANGE":e[n]=yLe(i);break;case"RESOLUTION":e[n]=Hrr(i);break;case"ALLOWED-CPC":e[n]=Grr(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[n]=$e.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=$e.hexToByteSequence(i):n.startsWith("X-")?e[n]=Krr(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&$e.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function Vrr(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[$e.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,dLe(e)]:[$e.toNumber(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,dLe(e)];case"EXTINF":return[Qrr(e),null];case"EXT-X-BYTERANGE":return[yLe(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function fLe(){$e.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function Yrr(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function Jrr({attributes:t}){return new ri.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function Xrr(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function Zrr(t,e,r){let n=Jrr(e),s=t[$e.camelify(r)],i=Xrr(s,n);i&&$e.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[$e.camelify(r)]=s.length-1)}function enr(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[$e.camelify(n)].some(s=>s.groupId===t[n])&&$e.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function pLe(t,e,r,n,s){let i=new ri.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&$e.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(Zrr(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return enr(e,i,s),i.isIFrameOnly=n,i}function tnr(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;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 rnr(t,e){let r=new ri.MasterPlaylist,n=!1;for(let[s,{name:i,value:a,attributes:o}]of t.entries())if(i==="EXT-X-VERSION")r.version=a;else if(i==="EXT-X-STREAM-INF"){let c=t[s+1];(typeof c!="string"||c.startsWith("#EXT"))&&$e.INVALIDPLAYLIST("EXT-X-STREAM-INF must be followed by a URI line");let u=pLe(t,o,c,!1,e);u&&(typeof u.score=="number"&&(n=!0,u.score<0&&$e.INVALIDPLAYLIST("SCORE attribute on EXT-X-STREAM-INF must be positive decimal-floating-point number.")),r.variants.push(u))}else if(i==="EXT-X-I-FRAME-STREAM-INF"){let c=pLe(t,o,o.URI,!0,e);c&&r.variants.push(c)}else if(i==="EXT-X-SESSION-DATA"){let c=new ri.SessionData({id:o["DATA-ID"],value:o.VALUE,uri:o.URI,language:o.LANGUAGE});r.sessionDataList.some(u=>u.id===c.id&&u.language===c.language)&&$e.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&$e.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ri.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>tnr(u,c))&&$e.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),Xz(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&$e.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&$e.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&$e.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&$e.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function mLe(t,e,r,n,s,i,a){let o=new ri.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&$e.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),Xz(a,p),o.key=new ri.Key({method:p.METHOD,uri:p.URI,iv:p.IV,format:p.KEYFORMAT,formatVersion:p.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new ri.MediaInitializationSection({uri:p.URI,byterange:p.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ri.DateRange({id:p.ID,classId:p.CLASS,start:p["START-DATE"],end:p["END-DATE"],duration:p.DURATION,plannedDuration:p["PLANNED-DURATION"],endOnNext:p["END-ON-NEXT"],attributes:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ri.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ri.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new ri.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)$e.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)$e.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!p.URI)$e.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&$e.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new ri.MediaInitializationSection({hint:!0,uri:p.URI,byterange:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"){d==="EXT-X-PART"&&!p.DURATION&&$e.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ri.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:p.URI,byterange:d==="EXT-X-PART"?p.BYTERANGE:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0},duration:p.DURATION,independent:p.INDEPENDENT,gap:p.GAP});o.parts.push(m)}}return o}function nnr(t,e,r,n,s,i,a){let o=new ri.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?$e.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?$e.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(Xz(a,l),o.key=new ri.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&$e.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function snr(t,e){let r=new ri.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:y}=f;if(y==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:$e.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&$e.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(p==="EXT-X-START")r.start&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&$e.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||$e.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||$e.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ri.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||$e.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=nnr(t,m,n===-1?d:n,d-1,s++,o,e);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&$e.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||$e.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&$e.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=mLe(t,f,n,d-1,s++,o,e);g&&([o,c,u]=hLe(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=mLe(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&$e.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),hLe(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return inr(r.segments),r.lowLatencyCompatibility&&anr(r,l),r}function hLe(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:$e.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else $e.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function inr(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&$e.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&$e.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start<l)&&$e.INVALIDPLAYLIST("DATERANGE tags with the same CLASS should not overlap");d.push({start:c,end:l})}else o.classId&&r.set(o.classId,[{start:c,end:l}])}}n&&!s&&$e.INVALIDPLAYLIST("If a Playlist contains an EXT-X-DATERANGE tag, it MUST also contain at least one EXT-X-PROGRAM-DATE-TIME tag.")}function anr({lowLatencyCompatibility:t,targetDuration:e,partTargetDuration:r,segments:n,renditionReports:s},i){let{canSkipUntil:a,holdBack:o,partHoldBack:c}=t;if(a<e*6&&$e.INVALIDPLAYLIST("The Skip Boundary must be at least six times the EXT-X-TARGETDURATION."),o<e*3&&$e.INVALIDPLAYLIST("HOLD-BACK must be at least three times the EXT-X-TARGETDURATION."),i){r===void 0&&$e.INVALIDPLAYLIST("EXT-X-PART-INF is required if a Playlist contains one or more EXT-X-PART tags"),c===void 0&&$e.INVALIDPLAYLIST("EXT-X-PART: PART-HOLD-BACK attribute is mandatory"),c<r&&$e.INVALIDPLAYLIST("PART-HOLD-BACK must be at least PART-TARGET");for(let[u,{parts:l}]of n.entries()){l.length>0&&u<n.length-3&&$e.INVALIDPLAYLIST("Remove EXT-X-PART tags from the Playlist after they are greater than three target durations from the end of the Playlist.");for(let[d,{duration:f}]of l.entries())f!==void 0&&(f>r&&$e.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d<l.length-1&&f<r*.85&&$e.INVALIDPLAYLIST("All Partial Segments except the last part of a segment must have a duration of at least 85% of PART-TARGET"))}}for(let u of s){let l=n.at(-1);(u.lastMSN===null||u.lastMSN===void 0)&&(u.lastMSN=l.mediaSequenceNumber),(u.lastPart===null||u.lastPart===void 0)&&l.parts.length>0&&(u.lastPart=l.parts.length-1)}}function onr(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&fLe();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&fLe()}}function cnr(t,e){let[r,n]=Yrr(t),s=jrr(r);if(onr(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&$e.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=Vrr(r,n);return{name:r,category:s,value:i,attributes:a}}function unr(t,e){let r=[];for(let n of t.split(`
|
|
`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=cnr(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&$e.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function lnr(t,e){let r;return e.isMasterPlaylist?r=rnr(t,e):(r=snr(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version<e.compatibleVersion)&&$e.INVALIDPLAYLIST(`EXT-X-VERSION needs to be ${e.compatibleVersion} or higher.`),r}function dnr(t){let e={version:void 0,isMasterPlaylist:void 0,hasMap:!1,targetDuration:0,compatibleVersion:1,isClosedCaptionsNone:!1,hash:{}},r=unr(t,e),n=lnr(r,e);return n.source=t,n}hf.default=dnr});var bLe=_(gf=>{"use strict";var fnr=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),pnr=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),mnr=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&fnr(e,t,r);return pnr(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var bu=mnr(DI()),hnr=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],gnr=["#EXT-X-MEDIA"],Zz=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(hnr.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(gnr.some(n=>r.startsWith(n)))continue;bu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function eK(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function ynr(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function Anr(t,e){for(let r of e.sessionDataList)t.push(xnr(r));for(let r of e.sessionKeyList)t.push(xLe(r,!0));for(let r of e.variants)bnr(t,r)}function xnr(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function xLe(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&bu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${bu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function bnr(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${eK(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(M4(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(M4(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(M4(s))}if(bu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(M4(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function M4(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function _nr(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=Enr(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&bu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function Enr(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=xLe(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=vnr(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${bu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(Snr(e.dateRange)),e.markers.length>0&&(a=Inr(t,e.markers)),e.parts.length>0&&(i=Cnr(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):eK(e.duration,ynr(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${tK(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function vnr(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${tK(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function tK({offset:t,length:e}){return`${e}@${t}`}function Snr(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${bu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${bu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${bu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function Inr(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function Cnr(t,e){let r=!1;for(let n of e)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}t.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${tK(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function Tnr(t){bu.PARAMCHECK(t),bu.ASSERT("Not a playlist",t.type==="playlist");let e=new Zz(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${eK(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?Anr(e,t):_nr(e,t),e.join(`
|
|
`)}gf.default=Tnr});var vLe=_(Ss=>{"use strict";var wnr=Ss&&Ss.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rnr=Ss&&Ss.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Nnr=Ss&&Ss.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wnr(e,t,r);return Rnr(e,t),e},_Le=Ss&&Ss.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ss,"__esModule",{value:!0});Ss.setOptions=Ss.getOptions=Ss.types=Ss.stringify=Ss.parse=void 0;var ELe=DI();Object.defineProperty(Ss,"getOptions",{enumerable:!0,get:function(){return ELe.getOptions}});Object.defineProperty(Ss,"setOptions",{enumerable:!0,get:function(){return ELe.setOptions}});var Onr=_Le(ALe());Ss.parse=Onr.default;var knr=_Le(bLe());Ss.stringify=knr.default;var Pnr=Nnr(Jz());Ss.types=Pnr});var hK=_((ZYr,d5e)=>{d5e.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var M0=_(sg=>{var gK,fsr=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];sg.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};sg.getSymbolTotalCodewords=function(e){return fsr[e]};sg.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};sg.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');gK=e};sg.isKanjiModeEnabled=function(){return typeof gK<"u"};sg.toSJIS=function(e){return gK(e)}});var Y4=_(Nc=>{Nc.L={bit:1};Nc.M={bit:0};Nc.Q={bit:3};Nc.H={bit:2};function psr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return Nc.L;case"m":case"medium":return Nc.M;case"q":case"quartile":return Nc.Q;case"h":case"high":return Nc.H;default:throw new Error("Unknown EC Level: "+t)}}Nc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};Nc.from=function(e,r){if(Nc.isValid(e))return e;try{return psr(e)}catch{return r}}});var m5e=_((rJr,p5e)=>{function f5e(){this.buffer=[],this.length=0}f5e.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r<e;r++)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++}};p5e.exports=f5e});var g5e=_((nJr,h5e)=>{function UI(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}UI.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};UI.prototype.get=function(t,e){return this.data[t*this.size+e]};UI.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};UI.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};h5e.exports=UI});var y5e=_(J4=>{var msr=M0().getSymbolSize;J4.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=msr(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a<r-1;a++)i[a]=i[a-1]-s;return i.push(6),i.reverse()};J4.getPositions=function(e){let r=[],n=J4.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 b5e=_(x5e=>{var hsr=M0().getSymbolSize,A5e=7;x5e.getPositions=function(e){let r=hsr(e);return[[0,0],[r-A5e,0],[0,r-A5e]]}});var _5e=_(vn=>{vn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var ig={N1:3,N2:3,N3:40,N4:10};vn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};vn.from=function(e){return vn.isValid(e)?parseInt(e,10):void 0};vn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c<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+=ig.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=ig.N1+(i-5)),o=l,i=1)}s>=5&&(n+=ig.N1+(s-5)),i>=5&&(n+=ig.N1+(i-5))}return n};vn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s<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*ig.N2};vn.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*ig.N3};vn.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)*ig.N4};function gsr(t,e,r){switch(t){case vn.Patterns.PATTERN000:return(e+r)%2===0;case vn.Patterns.PATTERN001:return e%2===0;case vn.Patterns.PATTERN010:return r%3===0;case vn.Patterns.PATTERN011:return(e+r)%3===0;case vn.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(r/3))%2===0;case vn.Patterns.PATTERN101:return e*r%2+e*r%3===0;case vn.Patterns.PATTERN110:return(e*r%2+e*r%3)%2===0;case vn.Patterns.PATTERN111:return(e*r%3+(e+r)%2)%2===0;default:throw new Error("bad maskPattern:"+t)}}vn.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,gsr(e,i,s))};vn.getBestMask=function(e,r){let n=Object.keys(vn.Patterns).length,s=0,i=1/0;for(let a=0;a<n;a++){r(a),vn.applyMask(a,e);let o=vn.getPenaltyN1(e)+vn.getPenaltyN2(e)+vn.getPenaltyN3(e)+vn.getPenaltyN4(e);vn.applyMask(a,e),o<i&&(i=o,s=a)}return s}});var AK=_(yK=>{var W0=Y4(),X4=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],Z4=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];yK.getBlocksCount=function(e,r){switch(r){case W0.L:return X4[(e-1)*4+0];case W0.M:return X4[(e-1)*4+1];case W0.Q:return X4[(e-1)*4+2];case W0.H:return X4[(e-1)*4+3];default:return}};yK.getTotalCodewordsCount=function(e,r){switch(r){case W0.L:return Z4[(e-1)*4+0];case W0.M:return Z4[(e-1)*4+1];case W0.Q:return Z4[(e-1)*4+2];case W0.H:return Z4[(e-1)*4+3];default:return}}});var E5e=_(tB=>{var FI=new Uint8Array(512),eB=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)FI[r]=e,eB[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)FI[r]=FI[r-255]})();tB.log=function(e){if(e<1)throw new Error("log("+e+")");return eB[e]};tB.exp=function(e){return FI[e]};tB.mul=function(e,r){return e===0||r===0?0:FI[eB[e]+eB[r]]}});var v5e=_(qI=>{var xK=E5e();qI.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s<e.length;s++)for(let i=0;i<r.length;i++)n[s+i]^=xK.mul(e[s],r[i]);return n};qI.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]^=xK.mul(r[a],s);let i=0;for(;i<n.length&&n[i]===0;)i++;n=n.slice(i)}return n};qI.generateECPolynomial=function(e){let r=new Uint8Array([1]);for(let n=0;n<e;n++)r=qI.mul(r,new Uint8Array([1,xK.exp(n)]));return r}});var C5e=_((lJr,I5e)=>{var S5e=v5e();function bK(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}bK.prototype.initialize=function(e){this.degree=e,this.genPoly=S5e.generateECPolynomial(this.degree)};bK.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=S5e.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};I5e.exports=bK});var _K=_(T5e=>{T5e.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var EK=_(yf=>{var w5e="[0-9]+",ysr="[A-Z $%*+\\-./:]+",jI="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";jI=jI.replace(/u/g,"\\u");var Asr="(?:(?![A-Z0-9 $%*+\\-./:]|"+jI+`)(?:.|[\r
|
|
]))+`;yf.KANJI=new RegExp(jI,"g");yf.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");yf.BYTE=new RegExp(Asr,"g");yf.NUMERIC=new RegExp(w5e,"g");yf.ALPHANUMERIC=new RegExp(ysr,"g");var xsr=new RegExp("^"+jI+"$"),bsr=new RegExp("^"+w5e+"$"),_sr=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");yf.testKanji=function(e){return xsr.test(e)};yf.testNumeric=function(e){return bsr.test(e)};yf.testAlphanumeric=function(e){return _sr.test(e)}});var $0=_(Ts=>{var Esr=_K(),vK=EK();Ts.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};Ts.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};Ts.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};Ts.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};Ts.MIXED={bit:-1};Ts.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!Esr.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};Ts.getBestModeForData=function(e){return vK.testNumeric(e)?Ts.NUMERIC:vK.testAlphanumeric(e)?Ts.ALPHANUMERIC:vK.testKanji(e)?Ts.KANJI:Ts.BYTE};Ts.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};Ts.isValid=function(e){return e&&e.bit&&e.ccBits};function vsr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return Ts.NUMERIC;case"alphanumeric":return Ts.ALPHANUMERIC;case"kanji":return Ts.KANJI;case"byte":return Ts.BYTE;default:throw new Error("Unknown mode: "+t)}}Ts.from=function(e,r){if(Ts.isValid(e))return e;try{return vsr(e)}catch{return r}}});var P5e=_(ag=>{var rB=M0(),Ssr=AK(),R5e=Y4(),U0=$0(),SK=_K(),O5e=7973,N5e=rB.getBCHDigit(O5e);function Isr(t,e,r){for(let n=1;n<=40;n++)if(e<=ag.getCapacity(n,r,t))return n}function k5e(t,e){return U0.getCharCountIndicator(t,e)+4}function Csr(t,e){let r=0;return t.forEach(function(n){let s=k5e(n.mode,e);r+=s+n.getBitsLength()}),r}function Tsr(t,e){for(let r=1;r<=40;r++)if(Csr(t,r)<=ag.getCapacity(r,e,U0.MIXED))return r}ag.from=function(e,r){return SK.isValid(e)?parseInt(e,10):r};ag.getCapacity=function(e,r,n){if(!SK.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=U0.BYTE);let s=rB.getSymbolTotalCodewords(e),i=Ssr.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===U0.MIXED)return a;let o=a-k5e(n,e);switch(n){case U0.NUMERIC:return Math.floor(o/10*3);case U0.ALPHANUMERIC:return Math.floor(o/11*2);case U0.KANJI:return Math.floor(o/13);case U0.BYTE:default:return Math.floor(o/8)}};ag.getBestVersionForData=function(e,r){let n,s=R5e.from(r,R5e.M);if(Array.isArray(e)){if(e.length>1)return Tsr(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return Isr(n.mode,n.getLength(),s)};ag.getEncodedBits=function(e){if(!SK.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;rB.getBCHDigit(r)-N5e>=0;)r^=O5e<<rB.getBCHDigit(r)-N5e;return e<<12|r}});var M5e=_(L5e=>{var IK=M0(),B5e=1335,wsr=21522,D5e=IK.getBCHDigit(B5e);L5e.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;IK.getBCHDigit(s)-D5e>=0;)s^=B5e<<IK.getBCHDigit(s)-D5e;return(n<<10|s)^wsr}});var $5e=_((gJr,W5e)=>{var Rsr=$0();function Sb(t){this.mode=Rsr.NUMERIC,this.data=t.toString()}Sb.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};Sb.prototype.getLength=function(){return this.data.length};Sb.prototype.getBitsLength=function(){return Sb.getBitsLength(this.data.length)};Sb.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};W5e.exports=Sb});var F5e=_((yJr,U5e)=>{var Nsr=$0(),CK=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function Ib(t){this.mode=Nsr.ALPHANUMERIC,this.data=t}Ib.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Ib.prototype.getLength=function(){return this.data.length};Ib.prototype.getBitsLength=function(){return Ib.getBitsLength(this.data.length)};Ib.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=CK.indexOf(this.data[r])*45;n+=CK.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(CK.indexOf(this.data[r]),6)};U5e.exports=Ib});var j5e=_((AJr,q5e)=>{var Osr=$0();function Cb(t){this.mode=Osr.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Cb.getBitsLength=function(e){return e*8};Cb.prototype.getLength=function(){return this.data.length};Cb.prototype.getBitsLength=function(){return Cb.getBitsLength(this.data.length)};Cb.prototype.write=function(t){for(let e=0,r=this.data.length;e<r;e++)t.put(this.data[e],8)};q5e.exports=Cb});var H5e=_((xJr,Q5e)=>{var ksr=$0(),Psr=M0();function Tb(t){this.mode=ksr.KANJI,this.data=t}Tb.getBitsLength=function(e){return e*13};Tb.prototype.getLength=function(){return this.data.length};Tb.prototype.getBitsLength=function(){return Tb.getBitsLength(this.data.length)};Tb.prototype.write=function(t){let e;for(e=0;e<this.data.length;e++){let r=Psr.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)}};Q5e.exports=Tb});var G5e=_((bJr,TK)=>{"use strict";var QI={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=QI.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=QI.single_source_shortest_paths(t,e,r);return QI.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=QI.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof TK<"u"&&(TK.exports=QI)});var e6e=_(wb=>{var zr=$0(),V5e=$5e(),Y5e=F5e(),J5e=j5e(),X5e=H5e(),HI=EK(),nB=M0(),Dsr=G5e();function z5e(t){return unescape(encodeURIComponent(t)).length}function GI(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function Z5e(t){let e=GI(HI.NUMERIC,zr.NUMERIC,t),r=GI(HI.ALPHANUMERIC,zr.ALPHANUMERIC,t),n,s;return nB.isKanjiModeEnabled()?(n=GI(HI.BYTE,zr.BYTE,t),s=GI(HI.KANJI,zr.KANJI,t)):(n=GI(HI.BYTE_KANJI,zr.BYTE,t),s=[]),e.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function wK(t,e){switch(e){case zr.NUMERIC:return V5e.getBitsLength(t);case zr.ALPHANUMERIC:return Y5e.getBitsLength(t);case zr.KANJI:return X5e.getBitsLength(t);case zr.BYTE:return J5e.getBitsLength(t)}}function Bsr(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function Lsr(t){let e=[];for(let r=0;r<t.length;r++){let n=t[r];switch(n.mode){case zr.NUMERIC:e.push([n,{data:n.data,mode:zr.ALPHANUMERIC,length:n.length},{data:n.data,mode:zr.BYTE,length:n.length}]);break;case zr.ALPHANUMERIC:e.push([n,{data:n.data,mode:zr.BYTE,length:n.length}]);break;case zr.KANJI:e.push([n,{data:n.data,mode:zr.BYTE,length:z5e(n.data)}]);break;case zr.BYTE:e.push([{data:n.data,mode:zr.BYTE,length:z5e(n.data)}])}}return e}function Msr(t,e){let r={},n={start:{}},s=["start"];for(let i=0;i<t.length;i++){let a=t[i],o=[];for(let c=0;c<a.length;c++){let u=a[c],l=""+i+c;o.push(l),r[l]={node:u,lastCount:0},n[l]={};for(let d=0;d<s.length;d++){let f=s[d];r[f]&&r[f].node.mode===u.mode?(n[f][l]=wK(r[f].lastCount+u.length,u.mode)-wK(r[f].lastCount,u.mode),r[f].lastCount+=u.length):(r[f]&&(r[f].lastCount=u.length),n[f][l]=wK(u.length,u.mode)+4+zr.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 K5e(t,e){let r,n=zr.getBestModeForData(t);if(r=zr.from(e,n),r!==zr.BYTE&&r.bit<n.bit)throw new Error('"'+t+'" cannot be encoded with mode '+zr.toString(r)+`.
|
|
Suggested mode is: `+zr.toString(n));switch(r===zr.KANJI&&!nB.isKanjiModeEnabled()&&(r=zr.BYTE),r){case zr.NUMERIC:return new V5e(t);case zr.ALPHANUMERIC:return new Y5e(t);case zr.KANJI:return new X5e(t);case zr.BYTE:return new J5e(t)}}wb.fromArray=function(e){return e.reduce(function(r,n){return typeof n=="string"?r.push(K5e(n,null)):n.data&&r.push(K5e(n.data,n.mode)),r},[])};wb.fromString=function(e,r){let n=Z5e(e,nB.isKanjiModeEnabled()),s=Lsr(n),i=Msr(s,r),a=Dsr.find_path(i.map,"start","end"),o=[];for(let c=1;c<a.length-1;c++)o.push(i.table[a[c]].node);return wb.fromArray(Bsr(o))};wb.rawSplit=function(e){return wb.fromArray(Z5e(e,nB.isKanjiModeEnabled()))}});var DK=_(t6e=>{var iB=M0(),RK=Y4(),Wsr=m5e(),$sr=g5e(),Usr=y5e(),Fsr=b5e(),kK=_5e(),PK=AK(),qsr=C5e(),sB=P5e(),jsr=M5e(),Qsr=$0(),NK=e6e();function Hsr(t,e){let r=t.size,n=Fsr.getPositions(e);for(let s=0;s<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 Gsr(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 zsr(t,e){let r=Usr.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 Ksr(t,e){let r=t.size,n=sB.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 OK(t,e,r){let n=t.size,s=jsr.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function Vsr(t,e){let r=t.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!t.isReserved(s,o-c)){let u=!1;a<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 Ysr(t,e,r){let n=new Wsr;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),Qsr.getCharCountIndicator(c.mode,t)),c.write(n)});let s=iB.getSymbolTotalCodewords(t),i=PK.getTotalCodewordsCount(t,e),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;c<o;c++)n.put(c%2?17:236,8);return Jsr(n,t,e)}function Jsr(t,e,r){let n=iB.getSymbolTotalCodewords(e),s=PK.getTotalCodewordsCount(e,r),i=n-s,a=PK.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 qsr(f),m=0,h=new Array(a),y=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),y[R]=p.encode(h[R]),m+=w,g=Math.max(g,w)}let x=new Uint8Array(n),A=0,S,I;for(S=0;S<g;S++)for(I=0;I<a;I++)S<h[I].length&&(x[A++]=h[I][S]);for(S=0;S<f;S++)for(I=0;I<a;I++)x[A++]=y[I][S];return x}function Xsr(t,e,r,n){let s;if(Array.isArray(t))s=NK.fromArray(t);else if(typeof t=="string"){let u=e;if(!u){let l=NK.rawSplit(t);u=sB.getBestVersionForData(l,r)}s=NK.fromString(t,u||40)}else throw new Error("Invalid data");let i=sB.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=Ysr(e,r,s),o=iB.getSymbolSize(e),c=new $sr(o);return Hsr(c,e),Gsr(c),zsr(c,e),OK(c,r,0),e>=7&&Ksr(c,e),Vsr(c,a),isNaN(n)&&(n=kK.getBestMask(c,OK.bind(null,c,r))),kK.applyMask(n,c),OK(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}t6e.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=RK.M,s,i;return typeof r<"u"&&(n=RK.from(r.errorCorrectionLevel,RK.M),s=sB.from(r.version),i=kK.from(r.maskPattern),r.toSJISFunc&&iB.setToSJISFunction(r.toSJISFunc)),Xsr(e,s,n,i)}});var BK=_((vJr,n6e)=>{"use strict";var Zsr=require("util"),r6e=require("stream"),vu=n6e.exports=function(){r6e.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};Zsr.inherits(vu,r6e);vu.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};vu.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};vu.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};vu.prototype.destroySoon=vu.prototype.end;vu.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};vu.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};vu.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};vu.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;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)};vu.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var MK=_(LK=>{"use strict";var F0=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];LK.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o<F0.length;o++){let c=F0[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};LK.getInterlaceIterator=function(t){return function(e,r,n){let s=e%F0[n].x.length,i=(e-s)/F0[n].x.length*8+F0[n].x[s],a=r%F0[n].y.length,o=(r-a)/F0[n].y.length*8+F0[n].y[a];return i*4+o*t*4}}});var WK=_((IJr,s6e)=>{"use strict";s6e.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var $K=_((CJr,a6e)=>{"use strict";var eir=MK(),tir=WK();function i6e(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Rb=a6e.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=eir.getImagePasses(r,n);for(let c=0;c<o.length;c++)this._images.push({byteWidth:i6e(o[c].width,i,a),height:o[c].height,lineIndex:0})}else this._images.push({byteWidth:i6e(r,i,a),height:n,lineIndex:0});a===8?this._xComparison=i:a===16?this._xComparison=i*2:this._xComparison=1};Rb.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))};Rb.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}};Rb.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}};Rb.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}};Rb.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=tir(u,c,l);e[a]=o+d}};Rb.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var u6e=_((TJr,c6e)=>{"use strict";var rir=require("util"),o6e=BK(),nir=$K(),sir=c6e.exports=function(t){o6e.call(this);let e=[],r=this;this._filter=new nir(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};rir.inherits(sir,o6e)});var Nb=_((wJr,l6e)=>{"use strict";l6e.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var qK=_((RJr,d6e)=>{"use strict";var UK=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;UK[t]=e}})();var FK=d6e.exports=function(){this._crc=-1};FK.prototype.write=function(t){for(let e=0;e<t.length;e++)this._crc=UK[(this._crc^t[e])&255]^this._crc>>>8;return!0};FK.prototype.crc32=function(){return this._crc^-1};FK.crc32=function(t){let e=-1;for(let r=0;r<t.length;r++)e=UK[(e^t[r])&255]^e>>>8;return e^-1}});var jK=_((NJr,f6e)=>{"use strict";var Ds=Nb(),iir=qK(),ni=f6e.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ds.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ds.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ds.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ds.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ds.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ds.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ni.prototype.start=function(){this.read(Ds.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ni.prototype._parseSignature=function(t){let e=Ds.PNG_SIGNATURE;for(let r=0;r<e.length;r++)if(t[r]!==e[r]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))};ni.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!==Ds.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new iir,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))};ni.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))};ni.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))};ni.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))};ni.prototype._handleIHDR=function(t){this.read(t,this._parseIHDR.bind(this))};ni.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 Ds.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=Ds.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:e,height:r,depth:n,interlace:!!o,palette:!!(s&Ds.COLORTYPE_PALETTE),color:!!(s&Ds.COLORTYPE_COLOR),alpha:!!(s&Ds.COLORTYPE_ALPHA),bpp:c,colorType:s}),this._handleChunkEnd()};ni.prototype._handlePLTE=function(t){this.read(t,this._parsePLTE.bind(this))};ni.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()};ni.prototype._handleTRNS=function(t){this.simpleTransparency(),this.read(t,this._parseTRNS.bind(this))};ni.prototype._parseTRNS=function(t){if(this._crc.write(t),this._colorType===Ds.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===Ds.COLORTYPE_GRAYSCALE&&this.transColor([t.readUInt16BE(0)]),this._colorType===Ds.COLORTYPE_COLOR&&this.transColor([t.readUInt16BE(0),t.readUInt16BE(2),t.readUInt16BE(4)]),this._handleChunkEnd()};ni.prototype._handleGAMA=function(t){this.read(t,this._parseGAMA.bind(this))};ni.prototype._parseGAMA=function(t){this._crc.write(t),this.gamma(t.readUInt32BE(0)/Ds.GAMMA_DIVISION),this._handleChunkEnd()};ni.prototype._handleIDAT=function(t){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-t,this._parseIDAT.bind(this,t))};ni.prototype._parseIDAT=function(t,e){if(this._crc.write(e),this._colorType===Ds.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()};ni.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ni.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var QK=_(m6e=>{"use strict";var p6e=MK(),air=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],oir=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function cir(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length<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 uir(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);air[n](e,s,d,i),i+=n}return i}function lir(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);oir[n](e,d,f,i)}s.resetAfterLine()}}m6e.dataToBitMap=function(t,e){let r=e.width,n=e.height,s=e.depth,i=e.bpp,a=e.interlace,o;s!==8&&(o=cir(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=p6e.getImagePasses(r,n),f=p6e.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=uir(d[p],c,f,i,t,l):lir(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 HK=_((kJr,h6e)=>{"use strict";function dir(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 fir(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 pir(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}}h6e.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?dir(t,c,n,s,o):(a&&fir(t,c,n,s,a),r!==8&&(r===16&&(c=Buffer.alloc(n*s*4)),pir(t,c,n,s,r))),c}});var A6e=_((PJr,y6e)=>{"use strict";var mir=require("util"),GK=require("zlib"),g6e=BK(),hir=u6e(),gir=jK(),yir=QK(),Air=HK(),Ol=y6e.exports=function(t){g6e.call(this),this._parser=new gir(t,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=t,this.writable=!0,this._parser.start()};mir.inherits(Ol,g6e);Ol.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};Ol.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=GK.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,GK.Z_MIN_CHUNK);this._inflate=GK.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(t)};Ol.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new hir(this._bitmapInfo)};Ol.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};Ol.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};Ol.prototype._simpleTransparency=function(){this._metaData.alpha=!0};Ol.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};Ol.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};Ol.prototype._complete=function(t){if(this.errord)return;let e;try{let r=yir.dataToBitMap(t,this._bitmapInfo);e=Air(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var b6e=_((DJr,x6e)=>{"use strict";var Oc=Nb();x6e.exports=function(t,e,r,n){let s=[Oc.COLORTYPE_COLOR_ALPHA,Oc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=Oc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=Oc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function p(){let m,h,y,g=a;switch(n.inputColorType){case Oc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],y=i[l+2];break;case Oc.COLORTYPE_COLOR:m=i[l],h=i[l+1],y=i[l+2];break;case Oc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,y=m;break;case Oc.COLORTYPE_GRAYSCALE:m=i[l],h=m,y=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),y=Math.min(Math.max(Math.round((1-g)*f.blue+g*y),0),a))),{red:m,green:h,blue:y,alpha:g}}for(let m=0;m<r;m++)for(let h=0;h<e;h++){let y=p(i,l);switch(n.colorType){case Oc.COLORTYPE_COLOR_ALPHA:case Oc.COLORTYPE_COLOR:n.bitDepth===8?(u[d]=y.red,u[d+1]=y.green,u[d+2]=y.blue,s&&(u[d+3]=y.alpha)):(u.writeUInt16BE(y.red,d),u.writeUInt16BE(y.green,d+2),u.writeUInt16BE(y.blue,d+4),s&&u.writeUInt16BE(y.alpha,d+6));break;case Oc.COLORTYPE_ALPHA:case Oc.COLORTYPE_GRAYSCALE:{let g=(y.red+y.green+y.blue)/3;n.bitDepth===8?(u[d]=g,s&&(u[d+1]=y.alpha)):(u.writeUInt16BE(g,d),s&&u.writeUInt16BE(y.alpha,d+2));break}default:throw new Error("unrecognised color Type "+n.colorType)}l+=o,d+=c}return u}});var v6e=_((BJr,E6e)=>{"use strict";var _6e=WK();function xir(t,e,r,n,s){for(let i=0;i<r;i++)n[s+i]=t[e+i]}function bir(t,e,r){let n=0,s=e+r;for(let i=e;i<s;i++)n+=Math.abs(t[i]);return n}function _ir(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 Eir(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 vir(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 Sir(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 Iir(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 Cir(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 Tir(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]-_6e(o,c,u);n[s+a]=l}}function wir(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]-_6e(a,o,c);s+=Math.abs(u)}return s}var Rir={0:xir,1:_ir,2:vir,3:Iir,4:Tir},Nir={0:bir,1:Eir,2:Sir,3:Cir,4:wir};E6e.exports=function(t,e,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=e*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d<r;d++){if(i.length>1){let f=1/0;for(let p=0;p<i.length;p++){let m=Nir[i[p]](t,c,a,s);m<f&&(l=i[p],f=m)}}u[o]=l,o++,Rir[l](t,c,a,u,o,s),o+=a,c+=a}return u}});var zK=_((LJr,S6e)=>{"use strict";var Zi=Nb(),Oir=qK(),kir=b6e(),Pir=v6e(),Dir=require("zlib"),q0=S6e.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Dir.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Zi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Zi.COLORTYPE_COLOR_ALPHA,[Zi.COLORTYPE_GRAYSCALE,Zi.COLORTYPE_COLOR,Zi.COLORTYPE_COLOR_ALPHA,Zi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Zi.COLORTYPE_GRAYSCALE,Zi.COLORTYPE_COLOR,Zi.COLORTYPE_COLOR_ALPHA,Zi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};q0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};q0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};q0.prototype.filterData=function(t,e,r){let n=kir(t,e,r,this._options),s=Zi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return Pir(n,e,r,this._options,s)};q0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(Oir.crc32(n.slice(4,n.length-4)),n.length-4),n};q0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Zi.GAMMA_DIVISION),0),this._packChunk(Zi.TYPE_gAMA,e)};q0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Zi.TYPE_IHDR,r)};q0.prototype.packIDAT=function(t){return this._packChunk(Zi.TYPE_IDAT,t)};q0.prototype.packIEND=function(){return this._packChunk(Zi.TYPE_IEND,null)}});var w6e=_((MJr,T6e)=>{"use strict";var Bir=require("util"),I6e=require("stream"),Lir=Nb(),Mir=zK(),C6e=T6e.exports=function(t){I6e.call(this);let e=t||{};this._packer=new Mir(e),this._deflate=this._packer.createDeflate(),this.readable=!0};Bir.inherits(C6e,I6e);C6e.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Lir.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var D6e=_((zI,P6e)=>{"use strict";var R6e=require("assert").ok,Ob=require("zlib"),Wir=require("util"),N6e=require("buffer").kMaxLength;function og(t){if(!(this instanceof og))return new og(t);t&&t.chunkSize<Ob.Z_MIN_CHUNK&&(t.chunkSize=Ob.Z_MIN_CHUNK),Ob.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 $ir(t){return new og(t)}function O6e(t,e){e&&process.nextTick(e),t._handle&&(t._handle.close(),t._handle=null)}og.prototype._processChunk=function(t,e,r){if(typeof r=="function")return Ob.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 y=i-h;if(R6e(y>=0,"have should not go down"),y>0){let g=n._buffer.slice(n._offset,n._offset+y);if(n._offset+=y,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}R6e(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=N6e)throw O6e(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+N6e.toString(16)+" bytes");let p=Buffer.concat(c,u);return O6e(this),p};Wir.inherits(og,Ob.Inflate);function Uir(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Ob.Z_FINISH),t._processChunk(e,r)}function k6e(t,e){return Uir(new og(e),t)}P6e.exports=zI=k6e;zI.Inflate=og;zI.createInflate=$ir;zI.inflateSync=k6e});var KK=_((WJr,L6e)=>{"use strict";var B6e=L6e.exports=function(t){this._buffer=t,this._reads=[]};B6e.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};B6e.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var W6e=_(M6e=>{"use strict";var Fir=KK(),qir=$K();M6e.process=function(t,e){let r=[],n=new Fir(t);return new qir(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var q6e=_((UJr,F6e)=>{"use strict";var $6e=!0,U6e=require("zlib"),jir=D6e();U6e.deflateSync||($6e=!1);var Qir=KK(),Hir=W6e(),Gir=jK(),zir=QK(),Kir=HK();F6e.exports=function(t,e){if(!$6e)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(A){r=A}let s;function i(A){s=A}function a(A){s.transColor=A}function o(A){s.palette=A}function c(){s.alpha=!0}let u;function l(A){u=A}let d=[];function f(A){d.push(A)}let p=new Qir(t);if(new Gir(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let y;if(s.interlace)y=U6e.inflateSync(h);else{let S=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;y=jir(h,{chunkSize:S,maxLength:S})}if(h=null,!y||!y.length)throw new Error("bad png - invalid inflate data response");let g=Hir.process(y,s);h=null;let b=zir.dataToBitMap(g,s);g=null;let x=Kir(b,s);return s.data=x,s.gamma=u||0,s}});var G6e=_((FJr,H6e)=>{"use strict";var j6e=!0,Q6e=require("zlib");Q6e.deflateSync||(j6e=!1);var Vir=Nb(),Yir=zK();H6e.exports=function(t,e){if(!j6e)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new Yir(r),s=[];s.push(Buffer.from(Vir.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=Q6e.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var z6e=_(VK=>{"use strict";var Jir=q6e(),Xir=G6e();VK.read=function(t,e){return Jir(t,e||{})};VK.write=function(t,e){return Xir(t,e)}});var Y6e=_(V6e=>{"use strict";var Zir=require("util"),K6e=require("stream"),ear=A6e(),tar=w6e(),rar=z6e(),ba=V6e.PNG=function(t){K6e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new ear(t),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new tar(t),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};Zir.inherits(ba,K6e);ba.sync=rar;ba.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};ba.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};ba.prototype.write=function(t){return this._parser.write(t),!0};ba.prototype.end=function(t){this._parser.end(t)};ba.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};ba.prototype._gamma=function(t){this.gamma=t};ba.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};ba.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c<i;c++)t.data.copy(e.data,(o+c)*e.width+a<<2,(n+c)*t.width+r<<2,(n+c)*t.width+r+s<<2)};ba.prototype.bitblt=function(t,e,r,n,s,i,a){return ba.bitblt(this,t,e,r,n,s,i,a),this};ba.adjustGamma=function(t){if(t.gamma){for(let e=0;e<t.height;e++)for(let r=0;r<t.width;r++){let n=t.width*e+r<<2;for(let s=0;s<3;s++){let i=t.data[n+s]/255;i=Math.pow(i,1/2.2/t.gamma),t.data[n+s]=Math.round(i*255)}}t.gamma=0}};ba.prototype.adjustGamma=function(){ba.adjustGamma(this)}});var KI=_(cg=>{function J6e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}cg.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:J6e(e.color.dark||"#000000ff"),light:J6e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};cg.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};cg.getImageWidth=function(e,r){let n=cg.getScale(e,r);return Math.floor((e+r.margin*2)*n)};cg.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=cg.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l<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 X6e=_(kl=>{var nar=require("fs"),sar=Y6e().PNG,YK=KI();kl.render=function(e,r){let n=YK.getOptions(r),s=n.rendererOpts,i=YK.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new sar(s);return YK.qrToImageData(a.data,e,n),a};kl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),kl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};kl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=kl.render(e,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};kl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=nar.createWriteStream(e);o.on("error",a),o.on("close",a),kl.renderToFileStream(o,r,n)};kl.renderToFileStream=function(e,r,n){kl.render(r,n).pack().pipe(e)}});var Z6e=_(aB=>{var iar=KI(),aar={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},oar={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function car(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}aB.render=function(t,e,r){let n=iar.getOptions(e),s=aar;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=oar);let i=t.modules.size,a=t.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+`
|
|
`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l<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+=car(f,p,s)}o+=u+`
|
|
`}return o+=c.slice(0,-1),typeof r=="function"&&r(null,o),o};aB.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),a=aB.render(r,n);i.writeFile(e,a,s)}});var tMe=_(eMe=>{eMe.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+`
|
|
`;for(let l=0;l<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 iMe=_(sMe=>{var uar="\x1B[47m",lar="\x1B[40m",JK="\x1B[37m",XK="\x1B[30m",ug="\x1B[0m",dar=uar+XK,far=lar+JK,par=function(t,e,r){return{"00":ug+" "+t,"01":ug+e+"\u2584"+t,"02":ug+r+"\u2584"+t,10:ug+e+"\u2580"+t,11:" ",12:"\u2584",20:ug+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},rMe=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},nMe=function(t,e,r,n){return rMe(t,e,r,n)+rMe(t,e,r,n+1)};sMe.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?far:dar,u=par(a,i?XK:JK,i?JK:XK),l=ug+`
|
|
`+a,d=a;for(let f=-1;f<n+1;f+=2){for(let p=-1;p<n;p++)d+=u[nMe(s,n,p,f)];d+=u[nMe(s,n,n,f)]+l}return d+=ug,typeof r=="function"&&r(null,d),d}});var oMe=_(aMe=>{var mar=tMe(),har=iMe();aMe.render=function(t,e,r){return e&&e.small?har.render(t,e,r):mar.render(t,e,r)}});var eV=_(uMe=>{var gar=KI();function cMe(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function ZK(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function yar(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;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?ZK("M",c+r,.5+u+r):ZK("m",s,0),s=0,i=!1),c+1<e&&t[o+1]||(n+=ZK("h",a),a=0)):s++}return n}uMe.render=function(e,r,n){let s=gar.getOptions(r),i=e.modules.size,a=e.modules.data,o=i+s.margin*2,c=s.color.light.a?"<path "+cMe(s.color.light,"fill")+' d="M0 0h'+o+"v"+o+'H0z"/>':"",u="<path "+cMe(s.color.dark,"stroke")+' d="'+yar(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 lMe=_(oB=>{var Aar=eV();oB.render=Aar.render;oB.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o='<?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">'+oB.render(r,n);i.writeFile(e,o,s)}});var dMe=_(cB=>{var tV=KI();function xar(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function bar(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}cB.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=bar()),s=tV.getOptions(s);let a=tV.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return tV.qrToImageData(c.data,e,s),xar(o,i,a),o.putImageData(c,0,0),i};cB.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=cB.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var pMe=_(VI=>{var _ar=hK(),rV=DK(),fMe=dMe(),Ear=eV();function nV(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!_ar())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=rV.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=rV.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}VI.create=rV.create;VI.toCanvas=nV.bind(null,fMe.render);VI.toDataURL=nV.bind(null,fMe.renderToDataURL);VI.toString=nV.bind(null,function(t,e,r){return Ear.render(t,r)})});var yMe=_(j0=>{var mMe=hK(),sV=DK(),Sar=X6e(),hMe=Z6e(),Iar=oMe(),gMe=lMe();function YI(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(mMe())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function Car(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function uB(t){switch(t){case"svg":return gMe;case"txt":case"utf8":return hMe;case"png":case"image/png":default:return Sar}}function Tar(t){switch(t){case"svg":return gMe;case"terminal":return Iar;case"utf8":default:return hMe}}function JI(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=sV.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=sV.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}j0.create=sV.create;j0.toCanvas=pMe().toCanvas;j0.toString=function(e,r,n){let s=YI(e,r,n),i=s.opts?s.opts.type:void 0,a=Tar(i);return JI(a.render,e,s)};j0.toDataURL=function(e,r,n){let s=YI(e,r,n),i=uB(s.opts.type);return JI(i.renderToDataURL,e,s)};j0.toBuffer=function(e,r,n){let s=YI(e,r,n),i=uB(s.opts.type);return JI(i.renderToBuffer,e,s)};j0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!mMe())throw new Error("Too few arguments provided");let i=YI(r,n,s),a=i.opts.type||Car(e),c=uB(a).renderToFile.bind(null,e);return JI(c,r,i)};j0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=YI(r,n,e.emit.bind(e,"error")),a=uB("png").renderToFileStream.bind(null,e);JI(a,r,s)}});var Q0=_((tXr,AMe)=>{AMe.exports=yMe()});var UMe=_((fXr,$Me)=>{$Me.exports=require("util").inspect});var sC=_((pXr,aWe)=>{var bV=typeof Map=="function"&&Map.prototype,dV=Object.getOwnPropertyDescriptor&&bV?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,gB=bV&&dV&&typeof dV.get=="function"?dV.get:null,FMe=bV&&Map.prototype.forEach,_V=typeof Set=="function"&&Set.prototype,fV=Object.getOwnPropertyDescriptor&&_V?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,yB=_V&&fV&&typeof fV.get=="function"?fV.get:null,qMe=_V&&Set.prototype.forEach,jar=typeof WeakMap=="function"&&WeakMap.prototype,tC=jar?WeakMap.prototype.has:null,Qar=typeof WeakSet=="function"&&WeakSet.prototype,rC=Qar?WeakSet.prototype.has:null,Har=typeof WeakRef=="function"&&WeakRef.prototype,jMe=Har?WeakRef.prototype.deref:null,Gar=Boolean.prototype.valueOf,zar=Object.prototype.toString,Kar=Function.prototype.toString,Var=String.prototype.match,EV=String.prototype.slice,H0=String.prototype.replace,Yar=String.prototype.toUpperCase,QMe=String.prototype.toLowerCase,ZMe=RegExp.prototype.test,HMe=Array.prototype.concat,Ll=Array.prototype.join,Jar=Array.prototype.slice,GMe=Math.floor,hV=typeof BigInt=="function"?BigInt.prototype.valueOf:null,pV=Object.getOwnPropertySymbols,gV=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Pb=typeof Symbol=="function"&&typeof Symbol.iterator=="object",nC=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Pb||!0)?Symbol.toStringTag:null,eWe=Object.prototype.propertyIsEnumerable,zMe=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function KMe(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||ZMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-GMe(-t):GMe(t);if(n!==t){var s=String(n),i=EV.call(e,s.length+1);return H0.call(s,r,"$&_")+"."+H0.call(H0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return H0.call(e,r,"$&_")}var yV=UMe(),VMe=yV.custom,YMe=nWe(VMe)?VMe:null,tWe={__proto__:null,double:'"',single:"'"},Xar={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};aWe.exports=function t(e,r,n,s){var i=r||{};if(bf(i,"quoteStyle")&&!bf(tWe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(bf(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=bf(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(bf(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(bf(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return iWe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?KMe(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?KMe(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return AV(e)?"[Array]":"[Object]";var d=yor(i,n);if(typeof s>"u")s=[];else if(sWe(s,e)>=0)return"[Circular]";function f(D,L,Z){if(L&&(s=Jar.call(s),s.push(L)),Z){var W={depth:i.depth};return bf(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(D,W,n+1,s)}return t(D,i,n+1,s)}if(typeof e=="function"&&!JMe(e)){var p=oor(e),m=hB(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+Ll.call(m,", ")+" }":"")}if(nWe(e)){var h=Pb?H0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):gV.call(e);return typeof e=="object"&&!Pb?eC(h):h}if(mor(e)){for(var y="<"+QMe.call(String(e.nodeName)),g=e.attributes||[],b=0;b<g.length;b++)y+=" "+g[b].name+"="+rWe(Zar(g[b].value),"double",i);return y+=">",e.childNodes&&e.childNodes.length&&(y+="..."),y+="</"+QMe.call(String(e.nodeName))+">",y}if(AV(e)){if(e.length===0)return"[]";var x=hB(e,f);return d&&!gor(x)?"["+xV(x,d)+"]":"[ "+Ll.call(x,", ")+" ]"}if(tor(e)){var A=hB(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!eWe.call(e,"cause")?"{ ["+String(e)+"] "+Ll.call(HMe.call("[cause]: "+f(e.cause),A),", ")+" }":A.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Ll.call(A,", ")+" }"}if(typeof e=="object"&&a){if(YMe&&typeof e[YMe]=="function"&&yV)return yV(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(cor(e)){var S=[];return FMe&&FMe.call(e,function(D,L){S.push(f(L,e,!0)+" => "+f(D,e))}),XMe("Map",gB.call(e),S,d)}if(dor(e)){var I=[];return qMe&&qMe.call(e,function(D){I.push(f(D,e))}),XMe("Set",yB.call(e),I,d)}if(uor(e))return mV("WeakMap");if(por(e))return mV("WeakSet");if(lor(e))return mV("WeakRef");if(nor(e))return eC(f(Number(e)));if(ior(e))return eC(f(hV.call(e)));if(sor(e))return eC(Gar.call(e));if(ror(e))return eC(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!eor(e)&&!JMe(e)){var R=hB(e,f),w=zMe?zMe(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",k=!w&&nC&&Object(e)===e&&nC in e?EV.call(G0(e),8,-1):N?"Object":"",B=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=B+(k||N?"["+Ll.call(HMe.call([],k||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+xV(R,d)+"}":M+"{ "+Ll.call(R,", ")+" }"}return String(e)};function rWe(t,e,r){var n=r.quoteStyle||e,s=tWe[n];return s+t+s}function Zar(t){return H0.call(String(t),/"/g,""")}function pg(t){return!nC||!(typeof t=="object"&&(nC in t||typeof t[nC]<"u"))}function AV(t){return G0(t)==="[object Array]"&&pg(t)}function eor(t){return G0(t)==="[object Date]"&&pg(t)}function JMe(t){return G0(t)==="[object RegExp]"&&pg(t)}function tor(t){return G0(t)==="[object Error]"&&pg(t)}function ror(t){return G0(t)==="[object String]"&&pg(t)}function nor(t){return G0(t)==="[object Number]"&&pg(t)}function sor(t){return G0(t)==="[object Boolean]"&&pg(t)}function nWe(t){if(Pb)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!gV)return!1;try{return gV.call(t),!0}catch{}return!1}function ior(t){if(!t||typeof t!="object"||!hV)return!1;try{return hV.call(t),!0}catch{}return!1}var aor=Object.prototype.hasOwnProperty||function(t){return t in this};function bf(t,e){return aor.call(t,e)}function G0(t){return zar.call(t)}function oor(t){if(t.name)return t.name;var e=Var.call(Kar.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function sWe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;r<n;r++)if(t[r]===e)return r;return-1}function cor(t){if(!gB||!t||typeof t!="object")return!1;try{gB.call(t);try{yB.call(t)}catch{return!0}return t instanceof Map}catch{}return!1}function uor(t){if(!tC||!t||typeof t!="object")return!1;try{tC.call(t,tC);try{rC.call(t,rC)}catch{return!0}return t instanceof WeakMap}catch{}return!1}function lor(t){if(!jMe||!t||typeof t!="object")return!1;try{return jMe.call(t),!0}catch{}return!1}function dor(t){if(!yB||!t||typeof t!="object")return!1;try{yB.call(t);try{gB.call(t)}catch{return!0}return t instanceof Set}catch{}return!1}function por(t){if(!rC||!t||typeof t!="object")return!1;try{rC.call(t,rC);try{tC.call(t,tC)}catch{return!0}return t instanceof WeakSet}catch{}return!1}function mor(t){return!t||typeof t!="object"?!1:typeof HTMLElement<"u"&&t instanceof HTMLElement?!0:typeof t.nodeName=="string"&&typeof t.getAttribute=="function"}function iWe(t,e){if(t.length>e.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return iWe(EV.call(t,0,e.maxStringLength),e)+n}var s=Xar[e.quoteStyle||"single"];s.lastIndex=0;var i=H0.call(H0.call(t,s,"\\$1"),/[\x00-\x1f]/g,hor);return rWe(i,"single",e)}function hor(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Yar.call(e.toString(16))}function eC(t){return"Object("+t+")"}function mV(t){return t+" { ? }"}function XMe(t,e,r,n){var s=n?xV(r,n):Ll.call(r,", ");return t+" ("+e+") {"+s+"}"}function gor(t){for(var e=0;e<t.length;e++)if(sWe(t[e],`
|
|
`)>=0)return!1;return!0}function yor(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Ll.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Ll.call(Array(e+1),r)}}function xV(t,e){if(t.length===0)return"";var r=`
|
|
`+e.prev+e.base;return r+Ll.call(t,","+r)+`
|
|
`+e.prev}function hB(t,e){var r=AV(t),n=[];if(r){n.length=t.length;for(var s=0;s<t.length;s++)n[s]=bf(t,s)?e(t[s],t):""}var i=typeof pV=="function"?pV(t):[],a;if(Pb){a={};for(var o=0;o<i.length;o++)a["$"+i[o]]=i[o]}for(var c in t)bf(t,c)&&(r&&String(Number(c))===c&&c<t.length||Pb&&a["$"+c]instanceof Symbol||(ZMe.call(/[^\w$]/,c)?n.push(e(c,t)+": "+e(t[c],t)):n.push(c+": "+e(t[c],t))));if(typeof pV=="function")for(var u=0;u<i.length;u++)eWe.call(t,i[u])&&n.push("["+e(i[u])+"]: "+e(t[i[u]],t));return n}});var cWe=_((mXr,oWe)=>{"use strict";var Aor=sC(),xor=p0(),AB=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},bor=function(t,e){if(t){var r=AB(t,e);return r&&r.value}},_or=function(t,e,r){var n=AB(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},Eor=function(t,e){return t?!!AB(t,e):!1},vor=function(t,e){if(t)return AB(t,e,!0)};oWe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new xor("Side channel does not contain "+Aor(n))},delete:function(n){var s=e&&e.next,i=vor(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return bor(e,n)},has:function(n){return Eor(e,n)},set:function(n,s){e||(e={next:void 0}),_or(e,n,s)}};return r}});var vV=_((hXr,dWe)=>{"use strict";var uWe=jS(),lWe=BH(),Sor=lWe([uWe("%String.prototype.indexOf%")]);dWe.exports=function(e,r){var n=uWe(e,!!r);return typeof n=="function"&&Sor(e,".prototype.")>-1?lWe([n]):n}});var SV=_((gXr,pWe)=>{"use strict";var Ior=jS(),iC=vV(),Cor=sC(),Tor=p0(),fWe=Ior("%Map%",!0),wor=iC("Map.prototype.get",!0),Ror=iC("Map.prototype.set",!0),Nor=iC("Map.prototype.has",!0),Oor=iC("Map.prototype.delete",!0),kor=iC("Map.prototype.size",!0);pWe.exports=!!fWe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new Tor("Side channel does not contain "+Cor(n))},delete:function(n){if(e){var s=Oor(e,n);return kor(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return wor(e,n)},has:function(n){return e?Nor(e,n):!1},set:function(n,s){e||(e=new fWe),Ror(e,n,s)}};return r}});var hWe=_((yXr,mWe)=>{"use strict";var Por=jS(),bB=vV(),Dor=sC(),xB=SV(),Bor=p0(),Db=Por("%WeakMap%",!0),Lor=bB("WeakMap.prototype.get",!0),Mor=bB("WeakMap.prototype.set",!0),Wor=bB("WeakMap.prototype.has",!0),$or=bB("WeakMap.prototype.delete",!0);mWe.exports=Db?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new Bor("Side channel does not contain "+Dor(s))},delete:function(s){if(Db&&s&&(typeof s=="object"||typeof s=="function")){if(e)return $or(e,s)}else if(xB&&r)return r.delete(s);return!1},get:function(s){return Db&&s&&(typeof s=="object"||typeof s=="function")&&e?Lor(e,s):r&&r.get(s)},has:function(s){return Db&&s&&(typeof s=="object"||typeof s=="function")&&e?Wor(e,s):!!r&&r.has(s)},set:function(s,i){Db&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Db),Mor(e,s,i)):xB&&(r||(r=xB()),r.set(s,i))}};return n}:xB});var yWe=_((AXr,gWe)=>{"use strict";var Uor=p0(),For=sC(),qor=cWe(),jor=SV(),Qor=hWe(),Hor=Qor||jor||qor;gWe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Uor("Side channel does not contain "+For(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=Hor()),e.set(n,s)}};return r}});var _B=_((xXr,AWe)=>{"use strict";var Gor=String.prototype.replace,zor=/%20/g,IV={RFC1738:"RFC1738",RFC3986:"RFC3986"};AWe.exports={default:IV.RFC3986,formatters:{RFC1738:function(t){return Gor.call(t,zor,"+")},RFC3986:function(t){return String(t)}},RFC1738:IV.RFC1738,RFC3986:IV.RFC3986}});var wV=_((bXr,bWe)=>{"use strict";var Kor=_B(),CV=Object.prototype.hasOwnProperty,mg=Array.isArray,Ml=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Vor=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(mg(n)){for(var s=[],i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);r.obj[r.prop]=s}}},xWe=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},Yor=function t(e,r,n){if(!r)return e;if(typeof r!="object"&&typeof r!="function"){if(mg(e))e.push(r);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!CV.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 mg(e)&&!mg(r)&&(s=xWe(e,n)),mg(e)&&mg(r)?(r.forEach(function(i,a){if(CV.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 CV.call(i,a)?i[a]=t(i[a],o,n):i[a]=o,i},s)},Jor=function(e,r){return Object.keys(r).reduce(function(n,s){return n[s]=r[s],n},e)},Xor=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}},TV=1024,Zor=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+=TV){for(var u=a.length>=TV?a.slice(c,c+TV):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===Kor.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Ml[f];continue}if(f<2048){l[l.length]=Ml[192|f>>6]+Ml[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Ml[224|f>>12]+Ml[128|f>>6&63]+Ml[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Ml[240|f>>18]+Ml[128|f>>12&63]+Ml[128|f>>6&63]+Ml[128|f&63]}o+=l.join("")}return o},ecr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s<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 Vor(r),e},tcr=function(e){return Object.prototype.toString.call(e)==="[object RegExp]"},rcr=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},ncr=function(e,r){return[].concat(e,r)},scr=function(e,r){if(mg(e)){for(var n=[],s=0;s<e.length;s+=1)n.push(r(e[s]));return n}return r(e)};bWe.exports={arrayToObject:xWe,assign:Jor,combine:ncr,compact:ecr,decode:Xor,encode:Zor,isBuffer:rcr,isRegExp:tcr,maybeMap:scr,merge:Yor}});var CWe=_((_Xr,IWe)=>{"use strict";var EWe=yWe(),EB=wV(),aC=_B(),icr=Object.prototype.hasOwnProperty,vWe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Wl=Array.isArray,acr=Array.prototype.push,SWe=function(t,e){acr.apply(t,Wl(e)?e:[e])},ocr=Date.prototype.toISOString,_We=aC.default,Bs={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:EB.encode,encodeValuesOnly:!1,filter:void 0,format:_We,formatter:aC.formatters[_We],indices:!1,serializeDate:function(e){return ocr.call(e)},skipNulls:!1,strictNullHandling:!1},ccr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},RV={},ucr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,y,g,b){for(var x=e,A=b,S=0,I=!1;(A=A.get(RV))!==void 0&&!I;){var R=A.get(e);if(S+=1,typeof R<"u"){if(R===S)throw new RangeError("Cyclic object value");I=!0}typeof A.get(RV)>"u"&&(S=0)}if(typeof l=="function"?x=l(r,x):x instanceof Date?x=p(x):n==="comma"&&Wl(x)&&(x=EB.maybeMap(x,function(J){return J instanceof Date?p(J):J})),x===null){if(a)return u&&!y?u(r,Bs.encoder,g,"key",m):r;x=""}if(ccr(x)||EB.isBuffer(x)){if(u){var w=y?r:u(r,Bs.encoder,g,"key",m);return[h(w)+"="+h(u(x,Bs.encoder,g,"value",m))]}return[h(r)+"="+h(String(x))]}var N=[];if(typeof x>"u")return N;var k;if(n==="comma"&&Wl(x))y&&u&&(x=EB.maybeMap(x,u)),k=[{value:x.length>0?x.join(",")||null:void 0}];else if(Wl(l))k=l;else{var B=Object.keys(x);k=d?B.sort(d):B}var M=c?String(r).replace(/\./g,"%2E"):String(r),D=s&&Wl(x)&&x.length===1?M+"[]":M;if(i&&Wl(x)&&x.length===0)return D+"[]";for(var L=0;L<k.length;++L){var Z=k[L],W=typeof Z=="object"&&Z&&typeof Z.value<"u"?Z.value:x[Z];if(!(o&&W===null)){var U=f&&c?String(Z).replace(/\./g,"%2E"):String(Z),z=Wl(x)?typeof n=="function"?n(D,U):D:D+(f?"."+U:"["+U+"]");b.set(e,S);var j=EWe();j.set(RV,b),SWe(N,t(W,z,n,s,i,a,o,c,n==="comma"&&y&&Wl(x)?null:u,l,d,f,p,m,h,y,g,j))}}return N},lcr=function(e){if(!e)return Bs;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||Bs.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=aC.default;if(typeof e.format<"u"){if(!icr.call(aC.formatters,e.format))throw new TypeError("Unknown format option provided.");n=e.format}var s=aC.formatters[n],i=Bs.filter;(typeof e.filter=="function"||Wl(e.filter))&&(i=e.filter);var a;if(e.arrayFormat in vWe?a=e.arrayFormat:"indices"in e?a=e.indices?"indices":"repeat":a=Bs.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:Bs.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Bs.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Bs.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Bs.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Bs.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Bs.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Bs.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Bs.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Bs.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Bs.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Bs.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Bs.strictNullHandling}};IWe.exports=function(t,e){var r=t,n=lcr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):Wl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=vWe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=EWe(),l=0;l<s.length;++l){var d=s[l],f=r[d];n.skipNulls&&f===null||SWe(a,ucr(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 NWe=_((EXr,RWe)=>{"use strict";var hg=wV(),NV=Object.prototype.hasOwnProperty,TWe=Array.isArray,es={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:hg.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},dcr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},wWe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},fcr="utf8=%26%2310003%3B",pcr="utf8=%E2%9C%93",mcr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c<a.length;++c)a[c].indexOf("utf8=")===0&&(a[c]===pcr?u="utf-8":a[c]===fcr&&(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,es.decoder,u,"key"),m=r.strictNullHandling?null:""):(p=r.decoder(l.slice(0,f),es.decoder,u,"key"),m=hg.maybeMap(wWe(l.slice(f+1),r,TWe(n[p])?n[p].length:0),function(y){return r.decoder(y,es.decoder,u,"value")})),m&&r.interpretNumericEntities&&u==="iso-8859-1"&&(m=dcr(String(m))),l.indexOf("[]=")>-1&&(m=TWe(m)?[m]:m);var h=NV.call(n,p);h&&r.duplicates==="combine"?n[p]=hg.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},hcr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:wWe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:hg.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},gcr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&NV.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d<n.depth;){if(d+=1,!n.plainObjects&&NV.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 hcr(l,r,n,s)}},ycr=function(e){if(!e)return es;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"?es.charset:e.charset,n=typeof e.duplicates>"u"?es.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:es.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:es.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:es.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:es.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:es.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:es.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:es.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:es.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:es.decoder,delimiter:typeof e.delimiter=="string"||hg.isRegExp(e.delimiter)?e.delimiter:es.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:es.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:es.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:es.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:es.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:es.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:es.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};RWe.exports=function(t,e){var r=ycr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?mcr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a<i.length;++a){var o=i[a],c=gcr(o,n[o],r,typeof t=="string");s=hg.merge(s,c,r)}return r.allowSparse===!0?s:hg.compact(s)}});var oC=_((vXr,OWe)=>{"use strict";var Acr=CWe(),xcr=NWe(),bcr=_B();OWe.exports={formats:bcr,parse:xcr,stringify:Acr}});var OV=_((kWe,vB)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function p(S){var I,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},k=new ue(1),B=20,M=4,D=-7,L=21,Z=-1e7,W=1e7,U=!1,z=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(F,G){var K,q,Q,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(F,G);if(G==null){if(F&&F._isBigNumber===!0){ce.s=F.s,!F.c||F.e>W?ce.c=ce.e=null:F.e<Z?ce.c=[ce.e=0]:(ce.e=F.e,ce.c=F.c.slice());return}if((re=typeof F=="number")&&F*0==0){if(ce.s=1/F<0?(F=-F,-1):1,F===~~F){for(ee=0,ne=F;ne>=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[F]);return}ie=String(F)}else{if(!r.test(ie=String(F)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(F),Fe(ce,B+ce.e+1,M);if(ie=String(F),re=typeof F=="number"){if(F*0!=0)return w(ce,ie,re,G);if(ce.s=1/F<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+F)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(K=se.slice(0,G),ee=ne=0,X=ie.length;ne<X;ne++)if(K.indexOf(q=ie.charAt(ne))<0){if(q=="."){if(ne>ee){ee=X;continue}}else if(!Q&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){Q=!0,ne=-1,ee=0;continue}return w(ce,String(F),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(F>u||F!==s(F)))throw Error(a+ce.s*F);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee<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(F){var G,K;if(F!=null)if(typeof F=="object"){if(F.hasOwnProperty(G="DECIMAL_PLACES")&&(K=F[G],g(K,0,f,G),B=K),F.hasOwnProperty(G="ROUNDING_MODE")&&(K=F[G],g(K,0,8,G),M=K),F.hasOwnProperty(G="EXPONENTIAL_AT")&&(K=F[G],K&&K.pop?(g(K[0],-f,0,G),g(K[1],0,f,G),D=K[0],L=K[1]):(g(K,-f,f,G),D=-(L=K<0?-K:K))),F.hasOwnProperty(G="RANGE"))if(K=F[G],K&&K.pop)g(K[0],-f,-1,G),g(K[1],1,f,G),Z=K[0],W=K[1];else if(g(K,-f,f,G),K)Z=-(W=K<0?-K:K);else throw Error(i+G+" cannot be zero: "+K);if(F.hasOwnProperty(G="CRYPTO"))if(K=F[G],K===!!K)if(K)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))U=K;else throw U=!K,Error(i+"crypto unavailable");else U=K;else throw Error(i+G+" not true or false: "+K);if(F.hasOwnProperty(G="MODULO_MODE")&&(K=F[G],g(K,0,9,G),z=K),F.hasOwnProperty(G="POW_PRECISION")&&(K=F[G],g(K,0,f,G),j=K),F.hasOwnProperty(G="FORMAT"))if(K=F[G],typeof K=="object")J=K;else throw Error(i+G+" not an object: "+K);if(F.hasOwnProperty(G="ALPHABET"))if(K=F[G],typeof K=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(K))oe=K.slice(0,10)=="0123456789",se=K;else throw Error(i+G+" invalid: "+K)}else throw Error(i+"Object expected: "+F);return{DECIMAL_PLACES:B,ROUNDING_MODE:M,EXPONENTIAL_AT:[D,L],RANGE:[Z,W],CRYPTO:U,MODULO_MODE:z,POW_PRECISION:j,FORMAT:J,ALPHABET:se}},ue.isBigNumber=function(F){if(!F||F._isBigNumber!==!0)return!1;if(!ue.DEBUG)return!0;var G,K,q=F.c,Q=F.e,ee=F.s;e:if({}.toString.call(q)=="[object Array]"){if((ee===1||ee===-1)&&Q>=-f&&Q<=f&&Q===s(Q)){if(q[0]===0){if(Q===0&&q.length===1)return!0;break e}if(G=(Q+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G<q.length;G++)if(K=q[G],K<0||K>=o||K!==s(K))break e;if(K!==0)return!0}}}else if(q===null&&Q===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+F)},ue.maximum=ue.max=function(){return Ne(arguments,-1)},ue.minimum=ue.min=function(){return Ne(arguments,1)},ue.random=function(){var F=9007199254740992,G=Math.random()*F&2097151?function(){return s(Math.random()*F)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(K){var q,Q,ee,ne,re,X=0,ie=[],ce=new ue(k);if(K==null?K=B:g(K,0,f),ne=n(K/c),U)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X<ne;)re=q[X]*131072+(q[X+1]>>>11),re>=9e15?(Q=crypto.getRandomValues(new Uint32Array(2)),q[X]=Q[0],q[X+1]=Q[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X<ne;)re=(q[X]&31)*281474976710656+q[X+1]*1099511627776+q[X+2]*4294967296+q[X+3]*16777216+(q[X+4]<<16)+(q[X+5]<<8)+q[X+6],re>=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw U=!1,Error(i+"crypto unavailable");if(!U)for(;X<ne;)re=G(),re<9e15&&(ie[X++]=re%1e14);for(ne=ie[--X],K%=c,ne&&K&&(re=l[c-K],ie[X]=s(ne/re)*re);ie[X]===0;ie.pop(),X--);if(X<0)ie=[ee=0];else{for(ee=-1;ie[0]===0;ie.splice(0,1),ee-=c);for(X=1,re=ie[0];re>=10;re/=10,X++);X<c&&(ee-=c-X)}return ce.e=ee,ce.c=ie,ce}}(),ue.sum=function(){for(var F=1,G=arguments,K=new ue(G[0]);F<G.length;)K=K.plus(G[F++]);return K},R=function(){var F="0123456789";function G(K,q,Q,ee){for(var ne,re=[0],X,ie=0,ce=K.length;ie<ce;){for(X=re.length;X--;re[X]*=q);for(re[0]+=ee.indexOf(K.charAt(ie++)),ne=0;ne<re.length;ne++)re[ne]>Q-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/Q|0,re[ne]%=Q)}return re.reverse()}return function(K,q,Q,ee,ne){var re,X,ie,ce,me,Oe,Pe,qe,Ye=K.indexOf("."),Je=B,et=M;for(Ye>=0&&(ce=j,j=0,K=K.replace(".",""),qe=new ue(q),Oe=qe.pow(K.length-Ye),j=ce,qe.c=G(A(h(Oe.c),Oe.e,"0"),10,Q,F),qe.e=qe.c.length),Pe=G(K,q,Q,ne?(re=se,F):(re=F,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(Ye<0?--ie:(Oe.c=Pe,Oe.e=ie,Oe.s=ee,Oe=I(Oe,qe,Je,et,Q),Pe=Oe.c,me=Oe.r,ie=Oe.e),X=ie+Je+1,Ye=Pe[X],ce=Q/2,me=me||X<0||Pe[X+1]!=null,me=et<4?(Ye!=null||me)&&(et==0||et==(Oe.s<0?3:2)):Ye>ce||Ye==ce&&(et==4||me||et==6&&Pe[X-1]&1||et==(Oe.s<0?8:7)),X<1||!Pe[0])K=me?A(re.charAt(1),-Je,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,me)for(--Q;++Pe[--X]>Q;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(Ye=0,K="";Ye<=ce;K+=re.charAt(Pe[Ye++]));K=A(K,ie,re.charAt(0))}return K}}(),I=function(){function F(q,Q,ee){var ne,re,X,ie,ce=0,me=q.length,Oe=Q%d,Pe=Q/d|0;for(q=q.slice();me--;)X=q[me]%d,ie=q[me]/d|0,ne=Pe*X+ie*Oe,re=Oe*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[me]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,Q,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;re<ee;re++)if(q[re]!=Q[re]){X=q[re]>Q[re]?1:-1;break}return X}function K(q,Q,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]<Q[ee]?1:0,q[ee]=re*ne+q[ee]-Q[ee];for(;!q[0]&&q.length>1;q.splice(0,1));}return function(q,Q,ee,ne,re){var X,ie,ce,me,Oe,Pe,qe,Ye,Je,et,st,ut,rt,Pt,dt,Be,Xe,pt=q.s==Q.s?1:-1,nt=q.c,_t=Q.c;if(!nt||!nt[0]||!_t||!_t[0])return new ue(!q.s||!Q.s||(nt?_t&&nt[0]==_t[0]:!_t)?NaN:nt&&nt[0]==0||!_t?pt*0:pt/0);for(Ye=new ue(pt),Je=Ye.c=[],ie=q.e-Q.e,pt=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(Q.e/c),pt=pt/c|0),ce=0;_t[ce]==(nt[ce]||0);ce++);if(_t[ce]>(nt[ce]||0)&&ie--,pt<0)Je.push(1),me=!0;else{for(Pt=nt.length,Be=_t.length,ce=0,pt+=2,Oe=s(re/(_t[0]+1)),Oe>1&&(_t=F(_t,Oe,re),nt=F(nt,Oe,re),Be=_t.length,Pt=nt.length),rt=Be,et=nt.slice(0,Be),st=et.length;st<Be;et[st++]=0);Xe=_t.slice(),Xe=[0].concat(Xe),dt=_t[0],_t[1]>=re/2&&dt++;do{if(Oe=0,X=G(_t,et,Be,st),X<0){if(ut=et[0],Be!=st&&(ut=ut*re+(et[1]||0)),Oe=s(ut/dt),Oe>1)for(Oe>=re&&(Oe=re-1),Pe=F(_t,Oe,re),qe=Pe.length,st=et.length;G(Pe,et,qe,st)==1;)Oe--,K(Pe,Be<qe?Xe:_t,qe,re),qe=Pe.length,X=1;else Oe==0&&(X=Oe=1),Pe=_t.slice(),qe=Pe.length;if(qe<st&&(Pe=[0].concat(Pe)),K(et,Pe,st,re),st=et.length,X==-1)for(;G(_t,et,Be,st)<1;)Oe++,K(et,Be<st?Xe:_t,st,re),st=et.length}else X===0&&(Oe++,et=[0]);Je[ce++]=Oe,et[0]?et[st++]=nt[rt]||0:(et=[nt[rt]],st=1)}while((rt++<Pt||et[0]!=null)&&pt--);me=et[0]!=null,Je[0]||Je.splice(0,1)}if(re==o){for(ce=1,pt=Je[0];pt>=10;pt/=10,ce++);Fe(Ye,ee+(Ye.e=ce+ie*c-1)+1,ne,me)}else Ye.e=ie,Ye.r=+me;return Ye}}();function Te(F,G,K,q){var Q,ee,ne,re,X;if(K==null?K=M:g(K,0,8),!F.c)return F.toString();if(Q=F.c[0],ne=F.e,G==null)X=h(F.c),X=q==1||q==2&&(ne<=D||ne>=L)?x(X,ne):A(X,ne,"0");else if(F=Fe(new ue(F),G,K),ee=F.e,X=h(F.c),re=X.length,q==1||q==2&&(G<=ee||ee<=D)){for(;re<G;X+="0",re++);X=x(X,ee)}else if(G-=ne+(q===2&&ee>ne),X=A(X,ee,"0"),ee+1>re){if(--G>0)for(X+=".";G--;X+="0");}else if(G+=ee-re,G>0)for(ee+1==re&&(X+=".");G--;X+="0");return F.s<0&&Q?"-"+X:X}function Ne(F,G){for(var K,q,Q=1,ee=new ue(F[0]);Q<F.length;Q++)q=new ue(F[Q]),(!q.s||(K=y(ee,q))===G||K===0&&ee.s===G)&&(ee=q);return ee}function je(F,G,K){for(var q=1,Q=G.length;!G[--Q];G.pop());for(Q=G[0];Q>=10;Q/=10,q++);return(K=q+K*c-1)>W?F.c=F.e=null:K<Z?F.c=[F.e=0]:(F.e=K,F.c=G),F}w=function(){var F=/^(-?)0([xbo])(?=\w[\w.]*$)/i,G=/^([^.]+)\.$/,K=/^\.([^.]+)$/,q=/^-?(Infinity|NaN)$/,Q=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(ee,ne,re,X){var ie,ce=re?ne:ne.replace(Q,"");if(q.test(ce))ee.s=isNaN(ce)?null:ce<0?-1:1;else{if(!re&&(ce=ce.replace(F,function(me,Oe,Pe){return ie=(Pe=Pe.toLowerCase())=="x"?16:Pe=="b"?2:8,!X||X==ie?Oe:me}),X&&(ie=X,ce=ce.replace(G,"$1").replace(K,"0.$1")),ne!=ce))return new ue(ce,ie);if(ue.DEBUG)throw Error(i+"Not a"+(X?" base "+X:"")+" number: "+ne);ee.s=null}ee.c=ee.e=null}}();function Fe(F,G,K,q){var Q,ee,ne,re,X,ie,ce,me=F.c,Oe=l;if(me){e:{for(Q=1,re=me[0];re>=10;re/=10,Q++);if(ee=G-Q,ee<0)ee+=c,ne=G,X=me[ie=0],ce=s(X/Oe[Q-ne-1]%10);else if(ie=n((ee+1)/c),ie>=me.length)if(q){for(;me.length<=ie;me.push(0));X=ce=0,Q=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=me[ie],Q=1;re>=10;re/=10,Q++);ee%=c,ne=ee-c+Q,ce=ne<0?0:s(X/Oe[Q-ne-1]%10)}if(q=q||G<0||me[ie+1]!=null||(ne<0?X:X%Oe[Q-ne-1]),q=K<4?(ce||q)&&(K==0||K==(F.s<0?3:2)):ce>5||ce==5&&(K==4||q||K==6&&(ee>0?ne>0?X/Oe[Q-ne]:0:me[ie-1])%10&1||K==(F.s<0?8:7)),G<1||!me[0])return me.length=0,q?(G-=F.e+1,me[0]=Oe[(c-G%c)%c],F.e=-G||0):me[0]=F.e=0,F;if(ee==0?(me.length=ie,re=1,ie--):(me.length=ie+1,re=Oe[c-ee],me[ie]=ne>0?s(X/Oe[Q-ne]%Oe[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=me[0];ne>=10;ne/=10,ee++);for(ne=me[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(F.e++,me[0]==o&&(me[0]=1));break}else{if(me[ie]+=re,me[ie]!=o)break;me[ie--]=0,re=1}for(ee=me.length;me[--ee]===0;me.pop());}F.e>W?F.c=F.e=null:F.e<Z&&(F.c=[F.e=0])}return F}function ve(F){var G,K=F.e;return K===null?F.toString():(G=h(F.c),G=K<=D||K>=L?x(G,K):A(G,K,"0"),F.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var F=new ue(this);return F.s<0&&(F.s=1),F},N.comparedTo=function(F,G){return y(this,new ue(F,G))},N.decimalPlaces=N.dp=function(F,G){var K,q,Q,ee=this;if(F!=null)return g(F,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F+ee.e+1,G);if(!(K=ee.c))return null;if(q=((Q=K.length-1)-m(this.e/c))*c,Q=K[Q])for(;Q%10==0;Q/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(F,G){return I(this,new ue(F,G),B,M)},N.dividedToIntegerBy=N.idiv=function(F,G){return I(this,new ue(F,G),0,1)},N.exponentiatedBy=N.pow=function(F,G){var K,q,Q,ee,ne,re,X,ie,ce,me=this;if(F=new ue(F),F.c&&!F.isInteger())throw Error(i+"Exponent not an integer: "+ve(F));if(G!=null&&(G=new ue(G)),re=F.e>14,!me.c||!me.c[0]||me.c[0]==1&&!me.e&&me.c.length==1||!F.c||!F.c[0])return ce=new ue(Math.pow(+ve(me),re?F.s*(2-b(F)):+ve(F))),G?ce.mod(G):ce;if(X=F.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&me.isInteger()&&G.isInteger(),q&&(me=me.mod(G))}else{if(F.e>9&&(me.e>0||me.e<-1||(me.e==0?me.c[0]>1||re&&me.c[1]>=24e7:me.c[0]<8e13||re&&me.c[0]<=9999975e7)))return ee=me.s<0&&b(F)?-0:0,me.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(K=new ue(.5),X&&(F.s=1),ie=b(F)):(Q=Math.abs(+ve(F)),ie=Q%2),ce=new ue(k);;){if(ie){if(ce=ce.times(me),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(Q){if(Q=s(Q/2),Q===0)break;ie=Q%2}else if(F=F.times(K),Fe(F,F.e+1,1),F.e>14)ie=b(F);else{if(Q=+ve(F),Q===0)break;ie=Q%2}me=me.times(me),ee?me.c&&me.c.length>ee&&(me.c.length=ee):q&&(me=me.mod(G))}return q?ce:(X&&(ce=k.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(F){var G=new ue(this);return F==null?F=M:g(F,0,8),Fe(G,G.e+1,F)},N.isEqualTo=N.eq=function(F,G){return y(this,new ue(F,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(F,G){return y(this,new ue(F,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(F,G){return(G=y(this,new ue(F,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(F,G){return y(this,new ue(F,G))<0},N.isLessThanOrEqualTo=N.lte=function(F,G){return(G=y(this,new ue(F,G)))===-1||G===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(F,G){var K,q,Q,ee,ne=this,re=ne.s;if(F=new ue(F,G),G=F.s,!re||!G)return new ue(NaN);if(re!=G)return F.s=-G,ne.plus(F);var X=ne.e/c,ie=F.e/c,ce=ne.c,me=F.c;if(!X||!ie){if(!ce||!me)return ce?(F.s=-G,F):new ue(me?ne:NaN);if(!ce[0]||!me[0])return me[0]?(F.s=-G,F):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,Q=ce):(ie=X,Q=me),Q.reverse(),G=re;G--;Q.push(0));Q.reverse()}else for(q=(ee=(re=ce.length)<(G=me.length))?re:G,re=G=0;G<q;G++)if(ce[G]!=me[G]){ee=ce[G]<me[G];break}if(ee&&(Q=ce,ce=me,me=Q,F.s=-F.s),G=(q=me.length)-(K=ce.length),G>0)for(;G--;ce[K++]=0);for(G=o-1;q>re;){if(ce[--q]<me[q]){for(K=q;K&&!ce[--K];ce[K]=G);--ce[K],ce[q]+=o}ce[q]-=me[q]}for(;ce[0]==0;ce.splice(0,1),--ie);return ce[0]?je(F,ce,ie):(F.s=M==3?-1:1,F.c=[F.e=0],F)},N.modulo=N.mod=function(F,G){var K,q,Q=this;return F=new ue(F,G),!Q.c||!F.s||F.c&&!F.c[0]?new ue(NaN):!F.c||Q.c&&!Q.c[0]?new ue(Q):(z==9?(q=F.s,F.s=1,K=I(Q,F,0,3),F.s=q,K.s*=q):K=I(Q,F,0,z),F=Q.minus(K.times(F)),!F.c[0]&&z==1&&(F.s=Q.s),F)},N.multipliedBy=N.times=function(F,G){var K,q,Q,ee,ne,re,X,ie,ce,me,Oe,Pe,qe,Ye,Je,et=this,st=et.c,ut=(F=new ue(F,G)).c;if(!st||!ut||!st[0]||!ut[0])return!et.s||!F.s||st&&!st[0]&&!ut||ut&&!ut[0]&&!st?F.c=F.e=F.s=null:(F.s*=et.s,!st||!ut?F.c=F.e=null:(F.c=[0],F.e=0)),F;for(q=m(et.e/c)+m(F.e/c),F.s*=et.s,X=st.length,me=ut.length,X<me&&(qe=st,st=ut,ut=qe,Q=X,X=me,me=Q),Q=X+me,qe=[];Q--;qe.push(0));for(Ye=o,Je=d,Q=me;--Q>=0;){for(K=0,Oe=ut[Q]%Je,Pe=ut[Q]/Je|0,ne=X,ee=Q+ne;ee>Q;)ie=st[--ne]%Je,ce=st[ne]/Je|0,re=Pe*ie+ce*Oe,ie=Oe*ie+re%Je*Je+qe[ee]+K,K=(ie/Ye|0)+(re/Je|0)+Pe*ce,qe[ee--]=ie%Ye;qe[ee]=K}return K?++q:qe.splice(0,1),je(F,qe,q)},N.negated=function(){var F=new ue(this);return F.s=-F.s||null,F},N.plus=function(F,G){var K,q=this,Q=q.s;if(F=new ue(F,G),G=F.s,!Q||!G)return new ue(NaN);if(Q!=G)return F.s=-G,q.minus(F);var ee=q.e/c,ne=F.e/c,re=q.c,X=F.c;if(!ee||!ne){if(!re||!X)return new ue(Q/0);if(!re[0]||!X[0])return X[0]?F:new ue(re[0]?q:Q*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),Q=ee-ne){for(Q>0?(ne=ee,K=X):(Q=-Q,K=re),K.reverse();Q--;K.push(0));K.reverse()}for(Q=re.length,G=X.length,Q-G<0&&(K=X,X=re,re=K,G=Q),Q=0;G;)Q=(re[--G]=re[G]+X[G]+Q)/o|0,re[G]=o===re[G]?0:re[G]%o;return Q&&(re=[Q].concat(re),++ne),je(F,re,ne)},N.precision=N.sd=function(F,G){var K,q,Q,ee=this;if(F!=null&&F!==!!F)return g(F,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F,G);if(!(K=ee.c))return null;if(Q=K.length-1,q=Q*c+1,Q=K[Q]){for(;Q%10==0;Q/=10,q--);for(Q=K[0];Q>=10;Q/=10,q++);}return F&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(F){return g(F,-u,u),this.times("1e"+F)},N.squareRoot=N.sqrt=function(){var F,G,K,q,Q,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=B+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+ve(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),K=new ue(G)):K=new ue(re+""),K.c[0]){for(X=K.e,re=X+ie,re<3&&(re=0);;)if(Q=K,K=ce.times(Q.plus(I(ee,Q,ie,1))),h(Q.c).slice(0,re)===(G=h(K.c)).slice(0,re))if(K.e<X&&--re,G=G.slice(re-3,re+1),G=="9999"||!q&&G=="4999"){if(!q&&(Fe(Q,Q.e+B+2,0),Q.times(Q).eq(ee))){K=Q;break}ie+=4,re+=4,q=1}else{(!+G||!+G.slice(1)&&G.charAt(0)=="5")&&(Fe(K,K.e+B+2,1),F=!K.times(K).eq(ee));break}}return Fe(K,K.e+B+1,M,F)},N.toExponential=function(F,G){return F!=null&&(g(F,0,f),F++),Te(this,F,G,1)},N.toFixed=function(F,G){return F!=null&&(g(F,0,f),F=F+this.e+1),Te(this,F,G)},N.toFormat=function(F,G,K){var q,Q=this;if(K==null)F!=null&&G&&typeof G=="object"?(K=G,G=null):F&&typeof F=="object"?(K=F,F=G=null):K=J;else if(typeof K!="object")throw Error(i+"Argument not an object: "+K);if(q=Q.toFixed(F,G),Q.c){var ee,ne=q.split("."),re=+K.groupSize,X=+K.secondaryGroupSize,ie=K.groupSeparator||"",ce=ne[0],me=ne[1],Oe=Q.s<0,Pe=Oe?ce.slice(1):ce,qe=Pe.length;if(X&&(ee=re,re=X,X=ee,qe-=ee),re>0&&qe>0){for(ee=qe%re||re,ce=Pe.substr(0,ee);ee<qe;ee+=re)ce+=ie+Pe.substr(ee,re);X>0&&(ce+=ie+Pe.slice(ee)),Oe&&(ce="-"+ce)}q=me?ce+(K.decimalSeparator||"")+((X=+K.fractionGroupSize)?me.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(K.fractionGroupSeparator||"")):me):ce}return(K.prefix||"")+q+(K.suffix||"")},N.toFraction=function(F){var G,K,q,Q,ee,ne,re,X,ie,ce,me,Oe,Pe=this,qe=Pe.c;if(F!=null&&(re=new ue(F),!re.isInteger()&&(re.c||re.s!==1)||re.lt(k)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+ve(re));if(!qe)return new ue(Pe);for(G=new ue(k),ie=K=new ue(k),q=X=new ue(k),Oe=h(qe),ee=G.e=Oe.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],F=!F||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Oe),X.c[0]=0;ce=I(re,G,0,1),Q=K.plus(ce.times(q)),Q.comparedTo(F)!=1;)K=q,q=Q,ie=X.plus(ce.times(Q=ie)),X=Q,G=re.minus(ce.times(Q=G)),re=Q;return Q=I(F.minus(K),q,0,1),X=X.plus(Q.times(ie)),K=K.plus(Q.times(q)),X.s=ie.s=Pe.s,ee=ee*2,me=I(ie,q,ee,M).minus(Pe).abs().comparedTo(I(X,K,ee,M).minus(Pe).abs())<1?[ie,q]:[X,K],W=ne,me},N.toNumber=function(){return+ve(this)},N.toPrecision=function(F,G){return F!=null&&g(F,1,f),Te(this,F,G,2)},N.toString=function(F){var G,K=this,q=K.s,Q=K.e;return Q===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(F==null?G=Q<=D||Q>=L?x(h(K.c),Q):A(h(K.c),Q,"0"):F===10&&oe?(K=Fe(new ue(K),B+Q+1,M),G=A(h(K.c),K.e,"0")):(g(F,2,se.length,"Base"),G=R(A(h(K.c),Q,"0"),10,F,q,!0)),q<0&&K.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return ve(this)},N._isBigNumber=!0,S!=null&&ue.set(S),ue}function m(S){var I=S|0;return S>0||S===I?I:I-1}function h(S){for(var I,R,w=1,N=S.length,k=S[0]+"";w<N;){for(I=S[w++]+"",R=c-I.length;R--;I="0"+I);k+=I}for(N=k.length;k.charCodeAt(--N)===48;);return k.slice(0,N+1||1)}function y(S,I){var R,w,N=S.c,k=I.c,B=S.s,M=I.s,D=S.e,L=I.e;if(!B||!M)return null;if(R=N&&!N[0],w=k&&!k[0],R||w)return R?w?0:-M:B;if(B!=M)return B;if(R=B<0,w=D==L,!N||!k)return w?0:!N^R?1:-1;if(!w)return D>L^R?1:-1;for(M=(D=N.length)<(L=k.length)?D:L,B=0;B<M;B++)if(N[B]!=k[B])return N[B]>k[B]^R?1:-1;return D==L?0:D>L^R?1:-1}function g(S,I,R,w){if(S<I||S>R||S!==s(S))throw Error(i+(w||"Argument")+(typeof S=="number"?S<I||S>R?" out of range: ":" not an integer: ":" not a primitive number: ")+String(S))}function b(S){var I=S.c.length-1;return m(S.e/c)==I&&S.c[I]%2!=0}function x(S,I){return(S.length>1?S.charAt(0)+"."+S.slice(1):S)+(I<0?"e":"e+")+I}function A(S,I,R){var w,N;if(I<0){for(N=R+".";++I;N+=R);S=N+S}else if(w=S.length,++I>w){for(N=R,I-=w;--I;N+=R);S+=N}else I<w&&(S=S.slice(0,I)+"."+S.slice(I));return S}e=p(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof vB<"u"&&vB.exports?vB.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(kWe)});var LWe=_((SXr,BWe)=>{var PWe=OV(),DWe=BWe.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,p,m,h=n,y,g=l[u],b=g!=null&&(g instanceof PWe||PWe.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(u)),typeof a=="function"&&(g=a.call(l,u,g)),typeof g){case"string":return b?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,y=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d<m;d+=1)y[d]=c(d,g)||"null";return p=y.length===0?"[]":n?`[
|
|
`+n+y.join(`,
|
|
`+n)+`
|
|
`+h+"]":"["+y.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&&y.push(o(f)+(n?": ":":")+p));else Object.keys(g).forEach(function(x){var A=c(x,g);A&&y.push(o(x)+(n?": ":":")+A)});return p=y.length===0?"{}":n?`{
|
|
`+n+y.join(`,
|
|
`+n)+`
|
|
`+h+"}":"{"+y.join(",")+"}",n=h,p}}typeof DWe.stringify!="function"&&(DWe.stringify=function(u,l,d){var f;if(n="",s="",typeof d=="number")for(f=0;f<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 WWe=_((IXr,MWe)=>{var SB=null,_cr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,Ecr=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,vcr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,y="";for(n==="-"&&(y="-",o("-"));n>="0"&&n<="9";)y+=n,o();if(n===".")for(y+=".";o()&&n>="0"&&n<="9";)y+=n;if(n==="e"||n==="E")for(y+=n,o(),(n==="-"||n==="+")&&(y+=n,o());n>="0"&&n<="9";)y+=n,o();if(h=+y,!isFinite(h))a("Bad number");else return SB==null&&(SB=OV()),y.length>15?e.storeAsString?y:e.useNativeBigInt?BigInt(y):new SB(y):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new SB(h):h},u=function(){var h,y,g="",b;if(n==='"')for(var x=r;o();){if(n==='"')return r-1>x&&(g+=i.substring(x,r-1)),o(),g;if(n==="\\"){if(r-1>x&&(g+=i.substring(x,r-1)),o(),n==="u"){for(b=0,y=0;y<4&&(h=parseInt(o(),16),!!isFinite(h));y+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;x=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,p=function(){var h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,y=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),y;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(y,h)&&a('Duplicate key "'+h+'"'),_cr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():y[h]=f():Ecr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():y[h]=f():y[h]=f(),l(),n==="}")return o("}"),y;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,y){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof y=="function"?function b(x,A){var S,I,R=x[A];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){I=b(R,w),I!==void 0?R[w]=I:delete R[w]}),y.call(x,A,R)}({"":g},""):g}};MWe.exports=vcr});var FWe=_((CXr,IB)=>{var $We=LWe().stringify,UWe=WWe();IB.exports=function(t){return{parse:UWe(t),stringify:$We}};IB.exports.parse=UWe();IB.exports.stringify=$We});function w$e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function R$e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?w$e(p[1]):null,y=p[2]?w$e(p[2]):null;return{anime:m,season:h,episode:y,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function SY(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),T$e[c]&&i.add(T$e[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of t)if(d.anime===e){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function IY(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),y=parseFloat(h[0]);if(Number.isFinite(y))return y}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let y=h.p.split(","),g=parseFloat(y[0]);Number.isFinite(g)&&(y[0]=f(g).toFixed(2),h.p=y.join(","))}if(h.t!==void 0&&h.t!==null){let y=Number(h.t);Number.isFinite(y)&&(h.t=f(y))}if(h.progress!==void 0&&h.progress!==null){let y=Number(h.progress);Number.isFinite(y)&&(h.progress=p(y))}if(h.timepoint!==void 0&&h.timepoint!==null){let y=Number(h.timepoint);Number.isFinite(y)&&(h.timepoint=f(y))}return h})}var T$e,CY=gr(()=>{T$e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var Ef,N$e=gr(()=>{CY();Ef=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002
|
|
|
|
\u8F93\u5165\u5B57\u6BB5\u8BF4\u660E\uFF1A
|
|
- title: \u67E5\u8BE2\u6807\u9898
|
|
- season: \u5B63\u6570\uFF08\u53EF\u4E3A null\uFF09
|
|
- episode: \u96C6\u6570\uFF08\u53EF\u4E3A null\uFF09
|
|
- year: \u5E74\u4EFD\uFF08\u53EF\u4E3A null\uFF09
|
|
- dynamicPlatformOrder: \u5E73\u53F0\u504F\u597D\u5217\u8868\uFF08\u53EF\u4E3A null\uFF09
|
|
- preferAnimeId: \u504F\u597D\u52A8\u6F2B ID\uFF08\u53EF\u4E3A null\uFF09
|
|
- animes: \u5019\u9009\u52A8\u6F2B\u5217\u8868
|
|
- animeId: \u52A8\u6F2Bid
|
|
animeTitle: \u52A8\u6F2B\u6807\u9898\uFF0C(\u5E74\u4EFD)\u524D\u9762\u624D\u662F\u771F\u5B9E\u7684\u6807\u9898
|
|
aliases: \u52A8\u6F2B\u6807\u9898\u7684\u522B\u540D\uFF0C\u89C6\u60C5\u51B5\u53EF\u4EE5\u4F5C\u4E3A(\u52A8\u6F2B\u6807\u9898)\u770B\u5F85
|
|
type: \u7C7B\u578B
|
|
startDate: \u53D1\u5E03\u65E5\u671F\uFF0C\u6709\u5E74\u4EFD
|
|
episodeCount: \u603B\u96C6\u6570
|
|
source: \u5F39\u5E55\u6765\u6E90
|
|
|
|
\u5339\u914D\u89C4\u5219 (\u6309\u4F18\u5148\u7EA7\u6392\u5E8F):
|
|
1. \u5982\u679CpreferAnimeId\u975E\u7A7A\uFF0C\u4E14animes\u5B58\u5728\u8BE5animeId\uFF0C\u5219\u8FD4\u56DE\u8BE5id\u5BF9\u5E94\u7684anime\u548Cepisode
|
|
2. \u6807\u9898\u76F8\u4F3C\u5EA6: \u4F18\u5148\u5339\u914D\u6807\u9898\u76F8\u4F3C\u5EA6\u6700\u9AD8\u7684\u6761\u76EE
|
|
3. \u5B63\u5EA6\u4E25\u683C\u5339\u914D: \u5982\u679C\u6307\u5B9A\u4E86\u5B63\u5EA6,\u5FC5\u987B\u4E25\u683C\u5339\u914D
|
|
4. \u7C7B\u578B\u5339\u914D: episode\u4E3A\u7A7A\u5219\u4F18\u5148\u5339\u914D\u7535\u5F71\uFF0C\u975E\u7A7A\u5219\u5339\u914D\u7535\u89C6\u5267\u7B49
|
|
5. \u5E74\u4EFD\u63A5\u8FD1: \u4F18\u5148\u9009\u62E9\u5E74\u4EFD\u63A5\u8FD1\u7684
|
|
6. \u5E73\u53F0\u5339\u914D\uFF1A\u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C\u4E14dynamicPlatformOrder\u975E\u7A7A\uFF0C\u5219\u4ECE\u524D\u5F80\u540E\u9009\u62E9\u76F8\u5BF9\u5E94\u7684\u5E73\u53F0
|
|
7. \u96C6\u6570\u5B8C\u6574: \u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C,\u9009\u62E9\u96C6\u6570\u6700\u5B8C\u6574\u7684
|
|
|
|
\u8BF7\u5206\u6790\u54EA\u4E2A\u52A8\u6F2B\u6700\u7B26\u5408\u67E5\u8BE2\u6761\u4EF6\uFF0C\u5982\u679C\u6307\u5B9A\u4E86\u5B63\u6570\u548C\u96C6\u6570\uFF0C\u8BF7\u4E5F\u8FD4\u56DE\u5BF9\u5E94\u7684\u96C6\u4FE1\u606F\u3002
|
|
\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B JSON \u683C\u5F0F\u8FD4\u56DE\u7ED3\u679C\uFF0C\u4E0D\u8981\u5305\u542B\u4EFB\u4F55\u5176\u4ED6\u5185\u5BB9\uFF1A
|
|
{
|
|
"animeIndex": \u5339\u914D\u7684\u52A8\u6F2B\u5728\u5217\u8868\u4E2D\u7684\u7D22\u5F15(\u4ECE0\u5F00\u59CB) \u6216 null
|
|
}
|
|
|
|
\u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A
|
|
{
|
|
"animeIndex": null
|
|
}`;static get(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(y=>y.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(y=>y.trim()),l="block";else continue;if(!c||!u)continue;let d=y=>{let g=y.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let y=o.split(",");for(let g of y){if(!g.trim())continue;let[b,x]=g.split(">").map(R=>R.trim());if(!b||!x)continue;let A=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},S=A(b),I=A(x);S&&I&&m.push({sec:S,prim:I})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?<!(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(y=>Number(y)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(e={}){this.env=e;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002
|
|
\u683C\u5F0F\uFF1A\u6E901&\u6E902&\u6E903 \uFF0C\u591A\u7EC4\u7528\u9017\u53F7\u5206\u9694\u3002
|
|
\u793A\u4F8B\uFF1Adandan&animeko&bahamut,bilibili&animeko,dandan`},CUSTOM_MERGE_RULES:{category:"source",type:"text",sources:this.MERGE_ALLOWED_SOURCES,description:`\u5408\u5E76\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u5B9A\u4E49\u6E90\u5408\u5E76\u884C\u4E3A\u3002
|
|
\u683C\u5F0F1(\u5408\u5E76)\uFF1A\u526F\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 -> \u4E3B\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 | E\u526F\u6E90\u96C6\u6570>E\u4E3B\u6E90\u96C6\u6570
|
|
\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:R$e(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",3,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var _g,O,kt=gr(()=>{N$e();_g={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.14",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(t={}){return this.env=t,this.envs=Ef.load(this.env),this.originalEnvVars=Object.fromEntries(Ef.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Ef.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=Ef.load(this.env),this.originalEnvVars=Object.fromEntries(Ef.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Ef.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return _g.getConfig()[e]},set(t,e,r){return _g.getConfig()[e]=r,!0},has(t,e){return e in _g.getConfig()},ownKeys(t){return Reflect.ownKeys(_g.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(_g.getConfig(),e)}})});function E(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return O$e(l)}else return typeof u=="string"?O$e(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function O$e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");e=e.replace(a,i)}}return e}function k$e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,`
|
|
`)}catch{return t}}var vt=gr(()=>{kt()});function qlr(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l<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 P$e,D$e=gr(()=>{P$e=qlr});var L$e=_((GB,B$e)=>{(function(t,e){typeof GB=="object"&&typeof B$e<"u"?e(GB):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(GB,function(t){"use strict";function e(){}function r(v){return typeof v=="object"&&v!==null||typeof v=="function"}let n=e;function s(v,T){try{Object.defineProperty(v,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(v){return new i(v)}function u(v){return c(T=>T(v))}function l(v){return o(v)}function d(v,T,P){return a.call(v,T,P)}function f(v,T,P){d(d(v,T,P),void 0,n)}function p(v,T){f(v,T)}function m(v,T){f(v,void 0,T)}function h(v,T,P){return d(v,T,P)}function y(v){d(v,void 0,n)}let g=v=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=P=>d(T,P)}return g(v)};function b(v,T,P){if(typeof v!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(v,T,P)}function x(v,T,P){try{return u(b(v,T,P))}catch(V){return l(V)}}let A=16384;class S{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(T){let P=this._back,V=P;P._elements.length===A-1&&(V={_elements:[],_next:void 0}),P._elements.push(T),V!==P&&(this._back=V,P._next=V),++this._size}shift(){let T=this._front,P=T,V=this._cursor,ae=V+1,ge=T._elements,be=ge[V];return ae===A&&(P=T._next,ae=0),--this._size,this._cursor=ae,T!==P&&(this._front=P),ge[V]=void 0,be}forEach(T){let P=this._cursor,V=this._front,ae=V._elements;for(;(P!==ae.length||V._next!==void 0)&&!(P===ae.length&&(V=V._next,ae=V._elements,P=0,ae.length===0));)T(ae[P]),++P}peek(){let T=this._front,P=this._cursor;return T._elements[P]}}let I=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),k=Symbol("[[ReleaseSteps]]");function B(v,T){v._ownerReadableStream=T,T._reader=v,T._state==="readable"?Z(v):T._state==="closed"?U(v):W(v,T._storedError)}function M(v,T){let P=v._ownerReadableStream;return zc(P,T)}function D(v){let T=v._ownerReadableStream;T._state==="readable"?z(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[k](),T._reader=void 0,v._ownerReadableStream=void 0}function L(v){return new TypeError("Cannot "+v+" a stream using a released reader")}function Z(v){v._closedPromise=c((T,P)=>{v._closedPromise_resolve=T,v._closedPromise_reject=P})}function W(v,T){Z(v),z(v,T)}function U(v){Z(v),J(v)}function z(v,T){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(T),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}function j(v,T){W(v,T)}function J(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}let se=Number.isFinite||function(v){return typeof v=="number"&&isFinite(v)},oe=Math.trunc||function(v){return v<0?Math.ceil(v):Math.floor(v)};function ue(v){return typeof v=="object"||typeof v=="function"}function Te(v,T){if(v!==void 0&&!ue(v))throw new TypeError(`${T} is not an object.`)}function Ne(v,T){if(typeof v!="function")throw new TypeError(`${T} is not a function.`)}function je(v){return typeof v=="object"&&v!==null||typeof v=="function"}function Fe(v,T){if(!je(v))throw new TypeError(`${T} is not an object.`)}function ve(v,T,P){if(v===void 0)throw new TypeError(`Parameter ${T} is required in '${P}'.`)}function F(v,T,P){if(v===void 0)throw new TypeError(`${T} is required in '${P}'.`)}function G(v){return Number(v)}function K(v){return v===0?0:v}function q(v){return K(oe(v))}function Q(v,T){let V=Number.MAX_SAFE_INTEGER,ae=Number(v);if(ae=K(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>V)throw new TypeError(`${T} is outside the accepted range of 0 to ${V}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(v,T){if(!Sp(v))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(v){return new me(v)}function re(v,T){v._reader._readRequests.push(T)}function X(v,T,P){let ae=v._reader._readRequests.shift();P?ae._closeSteps():ae._chunkSteps(T)}function ie(v){return v._reader._readRequests.length}function ce(v){let T=v._reader;return!(T===void 0||!Oe(T))}class me{constructor(T){if(ve(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),Ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");B(this,T),this._readRequests=new S}get closed(){return Oe(this)?this._closedPromise:l(Je("closed"))}cancel(T=void 0){return Oe(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(Je("cancel"))}read(){if(!Oe(this))return l(Je("read"));if(this._ownerReadableStream===void 0)return l(L("read from"));let T,P,V=c((ge,be)=>{T=ge,P=be});return Pe(this,{_chunkSteps:ge=>T({value:ge,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:ge=>P(ge)}),V}releaseLock(){if(!Oe(this))throw Je("releaseLock");this._ownerReadableStream!==void 0&&qe(this)}}Object.defineProperties(me.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(me.prototype.cancel,"cancel"),s(me.prototype.read,"read"),s(me.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(me.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Oe(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readRequests")?!1:v instanceof me}function Pe(v,T){let P=v._ownerReadableStream;P._disturbed=!0,P._state==="closed"?T._closeSteps():P._state==="errored"?T._errorSteps(P._storedError):P._readableStreamController[N](T)}function qe(v){D(v);let T=new TypeError("Reader was released");Ye(v,T)}function Ye(v,T){let P=v._readRequests;v._readRequests=new S,P.forEach(V=>{V._errorSteps(T)})}function Je(v){return new TypeError(`ReadableStreamDefaultReader.prototype.${v} can only be used on a ReadableStreamDefaultReader`)}let et=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class st{constructor(T,P){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=P}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let P=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,P,P):P()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,P,V,ae=c((be,Ge)=>{P=be,V=Ge});return Pe(T,{_chunkSteps:be=>{this._ongoingPromise=void 0,g(()=>P({value:be,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),P({value:void 0,done:!0})},_errorSteps:be=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),V(be)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let P=this._reader;if(!this._preventCancel){let V=M(P,T);return D(P),h(V,()=>({value:T,done:!0}))}return D(P),u({value:T,done:!0})}}let ut={next(){return Pt(this)?this._asyncIteratorImpl.next():l(dt("next"))},return(v){return Pt(this)?this._asyncIteratorImpl.return(v):l(dt("return"))}};Object.setPrototypeOf(ut,et);function rt(v,T){let P=ne(v),V=new st(P,T),ae=Object.create(ut);return ae._asyncIteratorImpl=V,ae}function Pt(v){if(!r(v)||!Object.prototype.hasOwnProperty.call(v,"_asyncIteratorImpl"))return!1;try{return v._asyncIteratorImpl instanceof st}catch{return!1}}function dt(v){return new TypeError(`ReadableStreamAsyncIterator.${v} can only be used on a ReadableSteamAsyncIterator`)}let Be=Number.isNaN||function(v){return v!==v};var Xe,pt,nt;function _t(v){return v.slice()}function yn(v,T,P,V,ae){new Uint8Array(v).set(new Uint8Array(P,V,ae),T)}let It=v=>(typeof v.transfer=="function"?It=T=>T.transfer():typeof structuredClone=="function"?It=T=>structuredClone(T,{transfer:[T]}):It=T=>T,It(v)),wr=v=>(typeof v.detached=="boolean"?wr=T=>T.detached:wr=T=>T.byteLength===0,wr(v));function js(v,T,P){if(v.slice)return v.slice(T,P);let V=P-T,ae=new ArrayBuffer(V);return yn(ae,0,v,T,V),ae}function Lr(v,T){let P=v[T];if(P!=null){if(typeof P!="function")throw new TypeError(`${String(T)} is not a function`);return P}}function Qs(v){let T={[Symbol.iterator]:()=>v.iterator},P=async function*(){return yield*T}(),V=P.next;return{iterator:P,nextMethod:V,done:!1}}let Hs=(nt=(Xe=Symbol.asyncIterator)!==null&&Xe!==void 0?Xe:(pt=Symbol.for)===null||pt===void 0?void 0:pt.call(Symbol,"Symbol.asyncIterator"))!==null&&nt!==void 0?nt:"@@asyncIterator";function bs(v,T="sync",P){if(P===void 0)if(T==="async"){if(P=Lr(v,Hs),P===void 0){let ge=Lr(v,Symbol.iterator),be=bs(v,"sync",ge);return Qs(be)}}else P=Lr(v,Symbol.iterator);if(P===void 0)throw new TypeError("The object is not iterable");let V=b(P,v,[]);if(!r(V))throw new TypeError("The iterator method must return an object");let ae=V.next;return{iterator:V,nextMethod:ae,done:!1}}function Gs(v){let T=b(v.nextMethod,v.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Ku(v){return!!v.done}function Co(v){return v.value}function Hc(v){return!(typeof v!="number"||Be(v)||v<0)}function La(v){let T=js(v.buffer,v.byteOffset,v.byteOffset+v.byteLength);return new Uint8Array(T)}function An(v){let T=v._queue.shift();return v._queueTotalSize-=T.size,v._queueTotalSize<0&&(v._queueTotalSize=0),T.value}function Ma(v,T,P){if(!Hc(P)||P===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");v._queue.push({value:T,size:P}),v._queueTotalSize+=P}function Ed(v){return v._queue.peek().value}function To(v){v._queue=new S,v._queueTotalSize=0}function tA(v){return v===DataView}function fW(v){return tA(v.constructor)}function Iyt(v){return tA(v)?1:v.BYTES_PER_ELEMENT}class Dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!pW(this))throw AW("view");return this._view}respond(T){if(!pW(this))throw AW("respond");if(ve(T,1,"respond"),T=Q(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(wr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");XR(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!pW(this))throw AW("respondWithNewView");if(ve(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(wr(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");ZR(this._associatedReadableByteStreamController,T)}}Object.defineProperties(Dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(Dm.prototype.respond,"respond"),s(Dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class vd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Bm(this))throw Z_("byobRequest");return yW(this)}get desiredSize(){if(!Bm(this))throw Z_("desiredSize");return Bpe(this)}close(){if(!Bm(this))throw Z_("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);X_(this)}enqueue(T){if(!Bm(this))throw Z_("enqueue");if(ve(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let P=this._controlledReadableByteStream._state;if(P!=="readable")throw new TypeError(`The stream (in ${P} state) is not in the readable state and cannot be enqueued to`);JR(this,T)}error(T=void 0){if(!Bm(this))throw Z_("error");Zo(this,T)}[w](T){Cpe(this),To(this);let P=this._cancelAlgorithm(T);return YR(this),P}[N](T){let P=this._controlledReadableByteStream;if(this._queueTotalSize>0){Dpe(this,T);return}let V=this._autoAllocateChunkSize;if(V!==void 0){let ae;try{ae=new ArrayBuffer(V)}catch(be){T._errorSteps(be);return}let ge={buffer:ae,bufferByteLength:V,byteOffset:0,byteLength:V,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(ge)}re(P,T),Lm(this)}[k](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new S,this._pendingPullIntos.push(T)}}}Object.defineProperties(vd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(vd.prototype.close,"close"),s(vd.prototype.enqueue,"enqueue"),s(vd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Bm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableByteStream")?!1:v instanceof vd}function pW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_associatedReadableByteStreamController")?!1:v instanceof Dm}function Lm(v){if(!Nyt(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let P=v._pullAlgorithm();f(P,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,Lm(v)),null),V=>(Zo(v,V),null))}function Cpe(v){hW(v),v._pendingPullIntos=new S}function mW(v,T){let P=!1;v._state==="closed"&&(P=!0);let V=Tpe(T);T.readerType==="default"?X(v,V,P):Lyt(v,V,P)}function Tpe(v){let T=v.bytesFilled,P=v.elementSize;return new v.viewConstructor(v.buffer,v.byteOffset,T/P)}function VR(v,T,P,V){v._queue.push({buffer:T,byteOffset:P,byteLength:V}),v._queueTotalSize+=V}function wpe(v,T,P,V){let ae;try{ae=js(T,P,P+V)}catch(ge){throw Zo(v,ge),ge}VR(v,ae,0,V)}function Rpe(v,T){T.bytesFilled>0&&wpe(v,T.buffer,T.byteOffset,T.bytesFilled),rA(v)}function Npe(v,T){let P=Math.min(v._queueTotalSize,T.byteLength-T.bytesFilled),V=T.bytesFilled+P,ae=P,ge=!1,be=V%T.elementSize,Ge=V-be;Ge>=T.minimumFill&&(ae=Ge-T.bytesFilled,ge=!0);let Ct=v._queue;for(;ae>0;){let ft=Ct.peek(),Lt=Math.min(ae,ft.byteLength),tr=T.byteOffset+T.bytesFilled;yn(T.buffer,tr,ft.buffer,ft.byteOffset,Lt),ft.byteLength===Lt?Ct.shift():(ft.byteOffset+=Lt,ft.byteLength-=Lt),v._queueTotalSize-=Lt,Ope(v,Lt,T),ae-=Lt}return ge}function Ope(v,T,P){P.bytesFilled+=T}function kpe(v){v._queueTotalSize===0&&v._closeRequested?(YR(v),iE(v._controlledReadableByteStream)):Lm(v)}function hW(v){v._byobRequest!==null&&(v._byobRequest._associatedReadableByteStreamController=void 0,v._byobRequest._view=null,v._byobRequest=null)}function gW(v){for(;v._pendingPullIntos.length>0;){if(v._queueTotalSize===0)return;let T=v._pendingPullIntos.peek();Npe(v,T)&&(rA(v),mW(v._controlledReadableByteStream,T))}}function Cyt(v){let T=v._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(v._queueTotalSize===0)return;let P=T._readRequests.shift();Dpe(v,P)}}function Tyt(v,T,P,V){let ae=v._controlledReadableByteStream,ge=T.constructor,be=Iyt(ge),{byteOffset:Ge,byteLength:Ct}=T,ft=P*be,Lt;try{Lt=It(T.buffer)}catch(cn){V._errorSteps(cn);return}let tr={buffer:Lt,bufferByteLength:Lt.byteLength,byteOffset:Ge,byteLength:Ct,bytesFilled:0,minimumFill:ft,elementSize:be,viewConstructor:ge,readerType:"byob"};if(v._pendingPullIntos.length>0){v._pendingPullIntos.push(tr),Wpe(ae,V);return}if(ae._state==="closed"){let cn=new ge(tr.buffer,tr.byteOffset,0);V._closeSteps(cn);return}if(v._queueTotalSize>0){if(Npe(v,tr)){let cn=Tpe(tr);kpe(v),V._chunkSteps(cn);return}if(v._closeRequested){let cn=new TypeError("Insufficient bytes to fill elements in the given buffer");Zo(v,cn),V._errorSteps(cn);return}}v._pendingPullIntos.push(tr),Wpe(ae,V),Lm(v)}function wyt(v,T){T.readerType==="none"&&rA(v);let P=v._controlledReadableByteStream;if(xW(P))for(;$pe(P)>0;){let V=rA(v);mW(P,V)}}function Ryt(v,T,P){if(Ope(v,T,P),P.readerType==="none"){Rpe(v,P),gW(v);return}if(P.bytesFilled<P.minimumFill)return;rA(v);let V=P.bytesFilled%P.elementSize;if(V>0){let ae=P.byteOffset+P.bytesFilled;wpe(v,P.buffer,ae-V,V)}P.bytesFilled-=V,mW(v._controlledReadableByteStream,P),gW(v)}function Ppe(v,T){let P=v._pendingPullIntos.peek();hW(v),v._controlledReadableByteStream._state==="closed"?wyt(v,P):Ryt(v,T,P),Lm(v)}function rA(v){return v._pendingPullIntos.shift()}function Nyt(v){let T=v._controlledReadableByteStream;return T._state!=="readable"||v._closeRequested||!v._started?!1:!!(ce(T)&&ie(T)>0||xW(T)&&$pe(T)>0||Bpe(v)>0)}function YR(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0}function X_(v){let T=v._controlledReadableByteStream;if(!(v._closeRequested||T._state!=="readable")){if(v._queueTotalSize>0){v._closeRequested=!0;return}if(v._pendingPullIntos.length>0){let P=v._pendingPullIntos.peek();if(P.bytesFilled%P.elementSize!==0){let V=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Zo(v,V),V}}YR(v),iE(T)}}function JR(v,T){let P=v._controlledReadableByteStream;if(v._closeRequested||P._state!=="readable")return;let{buffer:V,byteOffset:ae,byteLength:ge}=T;if(wr(V))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let be=It(V);if(v._pendingPullIntos.length>0){let Ge=v._pendingPullIntos.peek();if(wr(Ge.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");hW(v),Ge.buffer=It(Ge.buffer),Ge.readerType==="none"&&Rpe(v,Ge)}if(ce(P))if(Cyt(v),ie(P)===0)VR(v,be,ae,ge);else{v._pendingPullIntos.length>0&&rA(v);let Ge=new Uint8Array(be,ae,ge);X(P,Ge,!1)}else xW(P)?(VR(v,be,ae,ge),gW(v)):VR(v,be,ae,ge);Lm(v)}function Zo(v,T){let P=v._controlledReadableByteStream;P._state==="readable"&&(Cpe(v),To(v),YR(v),u0e(P,T))}function Dpe(v,T){let P=v._queue.shift();v._queueTotalSize-=P.byteLength,kpe(v);let V=new Uint8Array(P.buffer,P.byteOffset,P.byteLength);T._chunkSteps(V)}function yW(v){if(v._byobRequest===null&&v._pendingPullIntos.length>0){let T=v._pendingPullIntos.peek(),P=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),V=Object.create(Dm.prototype);kyt(V,v,P),v._byobRequest=V}return v._byobRequest}function Bpe(v){let T=v._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:v._strategyHWM-v._queueTotalSize}function XR(v,T){let P=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(P.bytesFilled+T>P.byteLength)throw new RangeError("bytesWritten out of range")}P.buffer=It(P.buffer),Ppe(v,T)}function ZR(v,T){let P=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(P.byteOffset+P.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(P.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(P.bytesFilled+T.byteLength>P.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;P.buffer=It(T.buffer),Ppe(v,ae)}function Lpe(v,T,P,V,ae,ge,be){T._controlledReadableByteStream=v,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,To(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=ge,T._pullAlgorithm=V,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=be,T._pendingPullIntos=new S,v._readableStreamController=T;let Ge=P();f(u(Ge),()=>(T._started=!0,Lm(T),null),Ct=>(Zo(T,Ct),null))}function Oyt(v,T,P){let V=Object.create(vd.prototype),ae,ge,be;T.start!==void 0?ae=()=>T.start(V):ae=()=>{},T.pull!==void 0?ge=()=>T.pull(V):ge=()=>u(void 0),T.cancel!==void 0?be=Ct=>T.cancel(Ct):be=()=>u(void 0);let Ge=T.autoAllocateChunkSize;if(Ge===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Lpe(v,V,ae,ge,be,P,Ge)}function kyt(v,T,P){v._associatedReadableByteStreamController=T,v._view=P}function AW(v){return new TypeError(`ReadableStreamBYOBRequest.prototype.${v} can only be used on a ReadableStreamBYOBRequest`)}function Z_(v){return new TypeError(`ReadableByteStreamController.prototype.${v} can only be used on a ReadableByteStreamController`)}function Pyt(v,T){Te(v,T);let P=v?.mode;return{mode:P===void 0?void 0:Dyt(P,`${T} has member 'mode' that`)}}function Dyt(v,T){if(v=`${v}`,v!=="byob")throw new TypeError(`${T} '${v}' is not a valid enumeration value for ReadableStreamReaderMode`);return v}function Byt(v,T){var P;Te(v,T);let V=(P=v?.min)!==null&&P!==void 0?P:1;return{min:Q(V,`${T} has member 'min' that`)}}function Mpe(v){return new Ep(v)}function Wpe(v,T){v._reader._readIntoRequests.push(T)}function Lyt(v,T,P){let ae=v._reader._readIntoRequests.shift();P?ae._closeSteps(T):ae._chunkSteps(T)}function $pe(v){return v._reader._readIntoRequests.length}function xW(v){let T=v._reader;return!(T===void 0||!Mm(T))}class Ep{constructor(T){if(ve(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),Ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Bm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");B(this,T),this._readIntoRequests=new S}get closed(){return Mm(this)?this._closedPromise:l(eN("closed"))}cancel(T=void 0){return Mm(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(eN("cancel"))}read(T,P={}){if(!Mm(this))return l(eN("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(wr(T.buffer))return l(new TypeError("view's buffer has been detached"));let V;try{V=Byt(P,"options")}catch(ft){return l(ft)}let ae=V.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(fW(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(L("read from"));let ge,be,Ge=c((ft,Lt)=>{ge=ft,be=Lt});return Upe(this,T,ae,{_chunkSteps:ft=>ge({value:ft,done:!1}),_closeSteps:ft=>ge({value:ft,done:!0}),_errorSteps:ft=>be(ft)}),Ge}releaseLock(){if(!Mm(this))throw eN("releaseLock");this._ownerReadableStream!==void 0&&Myt(this)}}Object.defineProperties(Ep.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(Ep.prototype.cancel,"cancel"),s(Ep.prototype.read,"read"),s(Ep.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ep.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Mm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readIntoRequests")?!1:v instanceof Ep}function Upe(v,T,P,V){let ae=v._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?V._errorSteps(ae._storedError):Tyt(ae._readableStreamController,T,P,V)}function Myt(v){D(v);let T=new TypeError("Reader was released");Fpe(v,T)}function Fpe(v,T){let P=v._readIntoRequests;v._readIntoRequests=new S,P.forEach(V=>{V._errorSteps(T)})}function eN(v){return new TypeError(`ReadableStreamBYOBReader.prototype.${v} can only be used on a ReadableStreamBYOBReader`)}function eE(v,T){let{highWaterMark:P}=v;if(P===void 0)return T;if(Be(P)||P<0)throw new RangeError("Invalid highWaterMark");return P}function tN(v){let{size:T}=v;return T||(()=>1)}function rN(v,T){Te(v,T);let P=v?.highWaterMark,V=v?.size;return{highWaterMark:P===void 0?void 0:G(P),size:V===void 0?void 0:Wyt(V,`${T} has member 'size' that`)}}function Wyt(v,T){return Ne(v,T),P=>G(v(P))}function $yt(v,T){Te(v,T);let P=v?.abort,V=v?.close,ae=v?.start,ge=v?.type,be=v?.write;return{abort:P===void 0?void 0:Uyt(P,v,`${T} has member 'abort' that`),close:V===void 0?void 0:Fyt(V,v,`${T} has member 'close' that`),start:ae===void 0?void 0:qyt(ae,v,`${T} has member 'start' that`),write:be===void 0?void 0:jyt(be,v,`${T} has member 'write' that`),type:ge}}function Uyt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function Fyt(v,T,P){return Ne(v,P),()=>x(v,T,[])}function qyt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function jyt(v,T,P){return Ne(v,P),(V,ae)=>x(v,T,[V,ae])}function qpe(v,T){if(!nA(v))throw new TypeError(`${T} is not a WritableStream.`)}function Qyt(v){if(typeof v!="object"||v===null)return!1;try{return typeof v.aborted=="boolean"}catch{return!1}}let Hyt=typeof AbortController=="function";function Gyt(){if(Hyt)return new AbortController}class vp{constructor(T={},P={}){T===void 0?T=null:Fe(T,"First parameter");let V=rN(P,"Second parameter"),ae=$yt(T,"First parameter");if(Qpe(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let be=tN(V),Ge=eE(V,1);aAt(this,ae,Ge,be)}get locked(){if(!nA(this))throw oN("locked");return sA(this)}abort(T=void 0){return nA(this)?sA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):nN(this,T):l(oN("abort"))}close(){return nA(this)?sA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Vu(this)?l(new TypeError("Cannot close an already-closing stream")):Hpe(this):l(oN("close"))}getWriter(){if(!nA(this))throw oN("getWriter");return jpe(this)}}Object.defineProperties(vp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(vp.prototype.abort,"abort"),s(vp.prototype.close,"close"),s(vp.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vp.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function jpe(v){return new Sd(v)}function zyt(v,T,P,V,ae=1,ge=()=>1){let be=Object.create(vp.prototype);Qpe(be);let Ge=Object.create(iA.prototype);return Jpe(be,Ge,v,T,P,V,ae,ge),be}function Qpe(v){v._state="writable",v._storedError=void 0,v._writer=void 0,v._writableStreamController=void 0,v._writeRequests=new S,v._inFlightWriteRequest=void 0,v._closeRequest=void 0,v._inFlightCloseRequest=void 0,v._pendingAbortRequest=void 0,v._backpressure=!1}function nA(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_writableStreamController")?!1:v instanceof vp}function sA(v){return v._writer!==void 0}function nN(v,T){var P;if(v._state==="closed"||v._state==="errored")return u(void 0);v._writableStreamController._abortReason=T,(P=v._writableStreamController._abortController)===null||P===void 0||P.abort(T);let V=v._state;if(V==="closed"||V==="errored")return u(void 0);if(v._pendingAbortRequest!==void 0)return v._pendingAbortRequest._promise;let ae=!1;V==="erroring"&&(ae=!0,T=void 0);let ge=c((be,Ge)=>{v._pendingAbortRequest={_promise:void 0,_resolve:be,_reject:Ge,_reason:T,_wasAlreadyErroring:ae}});return v._pendingAbortRequest._promise=ge,ae||_W(v,T),ge}function Hpe(v){let T=v._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let P=c((ae,ge)=>{let be={_resolve:ae,_reject:ge};v._closeRequest=be}),V=v._writer;return V!==void 0&&v._backpressure&&T==="writable"&&RW(V),oAt(v._writableStreamController),P}function Kyt(v){return c((P,V)=>{let ae={_resolve:P,_reject:V};v._writeRequests.push(ae)})}function bW(v,T){if(v._state==="writable"){_W(v,T);return}EW(v)}function _W(v,T){let P=v._writableStreamController;v._state="erroring",v._storedError=T;let V=v._writer;V!==void 0&&zpe(V,T),!Zyt(v)&&P._started&&EW(v)}function EW(v){v._state="errored",v._writableStreamController[R]();let T=v._storedError;if(v._writeRequests.forEach(ae=>{ae._reject(T)}),v._writeRequests=new S,v._pendingAbortRequest===void 0){sN(v);return}let P=v._pendingAbortRequest;if(v._pendingAbortRequest=void 0,P._wasAlreadyErroring){P._reject(T),sN(v);return}let V=v._writableStreamController[I](P._reason);f(V,()=>(P._resolve(),sN(v),null),ae=>(P._reject(ae),sN(v),null))}function Vyt(v){v._inFlightWriteRequest._resolve(void 0),v._inFlightWriteRequest=void 0}function Yyt(v,T){v._inFlightWriteRequest._reject(T),v._inFlightWriteRequest=void 0,bW(v,T)}function Jyt(v){v._inFlightCloseRequest._resolve(void 0),v._inFlightCloseRequest=void 0,v._state==="erroring"&&(v._storedError=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._resolve(),v._pendingAbortRequest=void 0)),v._state="closed";let P=v._writer;P!==void 0&&t0e(P)}function Xyt(v,T){v._inFlightCloseRequest._reject(T),v._inFlightCloseRequest=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._reject(T),v._pendingAbortRequest=void 0),bW(v,T)}function Vu(v){return!(v._closeRequest===void 0&&v._inFlightCloseRequest===void 0)}function Zyt(v){return!(v._inFlightWriteRequest===void 0&&v._inFlightCloseRequest===void 0)}function eAt(v){v._inFlightCloseRequest=v._closeRequest,v._closeRequest=void 0}function tAt(v){v._inFlightWriteRequest=v._writeRequests.shift()}function sN(v){v._closeRequest!==void 0&&(v._closeRequest._reject(v._storedError),v._closeRequest=void 0);let T=v._writer;T!==void 0&&TW(T,v._storedError)}function vW(v,T){let P=v._writer;P!==void 0&&T!==v._backpressure&&(T?mAt(P):RW(P)),v._backpressure=T}class Sd{constructor(T){if(ve(T,1,"WritableStreamDefaultWriter"),qpe(T,"First parameter"),sA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let P=T._state;if(P==="writable")!Vu(T)&&T._backpressure?uN(this):r0e(this),cN(this);else if(P==="erroring")wW(this,T._storedError),cN(this);else if(P==="closed")r0e(this),fAt(this);else{let V=T._storedError;wW(this,V),e0e(this,V)}}get closed(){return Wm(this)?this._closedPromise:l($m("closed"))}get desiredSize(){if(!Wm(this))throw $m("desiredSize");if(this._ownerWritableStream===void 0)throw rE("desiredSize");return iAt(this)}get ready(){return Wm(this)?this._readyPromise:l($m("ready"))}abort(T=void 0){return Wm(this)?this._ownerWritableStream===void 0?l(rE("abort")):rAt(this,T):l($m("abort"))}close(){if(!Wm(this))return l($m("close"));let T=this._ownerWritableStream;return T===void 0?l(rE("close")):Vu(T)?l(new TypeError("Cannot close an already-closing stream")):Gpe(this)}releaseLock(){if(!Wm(this))throw $m("releaseLock");this._ownerWritableStream!==void 0&&Kpe(this)}write(T=void 0){return Wm(this)?this._ownerWritableStream===void 0?l(rE("write to")):Vpe(this,T):l($m("write"))}}Object.defineProperties(Sd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(Sd.prototype.abort,"abort"),s(Sd.prototype.close,"close"),s(Sd.prototype.releaseLock,"releaseLock"),s(Sd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Sd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Wm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_ownerWritableStream")?!1:v instanceof Sd}function rAt(v,T){let P=v._ownerWritableStream;return nN(P,T)}function Gpe(v){let T=v._ownerWritableStream;return Hpe(T)}function nAt(v){let T=v._ownerWritableStream,P=T._state;return Vu(T)||P==="closed"?u(void 0):P==="errored"?l(T._storedError):Gpe(v)}function sAt(v,T){v._closedPromiseState==="pending"?TW(v,T):pAt(v,T)}function zpe(v,T){v._readyPromiseState==="pending"?n0e(v,T):hAt(v,T)}function iAt(v){let T=v._ownerWritableStream,P=T._state;return P==="errored"||P==="erroring"?null:P==="closed"?0:Xpe(T._writableStreamController)}function Kpe(v){let T=v._ownerWritableStream,P=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");zpe(v,P),sAt(v,P),T._writer=void 0,v._ownerWritableStream=void 0}function Vpe(v,T){let P=v._ownerWritableStream,V=P._writableStreamController,ae=cAt(V,T);if(P!==v._ownerWritableStream)return l(rE("write to"));let ge=P._state;if(ge==="errored")return l(P._storedError);if(Vu(P)||ge==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(ge==="erroring")return l(P._storedError);let be=Kyt(P);return uAt(V,T,ae),be}let Ype={};class iA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!SW(this))throw CW("abortReason");return this._abortReason}get signal(){if(!SW(this))throw CW("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!SW(this))throw CW("error");this._controlledWritableStream._state==="writable"&&Zpe(this,T)}[I](T){let P=this._abortAlgorithm(T);return iN(this),P}[R](){To(this)}}Object.defineProperties(iA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(iA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function SW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledWritableStream")?!1:v instanceof iA}function Jpe(v,T,P,V,ae,ge,be,Ge){T._controlledWritableStream=v,v._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,To(T),T._abortReason=void 0,T._abortController=Gyt(),T._started=!1,T._strategySizeAlgorithm=Ge,T._strategyHWM=be,T._writeAlgorithm=V,T._closeAlgorithm=ae,T._abortAlgorithm=ge;let Ct=IW(T);vW(v,Ct);let ft=P(),Lt=u(ft);f(Lt,()=>(T._started=!0,aN(T),null),tr=>(T._started=!0,bW(v,tr),null))}function aAt(v,T,P,V){let ae=Object.create(iA.prototype),ge,be,Ge,Ct;T.start!==void 0?ge=()=>T.start(ae):ge=()=>{},T.write!==void 0?be=ft=>T.write(ft,ae):be=()=>u(void 0),T.close!==void 0?Ge=()=>T.close():Ge=()=>u(void 0),T.abort!==void 0?Ct=ft=>T.abort(ft):Ct=()=>u(void 0),Jpe(v,ae,ge,be,Ge,Ct,P,V)}function iN(v){v._writeAlgorithm=void 0,v._closeAlgorithm=void 0,v._abortAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function oAt(v){Ma(v,Ype,0),aN(v)}function cAt(v,T){try{return v._strategySizeAlgorithm(T)}catch(P){return tE(v,P),1}}function Xpe(v){return v._strategyHWM-v._queueTotalSize}function uAt(v,T,P){try{Ma(v,T,P)}catch(ae){tE(v,ae);return}let V=v._controlledWritableStream;if(!Vu(V)&&V._state==="writable"){let ae=IW(v);vW(V,ae)}aN(v)}function aN(v){let T=v._controlledWritableStream;if(!v._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){EW(T);return}if(v._queue.length===0)return;let V=Ed(v);V===Ype?lAt(v):dAt(v,V)}function tE(v,T){v._controlledWritableStream._state==="writable"&&Zpe(v,T)}function lAt(v){let T=v._controlledWritableStream;eAt(T),An(v);let P=v._closeAlgorithm();iN(v),f(P,()=>(Jyt(T),null),V=>(Xyt(T,V),null))}function dAt(v,T){let P=v._controlledWritableStream;tAt(P);let V=v._writeAlgorithm(T);f(V,()=>{Vyt(P);let ae=P._state;if(An(v),!Vu(P)&&ae==="writable"){let ge=IW(v);vW(P,ge)}return aN(v),null},ae=>(P._state==="writable"&&iN(v),Yyt(P,ae),null))}function IW(v){return Xpe(v)<=0}function Zpe(v,T){let P=v._controlledWritableStream;iN(v),_W(P,T)}function oN(v){return new TypeError(`WritableStream.prototype.${v} can only be used on a WritableStream`)}function CW(v){return new TypeError(`WritableStreamDefaultController.prototype.${v} can only be used on a WritableStreamDefaultController`)}function $m(v){return new TypeError(`WritableStreamDefaultWriter.prototype.${v} can only be used on a WritableStreamDefaultWriter`)}function rE(v){return new TypeError("Cannot "+v+" a stream using a released writer")}function cN(v){v._closedPromise=c((T,P)=>{v._closedPromise_resolve=T,v._closedPromise_reject=P,v._closedPromiseState="pending"})}function e0e(v,T){cN(v),TW(v,T)}function fAt(v){cN(v),t0e(v)}function TW(v,T){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(T),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="rejected")}function pAt(v,T){e0e(v,T)}function t0e(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="resolved")}function uN(v){v._readyPromise=c((T,P)=>{v._readyPromise_resolve=T,v._readyPromise_reject=P}),v._readyPromiseState="pending"}function wW(v,T){uN(v),n0e(v,T)}function r0e(v){uN(v),RW(v)}function n0e(v,T){v._readyPromise_reject!==void 0&&(y(v._readyPromise),v._readyPromise_reject(T),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="rejected")}function mAt(v){uN(v)}function hAt(v,T){wW(v,T)}function RW(v){v._readyPromise_resolve!==void 0&&(v._readyPromise_resolve(void 0),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="fulfilled")}function gAt(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let NW=gAt();function yAt(v){if(!(typeof v=="function"||typeof v=="object")||v.name!=="DOMException")return!1;try{return new v,!0}catch{return!1}}function AAt(){let v=NW?.DOMException;return yAt(v)?v:void 0}function xAt(){let v=function(P,V){this.message=P||"",this.name=V||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(v,"DOMException"),v.prototype=Object.create(Error.prototype),Object.defineProperty(v.prototype,"constructor",{value:v,writable:!0,configurable:!0}),v}let bAt=AAt()||xAt();function s0e(v,T,P,V,ae,ge){let be=ne(v),Ge=jpe(T);v._disturbed=!0;let Ct=!1,ft=u(void 0);return c((Lt,tr)=>{let cn;if(ge!==void 0){if(cn=()=>{let gt=ge.reason!==void 0?ge.reason:new bAt("Aborted","AbortError"),hr=[];V||hr.push(()=>T._state==="writable"?nN(T,gt):u(void 0)),ae||hr.push(()=>v._state==="readable"?zc(v,gt):u(void 0)),Wa(()=>Promise.all(hr.map(xn=>xn())),!0,gt)},ge.aborted){cn();return}ge.addEventListener("abort",cn)}function Kc(){return c((gt,hr)=>{function xn(wo){wo?gt():d(uA(),xn,hr)}xn(!1)})}function uA(){return Ct?u(!0):d(Ge._readyPromise,()=>c((gt,hr)=>{Pe(be,{_chunkSteps:xn=>{ft=d(Vpe(Ge,xn),void 0,e),gt(!1)},_closeSteps:()=>gt(!0),_errorSteps:hr})}))}if(Cd(v,be._closedPromise,gt=>(V?ec(!0,gt):Wa(()=>nN(T,gt),!0,gt),null)),Cd(T,Ge._closedPromise,gt=>(ae?ec(!0,gt):Wa(()=>zc(v,gt),!0,gt),null)),ca(v,be._closedPromise,()=>(P?ec():Wa(()=>nAt(Ge)),null)),Vu(T)||T._state==="closed"){let gt=new TypeError("the destination writable stream closed before all data could be piped to it");ae?ec(!0,gt):Wa(()=>zc(v,gt),!0,gt)}y(Kc());function Tp(){let gt=ft;return d(ft,()=>gt!==ft?Tp():void 0)}function Cd(gt,hr,xn){gt._state==="errored"?xn(gt._storedError):m(hr,xn)}function ca(gt,hr,xn){gt._state==="closed"?xn():p(hr,xn)}function Wa(gt,hr,xn){if(Ct)return;Ct=!0,T._state==="writable"&&!Vu(T)?p(Tp(),wo):wo();function wo(){return f(gt(),()=>Td(hr,xn),lA=>Td(!0,lA)),null}}function ec(gt,hr){Ct||(Ct=!0,T._state==="writable"&&!Vu(T)?p(Tp(),()=>Td(gt,hr)):Td(gt,hr))}function Td(gt,hr){return Kpe(Ge),D(be),ge!==void 0&&ge.removeEventListener("abort",cn),gt?tr(hr):Lt(void 0),null}})}class Id{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!lN(this))throw fN("desiredSize");return OW(this)}close(){if(!lN(this))throw fN("close");if(!oA(this))throw new TypeError("The stream is not in a state that permits close");Um(this)}enqueue(T=void 0){if(!lN(this))throw fN("enqueue");if(!oA(this))throw new TypeError("The stream is not in a state that permits enqueue");return aA(this,T)}error(T=void 0){if(!lN(this))throw fN("error");Gc(this,T)}[w](T){To(this);let P=this._cancelAlgorithm(T);return dN(this),P}[N](T){let P=this._controlledReadableStream;if(this._queue.length>0){let V=An(this);this._closeRequested&&this._queue.length===0?(dN(this),iE(P)):nE(this),T._chunkSteps(V)}else re(P,T),nE(this)}[k](){}}Object.defineProperties(Id.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Id.prototype.close,"close"),s(Id.prototype.enqueue,"enqueue"),s(Id.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Id.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function lN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableStream")?!1:v instanceof Id}function nE(v){if(!i0e(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let P=v._pullAlgorithm();f(P,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,nE(v)),null),V=>(Gc(v,V),null))}function i0e(v){let T=v._controlledReadableStream;return!oA(v)||!v._started?!1:!!(Ip(T)&&ie(T)>0||OW(v)>0)}function dN(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function Um(v){if(!oA(v))return;let T=v._controlledReadableStream;v._closeRequested=!0,v._queue.length===0&&(dN(v),iE(T))}function aA(v,T){if(!oA(v))return;let P=v._controlledReadableStream;if(Ip(P)&&ie(P)>0)X(P,T,!1);else{let V;try{V=v._strategySizeAlgorithm(T)}catch(ae){throw Gc(v,ae),ae}try{Ma(v,T,V)}catch(ae){throw Gc(v,ae),ae}}nE(v)}function Gc(v,T){let P=v._controlledReadableStream;P._state==="readable"&&(To(v),dN(v),u0e(P,T))}function OW(v){let T=v._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:v._strategyHWM-v._queueTotalSize}function _At(v){return!i0e(v)}function oA(v){let T=v._controlledReadableStream._state;return!v._closeRequested&&T==="readable"}function a0e(v,T,P,V,ae,ge,be){T._controlledReadableStream=v,T._queue=void 0,T._queueTotalSize=void 0,To(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=be,T._strategyHWM=ge,T._pullAlgorithm=V,T._cancelAlgorithm=ae,v._readableStreamController=T;let Ge=P();f(u(Ge),()=>(T._started=!0,nE(T),null),Ct=>(Gc(T,Ct),null))}function EAt(v,T,P,V){let ae=Object.create(Id.prototype),ge,be,Ge;T.start!==void 0?ge=()=>T.start(ae):ge=()=>{},T.pull!==void 0?be=()=>T.pull(ae):be=()=>u(void 0),T.cancel!==void 0?Ge=Ct=>T.cancel(Ct):Ge=()=>u(void 0),a0e(v,ae,ge,be,Ge,P,V)}function fN(v){return new TypeError(`ReadableStreamDefaultController.prototype.${v} can only be used on a ReadableStreamDefaultController`)}function vAt(v,T){return Bm(v._readableStreamController)?IAt(v):SAt(v)}function SAt(v,T){let P=ne(v),V=!1,ae=!1,ge=!1,be=!1,Ge,Ct,ft,Lt,tr,cn=c(ca=>{tr=ca});function Kc(){return V?(ae=!0,u(void 0)):(V=!0,Pe(P,{_chunkSteps:Wa=>{g(()=>{ae=!1;let ec=Wa,Td=Wa;ge||aA(ft._readableStreamController,ec),be||aA(Lt._readableStreamController,Td),V=!1,ae&&Kc()})},_closeSteps:()=>{V=!1,ge||Um(ft._readableStreamController),be||Um(Lt._readableStreamController),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{V=!1}}),u(void 0))}function uA(ca){if(ge=!0,Ge=ca,be){let Wa=_t([Ge,Ct]),ec=zc(v,Wa);tr(ec)}return cn}function Tp(ca){if(be=!0,Ct=ca,ge){let Wa=_t([Ge,Ct]),ec=zc(v,Wa);tr(ec)}return cn}function Cd(){}return ft=sE(Cd,Kc,uA),Lt=sE(Cd,Kc,Tp),m(P._closedPromise,ca=>(Gc(ft._readableStreamController,ca),Gc(Lt._readableStreamController,ca),(!ge||!be)&&tr(void 0),null)),[ft,Lt]}function IAt(v){let T=ne(v),P=!1,V=!1,ae=!1,ge=!1,be=!1,Ge,Ct,ft,Lt,tr,cn=c(gt=>{tr=gt});function Kc(gt){m(gt._closedPromise,hr=>(gt!==T||(Zo(ft._readableStreamController,hr),Zo(Lt._readableStreamController,hr),(!ge||!be)&&tr(void 0)),null))}function uA(){Mm(T)&&(D(T),T=ne(v),Kc(T)),Pe(T,{_chunkSteps:hr=>{g(()=>{V=!1,ae=!1;let xn=hr,wo=hr;if(!ge&&!be)try{wo=La(hr)}catch(lA){Zo(ft._readableStreamController,lA),Zo(Lt._readableStreamController,lA),tr(zc(v,lA));return}ge||JR(ft._readableStreamController,xn),be||JR(Lt._readableStreamController,wo),P=!1,V?Cd():ae&&ca()})},_closeSteps:()=>{P=!1,ge||X_(ft._readableStreamController),be||X_(Lt._readableStreamController),ft._readableStreamController._pendingPullIntos.length>0&&XR(ft._readableStreamController,0),Lt._readableStreamController._pendingPullIntos.length>0&&XR(Lt._readableStreamController,0),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{P=!1}})}function Tp(gt,hr){Oe(T)&&(D(T),T=Mpe(v),Kc(T));let xn=hr?Lt:ft,wo=hr?ft:Lt;Upe(T,gt,1,{_chunkSteps:dA=>{g(()=>{V=!1,ae=!1;let fA=hr?be:ge;if(hr?ge:be)fA||ZR(xn._readableStreamController,dA);else{let E0e;try{E0e=La(dA)}catch(LW){Zo(xn._readableStreamController,LW),Zo(wo._readableStreamController,LW),tr(zc(v,LW));return}fA||ZR(xn._readableStreamController,dA),JR(wo._readableStreamController,E0e)}P=!1,V?Cd():ae&&ca()})},_closeSteps:dA=>{P=!1;let fA=hr?be:ge,bN=hr?ge:be;fA||X_(xn._readableStreamController),bN||X_(wo._readableStreamController),dA!==void 0&&(fA||ZR(xn._readableStreamController,dA),!bN&&wo._readableStreamController._pendingPullIntos.length>0&&XR(wo._readableStreamController,0)),(!fA||!bN)&&tr(void 0)},_errorSteps:()=>{P=!1}})}function Cd(){if(P)return V=!0,u(void 0);P=!0;let gt=yW(ft._readableStreamController);return gt===null?uA():Tp(gt._view,!1),u(void 0)}function ca(){if(P)return ae=!0,u(void 0);P=!0;let gt=yW(Lt._readableStreamController);return gt===null?uA():Tp(gt._view,!0),u(void 0)}function Wa(gt){if(ge=!0,Ge=gt,be){let hr=_t([Ge,Ct]),xn=zc(v,hr);tr(xn)}return cn}function ec(gt){if(be=!0,Ct=gt,ge){let hr=_t([Ge,Ct]),xn=zc(v,hr);tr(xn)}return cn}function Td(){}return ft=c0e(Td,Cd,Wa),Lt=c0e(Td,ca,ec),Kc(T),[ft,Lt]}function CAt(v){return r(v)&&typeof v.getReader<"u"}function TAt(v){return CAt(v)?RAt(v.getReader()):wAt(v)}function wAt(v){let T,P=bs(v,"async"),V=e;function ae(){let be;try{be=Gs(P)}catch(Ct){return l(Ct)}let Ge=u(be);return h(Ge,Ct=>{if(!r(Ct))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Ku(Ct))Um(T._readableStreamController);else{let Lt=Co(Ct);aA(T._readableStreamController,Lt)}})}function ge(be){let Ge=P.iterator,Ct;try{Ct=Lr(Ge,"return")}catch(tr){return l(tr)}if(Ct===void 0)return u(void 0);let ft;try{ft=b(Ct,Ge,[be])}catch(tr){return l(tr)}let Lt=u(ft);return h(Lt,tr=>{if(!r(tr))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=sE(V,ae,ge,0),T}function RAt(v){let T,P=e;function V(){let ge;try{ge=v.read()}catch(be){return l(be)}return h(ge,be=>{if(!r(be))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(be.done)Um(T._readableStreamController);else{let Ge=be.value;aA(T._readableStreamController,Ge)}})}function ae(ge){try{return u(v.cancel(ge))}catch(be){return l(be)}}return T=sE(P,V,ae,0),T}function NAt(v,T){Te(v,T);let P=v,V=P?.autoAllocateChunkSize,ae=P?.cancel,ge=P?.pull,be=P?.start,Ge=P?.type;return{autoAllocateChunkSize:V===void 0?void 0:Q(V,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:OAt(ae,P,`${T} has member 'cancel' that`),pull:ge===void 0?void 0:kAt(ge,P,`${T} has member 'pull' that`),start:be===void 0?void 0:PAt(be,P,`${T} has member 'start' that`),type:Ge===void 0?void 0:DAt(Ge,`${T} has member 'type' that`)}}function OAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function kAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function PAt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function DAt(v,T){if(v=`${v}`,v!=="bytes")throw new TypeError(`${T} '${v}' is not a valid enumeration value for ReadableStreamType`);return v}function BAt(v,T){return Te(v,T),{preventCancel:!!v?.preventCancel}}function o0e(v,T){Te(v,T);let P=v?.preventAbort,V=v?.preventCancel,ae=v?.preventClose,ge=v?.signal;return ge!==void 0&&LAt(ge,`${T} has member 'signal' that`),{preventAbort:!!P,preventCancel:!!V,preventClose:!!ae,signal:ge}}function LAt(v,T){if(!Qyt(v))throw new TypeError(`${T} is not an AbortSignal.`)}function MAt(v,T){Te(v,T);let P=v?.readable;F(P,"readable","ReadableWritablePair"),ee(P,`${T} has member 'readable' that`);let V=v?.writable;return F(V,"writable","ReadableWritablePair"),qpe(V,`${T} has member 'writable' that`),{readable:P,writable:V}}class ki{constructor(T={},P={}){T===void 0?T=null:Fe(T,"First parameter");let V=rN(P,"Second parameter"),ae=NAt(T,"First parameter");if(kW(this),ae.type==="bytes"){if(V.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let ge=eE(V,0);Oyt(this,ae,ge)}else{let ge=tN(V),be=eE(V,1);EAt(this,ae,be,ge)}}get locked(){if(!Sp(this))throw Fm("locked");return Ip(this)}cancel(T=void 0){return Sp(this)?Ip(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):zc(this,T):l(Fm("cancel"))}getReader(T=void 0){if(!Sp(this))throw Fm("getReader");return Pyt(T,"First parameter").mode===void 0?ne(this):Mpe(this)}pipeThrough(T,P={}){if(!Sp(this))throw Fm("pipeThrough");ve(T,1,"pipeThrough");let V=MAt(T,"First parameter"),ae=o0e(P,"Second parameter");if(Ip(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(sA(V.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let ge=s0e(this,V.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return y(ge),V.readable}pipeTo(T,P={}){if(!Sp(this))return l(Fm("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!nA(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let V;try{V=o0e(P,"Second parameter")}catch(ae){return l(ae)}return Ip(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):sA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):s0e(this,T,V.preventClose,V.preventAbort,V.preventCancel,V.signal)}tee(){if(!Sp(this))throw Fm("tee");let T=vAt(this);return _t(T)}values(T=void 0){if(!Sp(this))throw Fm("values");let P=BAt(T,"First parameter");return rt(this,P.preventCancel)}[Hs](T){return this.values(T)}static from(T){return TAt(T)}}Object.defineProperties(ki,{from:{enumerable:!0}}),Object.defineProperties(ki.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(ki.from,"from"),s(ki.prototype.cancel,"cancel"),s(ki.prototype.getReader,"getReader"),s(ki.prototype.pipeThrough,"pipeThrough"),s(ki.prototype.pipeTo,"pipeTo"),s(ki.prototype.tee,"tee"),s(ki.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ki.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(ki.prototype,Hs,{value:ki.prototype.values,writable:!0,configurable:!0});function sE(v,T,P,V=1,ae=()=>1){let ge=Object.create(ki.prototype);kW(ge);let be=Object.create(Id.prototype);return a0e(ge,be,v,T,P,V,ae),ge}function c0e(v,T,P){let V=Object.create(ki.prototype);kW(V);let ae=Object.create(vd.prototype);return Lpe(V,ae,v,T,P,0,void 0),V}function kW(v){v._state="readable",v._reader=void 0,v._storedError=void 0,v._disturbed=!1}function Sp(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readableStreamController")?!1:v instanceof ki}function Ip(v){return v._reader!==void 0}function zc(v,T){if(v._disturbed=!0,v._state==="closed")return u(void 0);if(v._state==="errored")return l(v._storedError);iE(v);let P=v._reader;if(P!==void 0&&Mm(P)){let ae=P._readIntoRequests;P._readIntoRequests=new S,ae.forEach(ge=>{ge._closeSteps(void 0)})}let V=v._readableStreamController[w](T);return h(V,e)}function iE(v){v._state="closed";let T=v._reader;if(T!==void 0&&(J(T),Oe(T))){let P=T._readRequests;T._readRequests=new S,P.forEach(V=>{V._closeSteps()})}}function u0e(v,T){v._state="errored",v._storedError=T;let P=v._reader;P!==void 0&&(z(P,T),Oe(P)?Ye(P,T):Fpe(P,T))}function Fm(v){return new TypeError(`ReadableStream.prototype.${v} can only be used on a ReadableStream`)}function l0e(v,T){Te(v,T);let P=v?.highWaterMark;return F(P,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(P)}}let d0e=v=>v.byteLength;s(d0e,"size");class pN{constructor(T){ve(T,1,"ByteLengthQueuingStrategy"),T=l0e(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!p0e(this))throw f0e("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!p0e(this))throw f0e("size");return d0e}}Object.defineProperties(pN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(pN.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function f0e(v){return new TypeError(`ByteLengthQueuingStrategy.prototype.${v} can only be used on a ByteLengthQueuingStrategy`)}function p0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_byteLengthQueuingStrategyHighWaterMark")?!1:v instanceof pN}let m0e=()=>1;s(m0e,"size");class mN{constructor(T){ve(T,1,"CountQueuingStrategy"),T=l0e(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!g0e(this))throw h0e("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!g0e(this))throw h0e("size");return m0e}}Object.defineProperties(mN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(mN.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function h0e(v){return new TypeError(`CountQueuingStrategy.prototype.${v} can only be used on a CountQueuingStrategy`)}function g0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_countQueuingStrategyHighWaterMark")?!1:v instanceof mN}function WAt(v,T){Te(v,T);let P=v?.cancel,V=v?.flush,ae=v?.readableType,ge=v?.start,be=v?.transform,Ge=v?.writableType;return{cancel:P===void 0?void 0:qAt(P,v,`${T} has member 'cancel' that`),flush:V===void 0?void 0:$At(V,v,`${T} has member 'flush' that`),readableType:ae,start:ge===void 0?void 0:UAt(ge,v,`${T} has member 'start' that`),transform:be===void 0?void 0:FAt(be,v,`${T} has member 'transform' that`),writableType:Ge}}function $At(v,T,P){return Ne(v,P),V=>x(v,T,[V])}function UAt(v,T,P){return Ne(v,P),V=>b(v,T,[V])}function FAt(v,T,P){return Ne(v,P),(V,ae)=>x(v,T,[V,ae])}function qAt(v,T,P){return Ne(v,P),V=>x(v,T,[V])}class hN{constructor(T={},P={},V={}){T===void 0&&(T=null);let ae=rN(P,"Second parameter"),ge=rN(V,"Third parameter"),be=WAt(T,"First parameter");if(be.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(be.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Ge=eE(ge,0),Ct=tN(ge),ft=eE(ae,1),Lt=tN(ae),tr,cn=c(Kc=>{tr=Kc});jAt(this,cn,ft,Lt,Ge,Ct),HAt(this,be),be.start!==void 0?tr(be.start(this._transformStreamController)):tr(void 0)}get readable(){if(!y0e(this))throw _0e("readable");return this._readable}get writable(){if(!y0e(this))throw _0e("writable");return this._writable}}Object.defineProperties(hN.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(hN.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function jAt(v,T,P,V,ae,ge){function be(){return T}function Ge(cn){return KAt(v,cn)}function Ct(cn){return VAt(v,cn)}function ft(){return YAt(v)}v._writable=zyt(be,Ge,ft,Ct,P,V);function Lt(){return JAt(v)}function tr(cn){return XAt(v,cn)}v._readable=sE(be,Lt,tr,ae,ge),v._backpressure=void 0,v._backpressureChangePromise=void 0,v._backpressureChangePromise_resolve=void 0,gN(v,!0),v._transformStreamController=void 0}function y0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_transformStreamController")?!1:v instanceof hN}function A0e(v,T){Gc(v._readable._readableStreamController,T),PW(v,T)}function PW(v,T){AN(v._transformStreamController),tE(v._writable._writableStreamController,T),DW(v)}function DW(v){v._backpressure&&gN(v,!1)}function gN(v,T){v._backpressureChangePromise!==void 0&&v._backpressureChangePromise_resolve(),v._backpressureChangePromise=c(P=>{v._backpressureChangePromise_resolve=P}),v._backpressure=T}class Cp{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!yN(this))throw xN("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return OW(T)}enqueue(T=void 0){if(!yN(this))throw xN("enqueue");x0e(this,T)}error(T=void 0){if(!yN(this))throw xN("error");GAt(this,T)}terminate(){if(!yN(this))throw xN("terminate");zAt(this)}}Object.defineProperties(Cp.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Cp.prototype.enqueue,"enqueue"),s(Cp.prototype.error,"error"),s(Cp.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Cp.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function yN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledTransformStream")?!1:v instanceof Cp}function QAt(v,T,P,V,ae){T._controlledTransformStream=v,v._transformStreamController=T,T._transformAlgorithm=P,T._flushAlgorithm=V,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function HAt(v,T){let P=Object.create(Cp.prototype),V,ae,ge;T.transform!==void 0?V=be=>T.transform(be,P):V=be=>{try{return x0e(P,be),u(void 0)}catch(Ge){return l(Ge)}},T.flush!==void 0?ae=()=>T.flush(P):ae=()=>u(void 0),T.cancel!==void 0?ge=be=>T.cancel(be):ge=()=>u(void 0),QAt(v,P,V,ae,ge)}function AN(v){v._transformAlgorithm=void 0,v._flushAlgorithm=void 0,v._cancelAlgorithm=void 0}function x0e(v,T){let P=v._controlledTransformStream,V=P._readable._readableStreamController;if(!oA(V))throw new TypeError("Readable side is not in a state that permits enqueue");try{aA(V,T)}catch(ge){throw PW(P,ge),P._readable._storedError}_At(V)!==P._backpressure&&gN(P,!0)}function GAt(v,T){A0e(v._controlledTransformStream,T)}function b0e(v,T){let P=v._transformAlgorithm(T);return h(P,void 0,V=>{throw A0e(v._controlledTransformStream,V),V})}function zAt(v){let T=v._controlledTransformStream,P=T._readable._readableStreamController;Um(P);let V=new TypeError("TransformStream terminated");PW(T,V)}function KAt(v,T){let P=v._transformStreamController;if(v._backpressure){let V=v._backpressureChangePromise;return h(V,()=>{let ae=v._writable;if(ae._state==="erroring")throw ae._storedError;return b0e(P,T)})}return b0e(P,T)}function VAt(v,T){let P=v._transformStreamController;if(P._finishPromise!==void 0)return P._finishPromise;let V=v._readable;P._finishPromise=c((ge,be)=>{P._finishPromise_resolve=ge,P._finishPromise_reject=be});let ae=P._cancelAlgorithm(T);return AN(P),f(ae,()=>(V._state==="errored"?cA(P,V._storedError):(Gc(V._readableStreamController,T),BW(P)),null),ge=>(Gc(V._readableStreamController,ge),cA(P,ge),null)),P._finishPromise}function YAt(v){let T=v._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let P=v._readable;T._finishPromise=c((ae,ge)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=ge});let V=T._flushAlgorithm();return AN(T),f(V,()=>(P._state==="errored"?cA(T,P._storedError):(Um(P._readableStreamController),BW(T)),null),ae=>(Gc(P._readableStreamController,ae),cA(T,ae),null)),T._finishPromise}function JAt(v){return gN(v,!1),v._backpressureChangePromise}function XAt(v,T){let P=v._transformStreamController;if(P._finishPromise!==void 0)return P._finishPromise;let V=v._writable;P._finishPromise=c((ge,be)=>{P._finishPromise_resolve=ge,P._finishPromise_reject=be});let ae=P._cancelAlgorithm(T);return AN(P),f(ae,()=>(V._state==="errored"?cA(P,V._storedError):(tE(V._writableStreamController,T),DW(v),BW(P)),null),ge=>(tE(V._writableStreamController,ge),DW(v),cA(P,ge),null)),P._finishPromise}function xN(v){return new TypeError(`TransformStreamDefaultController.prototype.${v} can only be used on a TransformStreamDefaultController`)}function BW(v){v._finishPromise_resolve!==void 0&&(v._finishPromise_resolve(),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function cA(v,T){v._finishPromise_reject!==void 0&&(y(v._finishPromise),v._finishPromise_reject(T),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function _0e(v){return new TypeError(`TransformStream.prototype.${v} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=pN,t.CountQueuingStrategy=mN,t.ReadableByteStreamController=vd,t.ReadableStream=ki,t.ReadableStreamBYOBReader=Ep,t.ReadableStreamBYOBRequest=Dm,t.ReadableStreamDefaultController=Id,t.ReadableStreamDefaultReader=me,t.TransformStream=hN,t.TransformStreamDefaultController=Cp,t.WritableStream=vp,t.WritableStreamDefaultController=iA,t.WritableStreamDefaultWriter=Sd})});var M$e=_(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,L$e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*TY(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,W$e),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+W$e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var _Zr,W$e,$$e,jlr,Tu,AC=gr(()=>{_Zr=Ce(M$e(),1);W$e=65536;$$e=class wY{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof wY?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of TY(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of TY(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=TY(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new wY([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties($$e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});jlr=$$e,Tu=jlr});var Qlr,Hlr,em,RY=gr(()=>{AC();Qlr=class extends Tu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof Tu&&/^(File)$/.test(e[Symbol.toStringTag])}},Hlr=Qlr,em=Hlr});function q$e(t,e=Tu){var r=`${U$e()}${U$e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r
|
|
Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+NY(a)+`"\r
|
|
\r
|
|
${i.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
|
|
`)}\r
|
|
`):n.push(s+NY(a)+`"; filename="${NY(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 xC,Glr,zlr,U$e,Klr,F$e,NY,Eg,tm,zB=gr(()=>{AC();RY();({toStringTag:xC,iterator:Glr,hasInstance:zlr}=Symbol),U$e=Math.random,Klr="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),F$e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[xC])?[(r=r!==void 0?r+"":e[xC]=="File"?e.name:"blob",t),e.name!==r||e[xC]=="blob"?new em([e],r,e):e]:[t,e+""]),NY=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r
|
|
`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Eg=(t,e,r)=>{if(e.length<r)throw new TypeError(`Failed to execute '${t}' on 'FormData': ${r} arguments required, but only ${e.length} present.`)},tm=class{#e=[];constructor(...e){if(e.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[xC](){return"FormData"}[Glr](){return this.entries()}static[zlr](e){return e&&typeof e=="object"&&e[xC]==="FormData"&&!Klr.some(r=>typeof e[r]!="function")}append(...e){Eg("append",arguments,2),this.#e.push(F$e(...e))}delete(e){Eg("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Eg("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;s<n;s++)if(r[s][0]===e)return r[s][1];return null}getAll(e,r){return Eg("getAll",arguments,1),r=[],e+="",this.#e.forEach(n=>n[0]===e&&r.push(n[1])),r}has(e){return Eg("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Eg("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Eg("set",arguments,2);var r=[],n=!0;e=F$e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var vf,KB=gr(()=>{vf=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var Sa,OY=gr(()=>{KB();Sa=class extends vf{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var VB,kY,bC,j$e,Q$e,H$e,YB=gr(()=>{VB=Symbol.toStringTag,kY=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[VB]==="URLSearchParams",bC=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[VB]),j$e=t=>typeof t=="object"&&(t[VB]==="AbortSignal"||t[VB]==="EventTarget"),Q$e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},H$e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var z$e=_((DZr,G$e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}G$e.exports=globalThis.DOMException});var vg,K$e,V$e,PY,Y$e,J$e,X$e,Z$e,eUe,tUe,JB,DY=gr(()=>{vg=require("node:fs"),K$e=require("node:path"),V$e=Ce(z$e(),1);RY();AC();({stat:PY}=vg.promises),Y$e=(t,e)=>eUe((0,vg.statSync)(t),t,e),J$e=(t,e)=>PY(t).then(r=>eUe(r,t,e)),X$e=(t,e)=>PY(t).then(r=>tUe(r,t,e)),Z$e=(t,e)=>tUe((0,vg.statSync)(t),t,e),eUe=(t,e,r="")=>new Tu([new JB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),tUe=(t,e,r="")=>new em([new JB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,K$e.basename)(e),{type:r,lastModified:t.mtimeMs}),JB=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await PY(this.#e);if(e>this.lastModified)throw new V$e.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,vg.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var nUe={};os(nUe,{toFormData:()=>tdr});function edr(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function tdr(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new BY(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new tm,f=g=>{a+=y.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new em(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},y=new TextDecoder("utf-8");y.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=y.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=y.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=y.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=edr(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Ql,Sn,rUe,rm,XB,ZB,Vlr,_C,Ylr,Jlr,Xlr,Zlr,Sg,BY,sUe=gr(()=>{DY();zB();Ql=0,Sn={START_BOUNDARY:Ql++,HEADER_FIELD_START:Ql++,HEADER_FIELD:Ql++,HEADER_VALUE_START:Ql++,HEADER_VALUE:Ql++,HEADER_VALUE_ALMOST_DONE:Ql++,HEADERS_ALMOST_DONE:Ql++,PART_DATA_START:Ql++,PART_DATA:Ql++,END:Ql++},rUe=1,rm={PART_BOUNDARY:rUe,LAST_BOUNDARY:rUe*=2},XB=10,ZB=13,Vlr=32,_C=45,Ylr=58,Jlr=97,Xlr=122,Zlr=t=>t|32,Sg=()=>{},BY=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Sg,this.onHeaderField=Sg,this.onHeadersEnd=Sg,this.onHeaderValue=Sg,this.onPartBegin=Sg,this.onPartData=Sg,this.onPartEnd=Sg,this.boundaryChars={},e=`\r
|
|
--`+e;let r=new Uint8Array(e.length);for(let n=0;n<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=Sn.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,y=A=>{this[A+"Mark"]=r},g=A=>{delete this[A+"Mark"]},b=(A,S,I,R)=>{(S===void 0||S!==I)&&this[A](R&&R.subarray(S,I))},x=(A,S)=>{let I=A+"Mark";I in this&&(S?(b(A,this[I],r,e),delete this[I]):(b(A,this[I],e.length,e),this[I]=0))};for(r=0;r<n;r++)switch(m=e[r],u){case Sn.START_BOUNDARY:if(c===a.length-2){if(m===_C)l|=rm.LAST_BOUNDARY;else if(m!==ZB)return;c++;break}else if(c-1===a.length-2){if(l&rm.LAST_BOUNDARY&&m===_C)u=Sn.END,l=0;else if(!(l&rm.LAST_BOUNDARY)&&m===XB)c=0,b("onPartBegin"),u=Sn.HEADER_FIELD_START;else return;break}m!==a[c+2]&&(c=-2),m===a[c+2]&&c++;break;case Sn.HEADER_FIELD_START:u=Sn.HEADER_FIELD,y("onHeaderField"),c=0;case Sn.HEADER_FIELD:if(m===ZB){g("onHeaderField"),u=Sn.HEADERS_ALMOST_DONE;break}if(c++,m===_C)break;if(m===Ylr){if(c===1)return;x("onHeaderField",!0),u=Sn.HEADER_VALUE_START;break}if(h=Zlr(m),h<Jlr||h>Xlr)return;break;case Sn.HEADER_VALUE_START:if(m===Vlr)break;y("onHeaderValue"),u=Sn.HEADER_VALUE;case Sn.HEADER_VALUE:m===ZB&&(x("onHeaderValue",!0),b("onHeaderEnd"),u=Sn.HEADER_VALUE_ALMOST_DONE);break;case Sn.HEADER_VALUE_ALMOST_DONE:if(m!==XB)return;u=Sn.HEADER_FIELD_START;break;case Sn.HEADERS_ALMOST_DONE:if(m!==XB)return;b("onHeadersEnd"),u=Sn.PART_DATA_START;break;case Sn.PART_DATA_START:u=Sn.PART_DATA,y("onPartData");case Sn.PART_DATA:if(s=c,c===0){for(r+=f;r<p&&!(e[r]in o);)r+=d;r-=f,m=e[r]}if(c<a.length)a[c]===m?(c===0&&x("onPartData",!0),c++):c=0;else if(c===a.length)c++,m===ZB?l|=rm.PART_BOUNDARY:m===_C?l|=rm.LAST_BOUNDARY:c=0;else if(c-1===a.length)if(l&rm.PART_BOUNDARY){if(c=0,m===XB){l&=~rm.PART_BOUNDARY,b("onPartEnd"),b("onPartBegin"),u=Sn.HEADER_FIELD_START;break}}else l&rm.LAST_BOUNDARY&&m===_C?(b("onPartEnd"),u=Sn.END,l=0):c=0;if(c>0)i[c-1]=m;else if(s>0){let A=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,A),s=0,y("onPartData"),r--}break;case Sn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}x("onHeaderField"),x("onHeaderValue"),x("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===Sn.HEADER_FIELD_START&&this.index===0||this.state===Sn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Sn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function LY(t){if(t[fo].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[fo].disturbed=!0,t[fo].error)throw t[fo].error;let{body:e}=t;if(e===null)return Lo.Buffer.alloc(0);if(!(e instanceof Bc.default))return Lo.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new Sa(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof vf?s:new Sa(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Lo.Buffer.from(r.join("")):Lo.Buffer.concat(r,n)}catch(s){throw new Sa(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new Sa(`Premature close of server response while trying to fetch ${t.url}`)}var Bc,Sf,Lo,rdr,fo,Hl,qb,ndr,eL,iUe,aUe,tL=gr(()=>{Bc=Ce(require("node:stream"),1),Sf=require("node:util"),Lo=require("node:buffer");AC();zB();OY();KB();YB();rdr=(0,Sf.promisify)(Bc.default.pipeline),fo=Symbol("Body internals"),Hl=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:kY(e)?e=Lo.Buffer.from(e.toString()):bC(e)||Lo.Buffer.isBuffer(e)||(Sf.types.isAnyArrayBuffer(e)?e=Lo.Buffer.from(e):ArrayBuffer.isView(e)?e=Lo.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Bc.default||(e instanceof tm?(e=q$e(e),n=e.type.split("=")[1]):e=Lo.Buffer.from(String(e))));let s=e;Lo.Buffer.isBuffer(e)?s=Bc.default.Readable.from(e):bC(e)&&(s=Bc.default.Readable.from(e.stream())),this[fo]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Bc.default&&e.on("error",i=>{let a=i instanceof vf?i:new Sa(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[fo].error=a})}get body(){return this[fo].stream}get bodyUsed(){return this[fo].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await LY(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new tm,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(sUe(),nUe));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[fo].body&&this[fo].body.type||"",r=await this.arrayBuffer();return new Tu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await LY(this);return new TextDecoder().decode(e)}buffer(){return LY(this)}};Hl.prototype.buffer=(0,Sf.deprecate)(Hl.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Hl.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,Sf.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});qb=(t,e)=>{let r,n,{body:s}=t[fo];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Bc.default&&typeof s.getBoundary!="function"&&(r=new Bc.PassThrough({highWaterMark:e}),n=new Bc.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[fo].stream=r,s=n),s},ndr=(0,Sf.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),eL=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":kY(t)?"application/x-www-form-urlencoded;charset=UTF-8":bC(t)?t.type||null:Lo.Buffer.isBuffer(t)||Sf.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof tm?`multipart/form-data; boundary=${e[fo].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${ndr(t)}`:t instanceof Bc.default?null:"text/plain;charset=UTF-8",iUe=t=>{let{body:e}=t[fo];return e===null?0:bC(e)?e.size:Lo.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},aUe=async(t,{body:e})=>{e===null?t.end():await rdr(e,t)}});function oUe(t=[]){return new po(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return rL(e),WY(e,String(r)),!0}catch{return!1}}))}var MY,EC,rL,WY,po,nL=gr(()=>{MY=require("node:util"),EC=Ce(require("node:http"),1),rL=typeof EC.default.validateHeaderName=="function"?EC.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},WY=typeof EC.default.validateHeaderValue=="function"?EC.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},po=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!MY.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||MY.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return r=r.length>0?r.map(([n,s])=>(rL(n),WY(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(rL(a),WY(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(rL(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(po.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var sdr,vC,$Y=gr(()=>{sdr=new Set([301,302,303,307,308]),vC=t=>sdr.has(t)});var wu,Mo,cUe=gr(()=>{nL();tL();$Y();wu=Symbol("Response internals"),Mo=class t extends Hl{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new po(r.headers);if(e!==null&&!s.has("Content-Type")){let i=eL(e,this);i&&s.append("Content-Type",i)}this[wu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[wu].type}get url(){return this[wu].url||""}get status(){return this[wu].status}get ok(){return this[wu].status>=200&&this[wu].status<300}get redirected(){return this[wu].counter>0}get statusText(){return this[wu].statusText}get headers(){return this[wu].headers}get highWaterMark(){return this[wu].highWaterMark}clone(){return new t(qb(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!vC(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[wu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new po(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(Mo.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var uUe,lUe=gr(()=>{uUe=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function dUe(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function hUe(t){if(!pUe.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function idr(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,fUe.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function jb(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:idr(t)}function gUe(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=dUe(s),a=dUe(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return jb(i)&&!jb(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:jb(i)&&!jb(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return jb(i)&&!jb(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function yUe(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&pUe.has(n)&&(r=n);return r}var fUe,pUe,mUe,UY=gr(()=>{fUe=require("node:net");pUe=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),mUe="strict-origin-when-cross-origin"});var AUe,xUe,oi,SC,adr,nm,bUe,_Ue=gr(()=>{AUe=require("node:url"),xUe=require("node:util");nL();tL();YB();lUe();UY();oi=Symbol("Request internals"),SC=t=>typeof t=="object"&&typeof t[oi]=="object",adr=(0,xUe.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),nm=class t extends Hl{constructor(e,r={}){let n;if(SC(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!SC(r)&&"data"in r&&adr(),(r.body!=null||SC(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:SC(e)&&e.body!==null?qb(e):null;super(i,{size:r.size||e.size||0});let a=new po(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=eL(i,this);u&&a.set("Content-Type",u)}let o=SC(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!j$e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[oi]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[oi].method}get url(){return(0,AUe.format)(this[oi].parsedURL)}get headers(){return this[oi].headers}get redirect(){return this[oi].redirect}get signal(){return this[oi].signal}get referrer(){if(this[oi].referrer==="no-referrer")return"";if(this[oi].referrer==="client")return"about:client";if(this[oi].referrer)return this[oi].referrer.toString()}get referrerPolicy(){return this[oi].referrerPolicy}set referrerPolicy(e){this[oi].referrerPolicy=hUe(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(nm.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});bUe=t=>{let{parsedURL:e}=t[oi],r=new po(t[oi].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=iUe(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=mUe),t.referrer&&t.referrer!=="no-referrer"?t[oi].referrer=gUe(t):t[oi].referrer="no-referrer",t[oi].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=uUe(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var IC,EUe=gr(()=>{KB();IC=class extends vf{constructor(e,r="aborted"){super(e,r)}}});var sL={};os(sL,{AbortError:()=>IC,Blob:()=>Tu,FetchError:()=>Sa,File:()=>em,FormData:()=>tm,Headers:()=>po,Request:()=>nm,Response:()=>Mo,blobFrom:()=>J$e,blobFromSync:()=>Y$e,default:()=>Qb,fileFrom:()=>X$e,fileFromSync:()=>Z$e,isRedirect:()=>vC});async function Qb(t,e){return new Promise((r,n)=>{let s=new nm(t,e),{parsedURL:i,options:a}=bUe(s);if(!odr.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=P$e(s.url),h=new Mo(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?SUe.default:vUe.default).request,{signal:c}=s,u=null,l=()=>{let m=new IC("The operation was aborted.");n(m),s.body&&s.body instanceof Wo.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new Sa(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),cdr(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",y=>{if(u&&h<m._eventsCount&&!y){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=oUe(m.rawHeaders);if(vC(m.statusCode)){let A=h.get("Location"),S=null;try{S=A===null?null:new URL(A,s.url)}catch{if(s.redirect!=="manual"){n(new Sa(`uri requested responds with an invalid redirect URL: ${A}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new Sa(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(S===null)break;if(s.counter>=s.follow){n(new Sa(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let I={headers:new po(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:qb(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!Q$e(s.url,S)||!H$e(s.url,S))for(let w of["authorization","www-authenticate","cookie","cookie2"])I.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof Wo.default.Readable){n(new Sa("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(I.method="GET",I.body=void 0,I.headers.delete("content-length"));let R=yUe(h);R&&(I.referrerPolicy=R),r(Qb(new nm(S,I))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let y=(0,Wo.pipeline)(m,new Wo.PassThrough,A=>{A&&n(A)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new Mo(y,g),r(u);return}let x={flush:Ig.default.Z_SYNC_FLUSH,finishFlush:Ig.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){y=(0,Wo.pipeline)(y,Ig.default.createGunzip(x),A=>{A&&n(A)}),u=new Mo(y,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let A=(0,Wo.pipeline)(m,new Wo.PassThrough,S=>{S&&n(S)});A.once("data",S=>{(S[0]&15)===8?y=(0,Wo.pipeline)(y,Ig.default.createInflate(),I=>{I&&n(I)}):y=(0,Wo.pipeline)(y,Ig.default.createInflateRaw(),I=>{I&&n(I)}),u=new Mo(y,g),r(u)}),A.once("end",()=>{u||(u=new Mo(y,g),r(u))});return}if(b==="br"){y=(0,Wo.pipeline)(y,Ig.default.createBrotliDecompress(),A=>{A&&n(A)}),u=new Mo(y,g),r(u);return}u=new Mo(y,g),r(u)}),aUe(f,s).catch(n)})}function cdr(t,e){let r=CC.Buffer.from(`0\r
|
|
\r
|
|
`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=CC.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=CC.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&CC.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var vUe,SUe,Ig,Wo,CC,odr,TC=gr(()=>{vUe=Ce(require("node:http"),1),SUe=Ce(require("node:https"),1),Ig=Ce(require("node:zlib"),1),Wo=Ce(require("node:stream"),1),CC=require("node:buffer");D$e();tL();cUe();nL();_Ue();OY();EUe();$Y();zB();YB();UY();DY();odr=new Set(["data:","http:","https:"])});function In(t){return udr[t]||t}function FY(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function Ae(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=_e.getStore()||"system";a>0?(E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=FY(e.signal,u);try{let f;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(TC(),sL))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){E("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),x="",A=32768;for(let S=0;S<b.length;S+=A){let I=b.subarray(S,S+A);x+=String.fromCharCode.apply(null,I)}p=btoa(x)}else if(e.zlibMode){E("info","[Utils] [HTTP] zlib\u6A21\u5F0F");let g=await f.arrayBuffer(),b;if(typeof DecompressionStream<"u"){let x=new DecompressionStream("deflate"),A=new Response(new Blob([g]).stream().pipeThrough(x));try{b=await A.text()}catch(S){throw E("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u89E3\u538B\u7F29\u5931\u8D25`,S),S}}else{E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528pako\u89E3\u538B");try{let A=(await import("pako")).inflate(new Uint8Array(g));b=new TextDecoder("utf-8").decode(A)}catch(x){throw E("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25`,x),x}}p=b}else p=await f.text();let m;try{m=JSON.parse(p)}catch{m=p}let h={},y=[];for(let[g,b]of f.headers.entries())g.toLowerCase()==="set-cookie"?y.push(b):h[g]=b;return y.length>0&&(h["set-cookie"]=y.join(";")),a>0&&E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=_e.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(E("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(E("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),E("error","- \u6D88\u606F:",f.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(E("error","- \u7801:",f.cause.code),E("error","- \u539F\u56E0:",f.cause.message))),a<r){E("info",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{d()}}let i=_e.getStore()||"system";throw E("error",`[${i}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${r+1} \u6B21\u5C1D\u8BD5)`),s}async function Gr(t,e,r={}){let n=parseInt(r.retries||"0",10)||0,s=Array.isArray(r.validStatusCodes)?r.validStatusCodes:[],i;for(let o=0;o<=n;o++){let c=_e.getStore()||"system";o>0?(E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=FY(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,y={method:"POST",headers:{...p},body:e,signal:l.signal};h||(y.redirect="manual");try{let g;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let A=(await Promise.resolve().then(()=>(TC(),sL))).default;g=await A(t,y)}else g=await fetch(t,y);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw E("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let x;try{x=JSON.parse(b)}catch{x=b}return o>0&&E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:x,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=_e.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(E("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(E("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),E("error","- \u6D88\u606F:",g.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(E("error","- \u7801:",g.cause.code),E("error","- \u539F\u56E0:",g.cause.message))),o<n){E("info",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{f()}}let a=_e.getStore()||"system";throw E("error",`[${a}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${n+1} \u6B21\u5C1D\u8BD5)`),i}async function qY(t,e,r,n={}){let s=_e.getStore()||"system";E("info",`[${s}] [\u8BF7\u6C42\u6A21\u62DF] HTTP ${t}: ${e}`);let{headers:i={}}=n,a=Array.isArray(n.validStatusCodes)?n.validStatusCodes:[],o={method:t,headers:{...i}};r!=null&&(o.body=r),n.body!==void 0&&n.body!==null&&(o.body=n.body),n.signal&&(o.signal=n.signal);try{let c=await fetch(e,o),u=await c.text();if(!c.ok&&!a.includes(c.status))throw E("error",`[${s}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,u),new Error(`HTTP error! status: ${c.status}`);let l;try{l=JSON.parse(u)}catch{l=u}return{data:l,status:c.status,headers:Object.fromEntries(c.headers.entries())}}catch(c){let u=_e.getStore()||"system";throw E("error",`[${u}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,c.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",e),E("error","- \u9519\u8BEF\u7C7B\u578B:",c.name),E("error","- \u6D88\u606F:",c.message),c.cause&&(E("error","- \u7801:",c.cause?.code),E("error","- \u539F\u56E0:",c.cause?.message)),c}}async function iL(t,e,r={}){return qY("PATCH",t,e,r)}async function CUe(t,e,r={}){return qY("PUT",t,e,r)}async function Hb(t,e={}){return qY("DELETE",t,void 0,e)}async function TUe(t){try{let n=(await Ae(t,{headers:{"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15"}})).data.match(/<title[^>]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():t}catch(e){let r=_e.getStore()||"system";return E("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function We(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function wUe(t,e=200){if(typeof t!="string"||!t.trim().startsWith("<?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 Ii(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 wC(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function Gb(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function RUe(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function jY(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=FY(e.signal,o);try{let l=_e.getStore()||"system";E("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let S=_e.getStore()||"system";E("warn",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let I=await d.text();if(clearTimeout(c),r&&!r(I.slice(0,i)))return E("info",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(I)}catch{return I}}let p=0,m=[],h=!1,y="",g=!1;for(;;){let{done:S,value:I}=await f.read();if(S)break;if(p+=I.length,!g&&r){let R=new TextDecoder("utf-8").decode(I,{stream:!0});if(y+=R,!r(y)){let w=_e.getStore()||"system";E("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,y=null)}m.push(I)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),x=0;for(let S of m)b.set(S,x),x+=S.length;let A=new TextDecoder("utf-8").decode(b);try{return JSON.parse(A)}catch{return A}}catch(l){let d=_e.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||E("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var IUe,_e,udr,dr=gr(()=>{kt();vt();IUe=require("node:async_hooks"),_e=new IUe.AsyncLocalStorage,udr={360:"360kan",imgo:"mango"}});function sn(t){let e=0;for(let r=0;r<t.length;r++){let n=t.charCodeAt(r);e=(e<<5)-e+n,e=e>>>0}return e.toString(16)}function zb(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ms(t){function e(x){let A="";for(let S=0;S<x.length;S++){let I=x.charCodeAt(S);I<128?A+=String.fromCharCode(I):I<2048?(A+=String.fromCharCode(192|I>>6),A+=String.fromCharCode(128|I&63)):(A+=String.fromCharCode(224|I>>12),A+=String.fromCharCode(128|I>>6&63),A+=String.fromCharCode(128|I&63))}return A}t=e(t);function r(x,A){return x<<A|x>>>32-A}function n(x,A){let S=x&1073741824,I=A&1073741824,R=x&2147483648,w=A&2147483648,N=(x&1073741823)+(A&1073741823);return S&I?N^2147483648^R^w:S|I?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(x,A,S){return x&A|~x&S}function i(x,A,S){return x&S|A&~S}function a(x,A,S){return x^A^S}function o(x,A,S){return A^(x|~S)}function c(x,A,S,I,R,w,N){return x=n(x,n(n(s(A,S,I),R),N)),n(r(x,w),A)}function u(x,A,S,I,R,w,N){return x=n(x,n(n(i(A,S,I),R),N)),n(r(x,w),A)}function l(x,A,S,I,R,w,N){return x=n(x,n(n(a(A,S,I),R),N)),n(r(x,w),A)}function d(x,A,S,I,R,w,N){return x=n(x,n(n(o(A,S,I),R),N)),n(r(x,w),A)}function f(x){let A=x.length,S=((A+8>>>6)+1)*16,I=new Array(S).fill(0);for(let R=0;R<A;R++)I[R>>2]|=x.charCodeAt(R)<<R%4*8;return I[A>>2]|=128<<A%4*8,I[S-2]=A*8,I}function p(x){let A="";for(let S=0;S<=3;S++){let R="0"+(x>>>S*8&255).toString(16);A+=R.substr(R.length-2,2)}return A}let m=f(t),h=1732584193,y=4023233417,g=2562383102,b=271733878;for(let x=0;x<m.length;x+=16){let A=h,S=y,I=g,R=b;h=c(h,y,g,b,m[x+0],7,3614090360),b=c(b,h,y,g,m[x+1],12,3905402710),g=c(g,b,h,y,m[x+2],17,606105819),y=c(y,g,b,h,m[x+3],22,3250441966),h=c(h,y,g,b,m[x+4],7,4118548399),b=c(b,h,y,g,m[x+5],12,1200080426),g=c(g,b,h,y,m[x+6],17,2821735955),y=c(y,g,b,h,m[x+7],22,4249261313),h=c(h,y,g,b,m[x+8],7,1770035416),b=c(b,h,y,g,m[x+9],12,2336552879),g=c(g,b,h,y,m[x+10],17,4294925233),y=c(y,g,b,h,m[x+11],22,2304563134),h=c(h,y,g,b,m[x+12],7,1804603682),b=c(b,h,y,g,m[x+13],12,4254626195),g=c(g,b,h,y,m[x+14],17,2792965006),y=c(y,g,b,h,m[x+15],22,1236535329),h=u(h,y,g,b,m[x+1],5,4129170786),b=u(b,h,y,g,m[x+6],9,3225465664),g=u(g,b,h,y,m[x+11],14,643717713),y=u(y,g,b,h,m[x+0],20,3921069994),h=u(h,y,g,b,m[x+5],5,3593408605),b=u(b,h,y,g,m[x+10],9,38016083),g=u(g,b,h,y,m[x+15],14,3634488961),y=u(y,g,b,h,m[x+4],20,3889429448),h=u(h,y,g,b,m[x+9],5,568446438),b=u(b,h,y,g,m[x+14],9,3275163606),g=u(g,b,h,y,m[x+3],14,4107603335),y=u(y,g,b,h,m[x+8],20,1163531501),h=u(h,y,g,b,m[x+13],5,2850285829),b=u(b,h,y,g,m[x+2],9,4243563512),g=u(g,b,h,y,m[x+7],14,1735328473),y=u(y,g,b,h,m[x+12],20,2368359562),h=l(h,y,g,b,m[x+5],4,4294588738),b=l(b,h,y,g,m[x+8],11,2272392833),g=l(g,b,h,y,m[x+11],16,1839030562),y=l(y,g,b,h,m[x+14],23,4259657740),h=l(h,y,g,b,m[x+1],4,2763975236),b=l(b,h,y,g,m[x+4],11,1272893353),g=l(g,b,h,y,m[x+7],16,4139469664),y=l(y,g,b,h,m[x+10],23,3200236656),h=l(h,y,g,b,m[x+13],4,681279174),b=l(b,h,y,g,m[x+0],11,3936430074),g=l(g,b,h,y,m[x+3],16,3572445317),y=l(y,g,b,h,m[x+6],23,76029189),h=l(h,y,g,b,m[x+9],4,3654602809),b=l(b,h,y,g,m[x+12],11,3873151461),g=l(g,b,h,y,m[x+15],16,530742520),y=l(y,g,b,h,m[x+2],23,3299628645),h=d(h,y,g,b,m[x+0],6,4096336452),b=d(b,h,y,g,m[x+7],10,1126891415),g=d(g,b,h,y,m[x+14],15,2878612391),y=d(y,g,b,h,m[x+5],21,4237533241),h=d(h,y,g,b,m[x+12],6,1700485571),b=d(b,h,y,g,m[x+3],10,2399980690),g=d(g,b,h,y,m[x+10],15,4293915773),y=d(y,g,b,h,m[x+1],21,2240044497),h=d(h,y,g,b,m[x+8],6,1873313359),b=d(b,h,y,g,m[x+15],10,4264355552),g=d(g,b,h,y,m[x+6],15,2734768916),y=d(y,g,b,h,m[x+13],21,1309151649),h=d(h,y,g,b,m[x+4],6,4149444226),b=d(b,h,y,g,m[x+11],10,3174756917),g=d(g,b,h,y,m[x+2],15,718787259),y=d(y,g,b,h,m[x+9],21,3951481745),h=n(h,A),y=n(y,S),g=n(g,I),b=n(b,R)}return(p(h)+p(y)+p(g)+p(b)).toLowerCase()}function PUe(t){let e=Cg(t),r=[],n=0;for(;n<e.length&&e[n++]===10;){let[i,a]=NUe(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]=GY(i,o);switch(o=p,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,p]=NUe(i,o);switch(o=p,l){case 6:c.midHash=Lc(f);break;case 7:c.content=Lc(f);break;case 10:c.action=Lc(f);break;case 12:c.idStr=Lc(f);break;case 14:c.animation=Lc(f);break;case 16:c.color_v2=Lc(f);break}}else{let[f,p]=GY(i,o);o=p}}r.push(c)}return r}function GY(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<<n,!(i&128))break;n+=7n}return[Number(r),s]}function NUe(t,e){let[r,n]=GY(t,e),s=n,i=s+r;return[t.slice(s,i),i]}function Vr(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 OUe(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 ddr(t){return Uint8Array.from([t[1],t[2],t[3],t[0]])}function aL(t){return Uint8Array.from(t.map(e=>DUe[e]))}function oL(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=OUe(aL(ddr(a)),Uint8Array.from([ldr[i/4],0,0,0]))),s[i]=OUe(s[i-4],a)}return s}function fdr(t,e){let s=new Uint8Array(t);s=QY(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=NC(s),s=RC(s),s=QY(s,e.slice(i*4,(i+1)*4)),s=pdr(s);return s=NC(s),s=RC(s),s=QY(s,e.slice(0,4)),s}function QY(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function RC(t){let e=new Array(256);for(let r=0;r<256;r++)e[DUe[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function NC(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function pdr(t){function e(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function mdr(t,e){let r=oL(e),n=16,s=new Uint8Array(t.length);for(let i=0;i<t.length;i+=n){let a=t.slice(i,i+n),o=fdr(a,r);s.set(o,i)}return s}function hdr(t){let e=t[t.length-1];return t.slice(0,t.length-e)}function Cg(t){let e=typeof atob=="function"?atob(t):gdr(t),r=e.length,n=new Uint8Array(r);for(let s=0;s<r;s++)n[s]=e.charCodeAt(s);return n}function gdr(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 Lc(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 Tg(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 ydr(t,e){try{let r=Cg(t),n=Tg(e),s=mdr(r,n),i=hdr(s);return Lc(i)}catch(r){return E("error","[Utils] [Codec]",r),null}}function OC(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=ydr(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Adr(t){let e=[];for(let r=0;r<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 cL(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 HY(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u<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],y=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,k=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+k|0}let x=e(6,m)^e(11,m)^e(25,m),A=m&h^~m&y,S=g+x+A+o[b]+i[b]|0,I=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=I+R|0;g=y,y=h,h=m,m=p+S|0,p=f,f=d,d=l,l=S+w|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+p|0,a[4]=a[4]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+y|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function BUe(t,e){let n=Adr(t);n.length>64&&(n=HY(t)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=HY(String.fromCharCode(...i)+e),o=HY(String.fromCharCode(...s)+String.fromCharCode(...a));return cL(o)}function kC(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ms(s)}function kUe(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function If(t){if(!t)return t;let e={"<":"<",">":">","&":"&",""":'"',"'":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>kUe(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>kUe(parseInt(n,16)))}var DUe,ldr,ws=gr(()=>{vt();DUe=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],ldr=[0,1,2,4,8,16,32,64,128,27,54]});var MUe={};os(MUe,{getRedisCaches:()=>VY,getRedisKey:()=>xdr,judgeRedisValid:()=>YY,pingRedis:()=>LUe,runPipeline:()=>KY,setRedisKey:()=>zY,setRedisKeyWithExpiry:()=>bdr,updateRedisCaches:()=>uL});async function LUe(){let t=`${O.redisUrl}/ping`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(E("error","- [Utils] [Redis] \u7801:",e.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function xdr(t){let e=`${O.redisUrl}/get/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function zY(t,e){let r=zb(t,e),n=sn(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){E("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(E("error","- [Utils] [Redis] \u7801:",i.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function bdr(t,e,r){let n=zb(t,e),s=sn(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){E("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(E("error","- [Utils] [Redis] \u7801:",a.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function KY(t){let e=`${O.redisUrl}/pipeline`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){E("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function VY(){if(!O.redisCacheInitialized)try{E("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await KY(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),E("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,E("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function uL(){try{E("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=sn(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){E("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await KY(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){E("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function YY(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await LUe();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var lL=gr(()=>{kt();vt();ws()});function WUe(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function JY(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function $o(t){let e="";for(let r=0;r<t.length;r++){let n=t.charAt(r);if(_dr.has(n)){e+=n;continue}let s=WUe().indexOf(n);s!==-1?e+=JY().charAt(s):e+=n}return e}function zt(t){let e="";for(let r=0;r<t.length;r++)JY().indexOf(t.charAt(r))!=-1?e+=WUe().charAt(JY().indexOf(t.charAt(r))):e+=t.charAt(r);return e}function Cf(t){return!/[\u4e00-\u9fff]/.test(t)}var _dr,mo=gr(()=>{_dr=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function rs(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{E("error","[Utils] [Common] Unsupported data type");return}E("info","[Utils] [Common]",e.slice(0,200))}function im(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function Gl(t){if(/^\d+$/.test(t))return Number(t);let e={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a<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 $Ue(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:XY(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:XY(n)}}else return{cleanFileName:r,preferredPlatform:XY(n)}}}function XY(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function UUe(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return E("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function FUe(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Dr(t){return t?String(t).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function am(t,e){if(!t||!e)return!1;let r=Dr(t),n=Dr(e);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function $t(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五å…七八ä¹å百åƒä¸‡]+)\s*[壿œŸéƒ¨])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return Gl(r)}return null}function xt(t,e,r=null){if(O.strictTitleMatch)return am(t,e);let n=Dr(t).toLowerCase(),i=[Dr(e).toLowerCase()];try{i=[...new Set([e,zt(e),$o(e)])].map(o=>Dr(o).toLowerCase()).filter(Boolean)}catch{}let a=r!==null?r:$t(e);if(a!==null&&r===null){let o=e.replace(/(?:season|s|第)\s*[0-9一二三四五å…七八ä¹å]+\s*(?:å£|期|部(?!分))?/gi,"").trim();o&&o!==e&&(i=[...new Set([...i,Dr(o).toLowerCase()])])}if(a!==null){let o=$t(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>n.includes(o))?!0:i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function tt(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Tt(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Dr(r),s=n.match(/第\s*([0-9一二三四五å…七八ä¹å壹贰å肆ä¼é™†æŸ’æŒçŽ–æ‹¾]+)\s*[壿œŸéƒ¨]/);if(s)return{season:Gl(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五å…七八ä¹å壹贰å肆ä¼é™†æŸ’æŒçŽ–æ‹¾]+)$/);return c?{season:Gl(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function Tf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function eJ(t,e){let{season:r,baseTitle:n}=Tt(t),s=Tf(e);return{baseTitle:n,season:r,episode:s}}var sm,ZY,mn=gr(()=>{kt();vt();mo();sm=t=>{let e=t.match(/ã€(.*?)】/);return e?e[1]:null},ZY=t=>t.split("(")[0].trim()});var om,dL,fL,pL,mL,tJ,rJ,hL,St,Kb,ys=gr(()=>{mn();om=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:p=[],isHiddenChild:m=!1}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string","type"),tt(i,"string"),tt(a,"string"),tt(o,"string"),tt(c,"number"),tt(u,"number"),tt(l,"boolean"),tt(d,"string"),tt(f,"array"),tt(p,"array"),tt(m,"boolean"),this.links=f.map(h=>dL.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>dL.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},dL=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},fL=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){tt(e,"number"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string","type"),tt(a,"string"),tt(o,"number"),tt(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},pL=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};pL.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};mL=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new pL(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},tJ=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},rJ=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){tt(e,"string"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},hL=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"boolean"),tt(a,"number"),tt(o,"boolean"),tt(c,"number"),tt(u,"string"),tt(l,"string"),tt(d,"array"),tt(f,"array");let p=d.map(m=>tJ.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>rJ.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},St=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){tt(e,"string"),tt(r,"array"),tt(n,"number"),this.segmentList=r.map(s=>Kb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>Kb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},Kb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){tt(e,"string","type"),tt(r,"number","segment_start"),tt(n,"number","segment_end"),tt(s,"string","url"),i!==void 0&&tt(i,"string","data"),a!==void 0&&tt(a,"string","_m_h5_tk"),o!==void 0&&tt(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var VUe={};os(VUe,{addAnime:()=>Bt,addEpisode:()=>zUe,cleanupExpiredIPs:()=>xL,findAnimeIdByCommentId:()=>AL,findAnimeTitleById:()=>aJ,findIndexById:()=>yL,findTitleById:()=>iJ,findUrlById:()=>UC,getCommentCache:()=>wf,getDirname:()=>bL,getLastSearch:()=>sJ,getLocalCaches:()=>lJ,getPreferAnimeId:()=>uJ,getSearchCache:()=>MC,isCommentCacheValid:()=>GUe,isSearchCacheValid:()=>HUe,judgeLocalCacheValid:()=>dJ,readCacheFromFile:()=>wg,removeEarliestAnime:()=>Ut,removeEpisodeByUrl:()=>KUe,resolveAnimeById:()=>Rg,resolveAnimeByIdFromDetailStore:()=>Ng,resolveEpisodeContextById:()=>Yb,setCommentCache:()=>$C,setLastSearch:()=>nJ,setPreferByAnimeId:()=>cJ,setSearchCache:()=>WC,storeAnimeIdsToMap:()=>oJ,updateLocalCaches:()=>EL,writeCacheToFile:()=>_L});function nJ(t,e){if(PC.set(t,{...e,timestamp:Date.now()}),PC.size>200)for(let[r,n]of PC)Date.now()-n.timestamp>3600*1e3&&PC.delete(r)}function sJ(t){return PC.get(t)}function Vb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function qUe(t,e){if(!(t instanceof Map)||!e)return;let r=Vb(e);r&&t.set(r,e)}function*LC(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=Vb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Edr(t){let e=[];for(let r of LC(t))e.push(r);return e}function vdr(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),E("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function jUe(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&E("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Sdr(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function gL(t,e,r=null){let n=null;for(let s of t)if(Sdr(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*QUe(){let t=new Set;for(let e of vdr())if(Array.isArray(e.details))for(let r of e.details){let n=Vb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function Rg(t,e=null,r=null){let n=String(t),s=gL(O.animes,n,r);return s||(s=gL(LC(e),n,r),s)?s:gL(QUe(),n,r)}function Ng(t,e=null,r=null){let n=String(t);return gL(LC(e),n,r)}function Yb(t,e=null){let r=Number(t);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of O.animes){let a=n(i);if(a)return a}for(let i of LC(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=Vb(i);a&&s.add(a)}for(let i of LC(e)){let a=Vb(i);a&&s.add(a)}for(let i of QUe()){let a=Vb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function HUe(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),E("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function MC(t,e=null){if(HUe(t)){E("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{qUe(e,n)}),r.results}return null}function WC(t,e,r=null){let n=Edr(r);if(jUe(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),E("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}E("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function GUe(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),E("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function wf(t){return GUe(t)?(E("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function $C(t,e){if(jUe(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),E("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}E("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function zUe(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return E("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),E("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function KUe(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(E("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(E("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function UC(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=Yb(t);return r?.link?.url?(E("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(E("error",`[Cache] No URL found for ID: ${t}`),null)}function yL(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return E("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=Yb(t);return r?(E("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(E("error",`[Cache] No index found for ID: ${t}`),-1)}function iJ(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=Yb(t);return r?.link?.title?(E("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(E("error",`[Cache] No TITLE found for ID: ${t}`),null)}function aJ(t){let e=Yb(t);return e?.anime?.animeTitle?(E("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(E("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Bt(t,e=null){t=om.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return E("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=zUe(i.url,i.title);a&&r.push(a)}else E("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=om.fromJson({...t,links:r});qUe(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),E("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),E("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&(Ut()||E("error","[Cache] Failed to remove earliest anime, but continuing")),E("info",`[Cache] animes: ${JSON.stringify(O.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return E("error",`[Cache] addAnime failed: ${r.message}`),!1}}function Ut(){if(O.animes.length===0)return E("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return E("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&KUe(e.url)}),!0}function oJ(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),E("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function AL(t){let e=Yb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function cJ(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function uJ(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function xL(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,E("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length<s.length&&O.requestHistory.set(n,i)}r>0&&E("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function bL(){return typeof __dirname<"u"?__dirname:BC.join(process.cwd(),"danmu_api","utils")}function wg(t){let e=BC.join(bL(),"..","..",".cache",`${t}`);if(DC.existsSync(e)){let r=DC.readFileSync(e,"utf8");return JSON.parse(r)}return null}function _L(t,e){let r=BC.join(bL(),"..","..",".cache",`${t}`);DC.writeFileSync(r,JSON.stringify(e),"utf8")}async function lJ(){if(!O.localCacheInitialized)try{E("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(wg("animes"))||O.animes,O.episodeIds=JSON.parse(wg("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(wg("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(wg("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(wg("todayReqNum"))||O.todayReqNum;let t=wg("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),E("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,E("info","[Cache] getLocalCaches completed successfully.")}catch(t){E("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function EL(){try{E("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=sn(s);i!==O.lastHashes[r]&&(_L(r,s),t.push({key:r,hash:i}))}t.length>0?(E("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):E("info","[Cache] No changes detected, skipping local cache update.")}catch(t){E("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),E("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function dJ(t,e){if(e==="node")try{if(DC=await import("fs"),BC=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=BC.join(bL(),"..","..",".cache");DC.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){E("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var DC,BC,PC,Un=gr(()=>{kt();vt();ys();ws();PC=new Map});var gJ=_(wL=>{"use strict";Object.defineProperty(wL,"__esModule",{value:!0});wL.VerbatimString=void 0;var hJ=class extends String{format;constructor(e,r){super(r),this.format=e}};wL.VerbatimString=hJ});var zl=_(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.MultiErrorReply=br.CommandTimeoutDuringMaintenanceError=br.SocketTimeoutDuringMaintenanceError=br.TimeoutError=br.BlobError=br.SimpleError=br.ErrorReply=br.ReconnectStrategyError=br.RootNodesUnavailableError=br.SocketClosedUnexpectedlyError=br.DisconnectsClientError=br.ClientOfflineError=br.ClientClosedError=br.SocketTimeoutError=br.ConnectionTimeoutError=br.WatchError=br.AbortError=void 0;var yJ=class extends Error{constructor(){super("The command was aborted")}};br.AbortError=yJ;var AJ=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};br.WatchError=AJ;var xJ=class extends Error{constructor(){super("Connection timeout")}};br.ConnectionTimeoutError=xJ;var bJ=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};br.SocketTimeoutError=bJ;var _J=class extends Error{constructor(){super("The client is closed")}};br.ClientClosedError=_J;var EJ=class extends Error{constructor(){super("The client is offline")}};br.ClientOfflineError=EJ;var vJ=class extends Error{constructor(){super("Disconnects client")}};br.DisconnectsClientError=vJ;var SJ=class extends Error{constructor(){super("Socket closed unexpectedly")}};br.SocketClosedUnexpectedlyError=SJ;var IJ=class extends Error{constructor(){super("All the root nodes are unavailable")}};br.RootNodesUnavailableError=IJ;var CJ=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};br.ReconnectStrategyError=CJ;var Zb=class extends Error{};br.ErrorReply=Zb;var TJ=class extends Zb{};br.SimpleError=TJ;var wJ=class extends Zb{};br.BlobError=wJ;var jC=class extends Error{};br.TimeoutError=jC;var RJ=class extends jC{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};br.SocketTimeoutDuringMaintenanceError=RJ;var NJ=class extends jC{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};br.CommandTimeoutDuringMaintenanceError=NJ;var OJ=class extends Zb{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};br.MultiErrorReply=OJ});var OL=_(mt=>{"use strict";var kJ;Object.defineProperty(mt,"__esModule",{value:!0});mt.Decoder=mt.PUSH_TYPE_MAPPING=mt.RESP_TYPES=void 0;var aFe=gJ(),RL=zl();mt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Yr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};mt.PUSH_TYPE_MAPPING={[mt.RESP_TYPES.BLOB_STRING]:Buffer};var NL=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e<e.length);this.#e-=e.length}#r(e,r){return this.#t=void 0,this.#n(e,r)}#n(e,r){switch(e){case mt.RESP_TYPES.NULL:return this.onReply(this.#s()),!1;case mt.RESP_TYPES.BOOLEAN:return this.#a(this.onReply,this.#i(r));case mt.RESP_TYPES.NUMBER:return this.#a(this.onReply,this.#c(this.getTypeMapping()[mt.RESP_TYPES.NUMBER],r));case mt.RESP_TYPES.BIG_NUMBER:return this.#a(this.onReply,this.#d(this.getTypeMapping()[mt.RESP_TYPES.BIG_NUMBER],r));case mt.RESP_TYPES.DOUBLE:return this.#a(this.onReply,this.#g(this.getTypeMapping()[mt.RESP_TYPES.DOUBLE],r));case mt.RESP_TYPES.SIMPLE_STRING:return this.#a(this.onReply,this.#x(this.getTypeMapping()[mt.RESP_TYPES.SIMPLE_STRING],r));case mt.RESP_TYPES.BLOB_STRING:return this.#a(this.onReply,this.#T(this.getTypeMapping()[mt.RESP_TYPES.BLOB_STRING],r));case mt.RESP_TYPES.VERBATIM_STRING:return this.#a(this.onReply,this.#O(this.getTypeMapping()[mt.RESP_TYPES.VERBATIM_STRING],r));case mt.RESP_TYPES.SIMPLE_ERROR:return this.#a(this.onErrorReply,this.#H(r));case mt.RESP_TYPES.BLOB_ERROR:return this.#a(this.onErrorReply,this.#z(r));case mt.RESP_TYPES.ARRAY:return this.#a(this.onReply,this.#q(this.getTypeMapping(),r));case mt.RESP_TYPES.SET:return this.#a(this.onReply,this.#J(this.getTypeMapping(),r));case mt.RESP_TYPES.MAP:return this.#a(this.onReply,this.#te(this.getTypeMapping(),r));case mt.RESP_TYPES.PUSH:return this.#a(this.onPush,this.#q(mt.PUSH_TYPE_MAPPING,r));default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#a(e,r){return typeof r=="function"?(this.#t=this.#o.bind(this,e,r),!0):(e(r),!1)}#o(e,r,n){return this.#t=void 0,this.#a(e,r(n))}#s(){return this.#e+=2,null}#i(e){let r=e[this.#e]===Yr.t;return this.#e+=3,r}#c(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr["+"]:return this.#l(!1,r);case Yr["-"]:return this.#l(!0,r);default:return this.#h(!1,this.#p.bind(this,0),r)}}#l(e,r){let n=this.#p.bind(this,0);return++this.#e===r.length?this.#h.bind(this,e,n):this.#h(e,n,r)}#h(e,r,n){let s=r(n);return typeof s=="function"?this.#h.bind(this,e,s):e?-s:s}#p(e,r){let n=this.#e;do{let s=r[n];if(s===Yr["\r"])return this.#e=n+2,e;e=e*10+s-Yr[0]}while(++n<r.length);return this.#e=n,this.#p.bind(this,e)}#d(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr["+"]:return this.#f(!1,r);case Yr["-"]:return this.#f(!0,r);default:return this.#m(!1,this.#A.bind(this,0n),r)}}#f(e,r){let n=this.#A.bind(this,0n);return++this.#e===r.length?this.#m.bind(this,e,n):this.#m(e,n,r)}#m(e,r,n){let s=r(n);return typeof s=="function"?this.#m.bind(this,e,s):e?-s:s}#A(e,r){let n=this.#e;do{let s=r[n];if(s===Yr["\r"])return this.#e=n+2,e;e=e*10n+BigInt(s-Yr[0])}while(++n<r.length);return this.#e=n,this.#A.bind(this,e)}#g(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr.n:return this.#e+=5,NaN;case Yr["+"]:return this.#_(!1,r);case Yr["-"]:return this.#_(!0,r);default:return this.#v(!1,0,r)}}#_(e,r){return++this.#e===r.length?this.#v.bind(this,e,0):this.#v(e,0,r)}#v(e,r,n){return n[this.#e]===Yr.i?(this.#e+=5,e?-1/0:1/0):this.#y(e,r,n)}#y(e,r,n){let s=this.#e;do{let i=n[s];switch(i){case Yr["."]:return this.#e=s+1,this.#e<n.length?this.#E(e,0,r,n):this.#E.bind(this,e,0,r);case Yr.E:case Yr.e:this.#e=s+1;let a=e?-r:r;return this.#e<n.length?this.#S(a,n):this.#S.bind(this,a);case Yr["\r"]:return this.#e=s+2,e?-r:r;default:r=r*10+i-Yr[0]}}while(++s<n.length);return this.#e=s,this.#y.bind(this,e,r)}static#I=[.1,.01,.001,1e-4,1e-5,1e-6,1e-7,1e-8,1e-9,1e-10,1e-11,1e-12,1e-13,1e-14,1e-15,1e-16,1e-17];#E(e,r,n,s){let i=this.#e;do{let a=s[i];switch(a){case Yr.E:case Yr.e:this.#e=i+1;let o=e?-n:n;return this.#e===s.length?this.#S.bind(this,o):this.#S(o,s);case Yr["\r"]:return this.#e=i+2,e?-n:n}r<kJ.#I.length&&(n+=(a-Yr[0])*kJ.#I[r++])}while(++i<s.length);return this.#e=i,this.#E.bind(this,e,r,n)}#S(e,r){switch(r[this.#e]){case Yr["+"]:return++this.#e===r.length?this.#b.bind(this,!1,e,0):this.#b(!1,e,0,r);case Yr["-"]:return++this.#e===r.length?this.#b.bind(this,!0,e,0):this.#b(!0,e,0,r)}return this.#b(!1,e,0,r)}#b(e,r,n,s){let i=this.#e;do{let a=s[i];if(a===Yr["\r"])return this.#e=i+2,r*10**(e?-n:n);n=n*10+a-Yr[0]}while(++i<s.length);return this.#e=i,this.#b.bind(this,e,r,n)}#u(e,r){for(;e[r]!==Yr["\r"];)if(++r===e.length)return this.#e=e.length,-1;return this.#e=r+2,r}#x(e,r){let n=this.#e,s=this.#u(r,n);if(s===-1)return this.#k.bind(this,[r.subarray(n)],e);let i=r.subarray(n,s);return e===Buffer?i:i.toString()}#k(e,r,n){let s=this.#e,i=this.#u(n,s);if(i===-1)return e.push(n.subarray(s)),this.#k.bind(this,e,r);e.push(n.subarray(s,i));let a=Buffer.concat(e);return r===Buffer?a:a.toString()}#T(e,r){if(r[this.#e]===Yr["-"])return this.#e+=4,null;let n=this.#p(0,r);return typeof n=="function"?this.#C.bind(this,n,e):this.#e>=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#C(e,r,n){let s=e(n);return typeof s=="function"?this.#C.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#P(this.#p.bind(this,0),e,r)}#P(e,r,n){let s=e(n);return typeof s=="function"?this.#P.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===aFe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#U.bind(this,e,n):this.#U(e,n,r)}#U(e,r,n){let s=r(n);return typeof s=="function"?this.#U.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#Q(r,this.#R.bind(this,e,String),n)}#Q(e,r,n){let s=r(n);return typeof s=="function"?this.#Q.bind(this,e,s):new aFe.VerbatimString(e,s)}#H(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new RL.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new RL.SimpleError(n)}#z(e){let r=this.#T(String,e);return typeof r=="function"?this.#K.bind(this,r):new RL.BlobError(r)}#K(e,r){let n=e(r);return typeof n=="function"?this.#K.bind(this,n):new RL.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#F.bind(this,n,e):this.#F(n,e,r)}#F(e,r,n){switch(e){case mt.RESP_TYPES.NULL:return this.#s();case mt.RESP_TYPES.BOOLEAN:return this.#i(n);case mt.RESP_TYPES.NUMBER:return this.#c(r[mt.RESP_TYPES.NUMBER],n);case mt.RESP_TYPES.BIG_NUMBER:return this.#d(r[mt.RESP_TYPES.BIG_NUMBER],n);case mt.RESP_TYPES.DOUBLE:return this.#g(r[mt.RESP_TYPES.DOUBLE],n);case mt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[mt.RESP_TYPES.SIMPLE_STRING],n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(r[mt.RESP_TYPES.BLOB_STRING],n);case mt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[mt.RESP_TYPES.VERBATIM_STRING],n);case mt.RESP_TYPES.SIMPLE_ERROR:return this.#H(n);case mt.RESP_TYPES.BLOB_ERROR:return this.#z(n);case mt.RESP_TYPES.ARRAY:return this.#q(r,n);case mt.RESP_TYPES.SET:return this.#J(r,n);case mt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Yr["-"]?(this.#e+=4,null):this.#V(this.#p(0,r),e,r)}#V(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#D(new Array(e),0,r,n)}#de(e,r,n){return this.#V(e(n),r,n)}#D(e,r,n,s){for(let i=r;i<e.length;i++){if(this.#e>=s.length)return this.#D.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#D(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[mt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#D(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[mt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#D(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case mt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#F(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};mt.Decoder=NL;kJ=NL});var cFe=_(e1=>{"use strict";Object.defineProperty(e1,"__esModule",{value:!0});e1.scriptSha1=e1.defineScript=void 0;var jdr=require("node:crypto");function Qdr(t){return{...t,SHA1:oFe(t.SCRIPT)}}e1.defineScript=Qdr;function oFe(t){return(0,jdr.createHash)("sha1").update(t).digest("hex")}e1.scriptSha1=oFe});var uFe=_(kL=>{"use strict";Object.defineProperty(kL,"__esModule",{value:!0});kL.digest=void 0;var PJ=null;async function Hdr(){if(!PJ)try{PJ=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return PJ}async function Gdr(t){let e=await Hdr(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}kL.digest=Gdr});var lFe=_(DJ=>{"use strict";Object.defineProperty(DJ,"__esModule",{value:!0});DJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var dFe=_(BJ=>{"use strict";Object.defineProperty(BJ,"__esModule",{value:!0});BJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var fFe=_(LJ=>{"use strict";Object.defineProperty(LJ,"__esModule",{value:!0});LJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var pFe=_(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var mFe=_(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var hFe=_($J=>{"use strict";Object.defineProperty($J,"__esModule",{value:!0});$J.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var gFe=_(UJ=>{"use strict";Object.defineProperty(UJ,"__esModule",{value:!0});UJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Kl=_(PL=>{"use strict";Object.defineProperty(PL,"__esModule",{value:!0});PL.BasicCommandParser=void 0;var FJ=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r<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))}};PL.BasicCommandParser=FJ});var we=_(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.transformRedisJsonNullReply=Me.transformRedisJsonReply=Me.transformRedisJsonArgument=Me.transformStreamsMessagesReplyResp3=Me.transformStreamsMessagesReplyResp2=Me.transformStreamMessagesReply=Me.transformStreamMessageNullReply=Me.transformStreamMessageReply=Me.parseArgs=Me.parseZKeysArguments=Me.transformRangeReply=Me.parseSlotRangesArguments=Me.transformFunctionListItemReply=Me.RedisFunctionFlags=Me.transformCommandReply=Me.CommandCategories=Me.CommandFlags=Me.parseOptionalVariadicArgument=Me.pushVariadicArgument=Me.pushVariadicNumberArguments=Me.pushVariadicArguments=Me.pushEvalArguments=Me.evalFirstKeyIndex=Me.transformPXAT=Me.transformEXAT=Me.transformSortedSetReply=Me.transformTuplesReply=Me.createTransformTuplesReplyFunc=Me.transformTuplesToMap=Me.transformNullableDoubleReply=Me.createTransformNullableDoubleReplyResp2Func=Me.transformDoubleArrayReply=Me.createTransformDoubleReplyResp2Func=Me.transformDoubleReply=Me.transformStringDoubleArgument=Me.transformDoubleArgument=Me.transformBooleanArrayReply=Me.transformBooleanReply=Me.isArrayReply=Me.isNullReply=void 0;var zdr=Kl(),qJ=OL();function jJ(t){return t===null}Me.isNullReply=jJ;function Kdr(t){return Array.isArray(t)}Me.isArrayReply=Kdr;Me.transformBooleanReply={2:t=>t===1,3:void 0};Me.transformBooleanArrayReply={2:t=>t.map(Me.transformBooleanReply[2]),3:void 0};function DL(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Me.transformDoubleArgument=DL;function Vdr(t){return typeof t!="number"?t:DL(t)}Me.transformStringDoubleArgument=Vdr;Me.transformDoubleReply={2:(t,e,r)=>{switch(r?r[qJ.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function _Fe(t,e){return r=>Me.transformDoubleReply[2](r,t,e)}Me.createTransformDoubleReplyResp2Func=_Fe;Me.transformDoubleArrayReply={2:(t,e,r)=>t.map(_Fe(e,r)),3:void 0};function Ydr(t,e){return r=>Me.transformNullableDoubleReply[2](r,t,e)}Me.createTransformNullableDoubleReplyResp2Func=Ydr;Me.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Me.transformDoubleReply[2](t,e,r),3:void 0};function Jdr(t,e){let r=Object.create(null);for(let n=0;n<t.length;n+=2)r[t[n].toString()]=e(t[n+1]);return r}Me.transformTuplesToMap=Jdr;function Xdr(t,e){return r=>QJ(r,t,e)}Me.createTransformTuplesReplyFunc=Xdr;function QJ(t,e,r){let n=r?r[qJ.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a<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}}}Me.transformTuplesReply=QJ;Me.transformSortedSetReply={2:(t,e,r)=>{let n=t,s=[];for(let i=0;i<n.length;i+=2)s.push({value:n[i],score:Me.transformDoubleReply[2](n[i+1],e,r)});return s},3:t=>t.map(e=>{let[r,n]=e;return{value:r,score:n}})};function Zdr(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Me.transformEXAT=Zdr;function efr(t){return(typeof t=="number"?t:t.getTime()).toString()}Me.transformPXAT=efr;function tfr(t){return t?.keys?.[0]}Me.evalFirstKeyIndex=tfr;function rfr(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Me.pushEvalArguments=rfr;function nfr(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Me.pushVariadicArguments=nfr;function sfr(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Me.pushVariadicNumberArguments=sfr;function ifr(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Me.pushVariadicArgument=ifr;function afr(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Me.parseOptionalVariadicArgument=afr;var yFe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(yFe||(Me.CommandFlags=yFe={}));var AFe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(AFe||(Me.CommandCategories=AFe={}));function ofr([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Me.transformCommandReply=ofr;var xFe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(xFe||(Me.RedisFunctionFlags=xFe={}));function cfr(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Me.transformFunctionListItemReply=cfr;function bFe(t,e){t.push(e.start.toString(),e.end.toString())}function ufr(t,e){if(Array.isArray(e))for(let r of e)bFe(t,r);else bFe(t,e)}Me.parseSlotRangesArguments=ufr;function lfr([t,e]){return{start:t,end:e}}Me.transformRangeReply=lfr;function dfr(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(ffr(e))t.pushKeys(e);else{for(let r=0;r<e.length;r++)t.pushKey(e[r].key);t.push("WEIGHTS");for(let r=0;r<e.length;r++)t.push(DL(e[r].weight))}}else t.push("1"),EFe(e)?t.pushKey(e):(t.pushKey(e.key),t.push("WEIGHTS",DL(e.weight)))}Me.parseZKeysArguments=dfr;function EFe(t){return typeof t=="string"||t instanceof Buffer}function ffr(t){return EFe(t[0])}function pfr(t,...e){let r=new zdr.BasicCommandParser;t.parseCommand(r,...e);let n=r.redisArgs;return r.preserve&&(n.preserve=r.preserve),n}Me.parseArgs=pfr;function HJ(t,e){let[r,n,s,i]=e;return{id:r,message:QJ(n,void 0,t),...s!==void 0?{millisElapsedFromDelivery:s}:{},...i!==void 0?{deliveriesCounter:i}:{}}}Me.transformStreamMessageReply=HJ;function mfr(t,e){return jJ(e)?e:HJ(t,e)}Me.transformStreamMessageNullReply=mfr;function QC(t,e){return t.map(HJ.bind(void 0,e))}Me.transformStreamMessagesReply=QC;function hfr(t,e,r){if(t===null)return null;switch(r?r[qJ.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:QC(i[1])})}return n}}}Me.transformStreamsMessagesReplyResp2=hfr;function gfr(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(),QC(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(QC(s))}return e}else{let e=Object.create(null);for(let[r,n]of Object.entries(t))e[r]=QC(n);return e}}Me.transformStreamsMessagesReplyResp3=gfr;function yfr(t){return JSON.stringify(t)}Me.transformRedisJsonArgument=yfr;function vFe(t){return JSON.parse(t.toString())}Me.transformRedisJsonReply=vFe;function Afr(t){return jJ(t)?t:vFe(t)}Me.transformRedisJsonNullReply=Afr});var zJ=_(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});var xfr=we();GJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":xfr.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var SFe=_(HC=>{"use strict";var bfr=HC&&HC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(HC,"__esModule",{value:!0});var _fr=bfr(zJ());HC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:_fr.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var IFe=_(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var CFe=_(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var TFe=_(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var wFe=_(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var RFe=_(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var ZJ=_(t1=>{"use strict";Object.defineProperty(t1,"__esModule",{value:!0});t1.ASKING_CMD=void 0;t1.ASKING_CMD="ASKING";t1.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(t1.ASKING_CMD)},transformReply:void 0}});var NFe=_(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var OFe=_(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});tX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var kFe=_(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});rX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var PFe=_(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var DFe=_(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var BFe=_(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var LFe=_(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var MFe=_(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});oX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var WFe=_(cX=>{"use strict";Object.defineProperty(cX,"__esModule",{value:!0});cX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var uX=_(GC=>{"use strict";Object.defineProperty(GC,"__esModule",{value:!0});GC.parseLMPopArguments=void 0;function $Fe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}GC.parseLMPopArguments=$Fe;GC.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),$Fe(t,...e)},transformReply:void 0}});var FFe=_(Nf=>{"use strict";var Efr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),vfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Sfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Efr(e,t,r);return vfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var UFe=Sfr(uX());Nf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,UFe.parseLMPopArguments)(t,...r)},transformReply:UFe.default.transformReply}});var dX=_(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var qFe=_(zC=>{"use strict";var Ifr=zC&&zC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zC,"__esModule",{value:!0});var Cfr=Ifr(dX());zC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:Cfr.default.transformReply}});var jFe=_(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var pX=_(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.parseZMPopArguments=void 0;var QFe=we();function HFe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}KC.parseZMPopArguments=HFe;KC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),HFe(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:QFe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:QFe.transformSortedSetReply[3](t[1])}}}}});var zFe=_(Of=>{"use strict";var Tfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Rfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Tfr(e,t,r);return wfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var GFe=Rfr(pX());Of.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,GFe.parseZMPopArguments)(t,...r)},transformReply:GFe.default.transformReply}});var hX=_(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});var Nfr=we();mX.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:Nfr.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var VFe=_(VC=>{"use strict";var Ofr=VC&&VC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(VC,"__esModule",{value:!0});var KFe=Ofr(hX());VC.default={IS_READ_ONLY:KFe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:KFe.default.transformReply}});var YFe=_(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});gX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var JFe=_(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var XFe=_(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var ZFe=_(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var _X=_(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});var kfr=/([^\s=]+)=([^\s]*)/g;bX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(kfr))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var t7e=_(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.CLIENT_KILL_FILTERS=void 0;Fo.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Fo.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)e7e(t,r);else e7e(t,e)},transformReply:void 0};function e7e(t,e){if(e===Fo.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Fo.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Fo.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Fo.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Fo.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Fo.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Fo.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Fo.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var r7e=_(YC=>{"use strict";var Pfr=YC&&YC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(YC,"__esModule",{value:!0});var Dfr=Pfr(_X());YC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(`
|
|
`),r=e.length-1,n=[];for(let s=0;s<r;s++)n.push(Dfr.default.transformReply(e[s]));return n}}});var n7e=_(EX=>{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var s7e=_(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var i7e=_(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var a7e=_(IX=>{"use strict";Object.defineProperty(IX,"__esModule",{value:!0});IX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var o7e=_(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),Bfr(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Lfr(r)?t.push("OPTIN"):Mfr(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function Bfr(t){return t?.BCAST===!0}function Lfr(t){return t?.OPTIN===!0}function Mfr(t){return t?.OPTOUT===!0}});var c7e=_(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var u7e=_(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var l7e=_(RX=>{"use strict";Object.defineProperty(RX,"__esModule",{value:!0});RX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var d7e=_(NX=>{"use strict";Object.defineProperty(NX,"__esModule",{value:!0});var Wfr=we();NX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Wfr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var f7e=_(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var p7e=_(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var m7e=_(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var h7e=_(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var g7e=_(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});var $fr=we();BX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,$fr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var y7e=_(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.FAILOVER_MODES=void 0;JC.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};JC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var A7e=_(LX=>{"use strict";Object.defineProperty(LX,"__esModule",{value:!0});LX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var x7e=_(MX=>{"use strict";Object.defineProperty(MX,"__esModule",{value:!0});MX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var b7e=_(WX=>{"use strict";Object.defineProperty(WX,"__esModule",{value:!0});WX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var _7e=_($X=>{"use strict";Object.defineProperty($X,"__esModule",{value:!0});$X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var E7e=_(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var v7e=_(FX=>{"use strict";Object.defineProperty(FX,"__esModule",{value:!0});FX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var S7e=_(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var I7e=_(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var C7e=_(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var T7e=_(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var w7e=_(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var R7e=_(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var N7e=_(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var O7e=_(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var k7e=_(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});YX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var P7e=_(XC=>{"use strict";Object.defineProperty(XC,"__esModule",{value:!0});XC.CLUSTER_SLOT_STATES=void 0;XC.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};XC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var B7e=_(JX=>{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:D7e(n),replicas:s.map(D7e)}))}};function D7e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var L7e=_(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var M7e=_(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var W7e=_(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var $7e=_(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});var Ufr=we();tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Ufr.transformCommandReply)(e):null)}}});var U7e=_(ZC=>{"use strict";Object.defineProperty(ZC,"__esModule",{value:!0});ZC.COMMAND_LIST_FILTER_BY=void 0;ZC.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};ZC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var F7e=_(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});var Ffr=we();rZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(Ffr.transformCommandReply)}}});var q7e=_(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});var qfr=we();nZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:qfr.transformTuplesReply,3:void 0}}});var j7e=_(sZ=>{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});sZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var Q7e=_(iZ=>{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});iZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var H7e=_(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var G7e=_(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var z7e=_(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var K7e=_(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var V7e=_(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Y7e=_(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});dZ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var J7e=_(e2=>{"use strict";Object.defineProperty(e2,"__esModule",{value:!0});e2.DelexCondition=void 0;e2.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};e2.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var X7e=_(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});fZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var Z7e=_(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var e9e=_(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var Pg=_(t2=>{"use strict";Object.defineProperty(t2,"__esModule",{value:!0});t2.parseEvalArguments=void 0;function t9e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}t2.parseEvalArguments=t9e;t2.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),t9e(...t)},transformReply:void 0}});var n9e=_(kf=>{"use strict";var jfr=kf&&kf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Qfr=kf&&kf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hfr=kf&&kf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jfr(e,t,r);return Qfr(e,t),e};Object.defineProperty(kf,"__esModule",{value:!0});var r9e=Hfr(Pg());kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,r9e.parseEvalArguments)(...t)},transformReply:r9e.default.transformReply}});var i9e=_(Pf=>{"use strict";var Gfr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zfr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gfr(e,t,r);return zfr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var s9e=Kfr(Pg());Pf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,s9e.parseEvalArguments)(...t)},transformReply:s9e.default.transformReply}});var o9e=_(Df=>{"use strict";var Vfr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Yfr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jfr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vfr(e,t,r);return Yfr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var a9e=Jfr(Pg());Df.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,a9e.parseEvalArguments)(...t)},transformReply:a9e.default.transformReply}});var u9e=_(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)c9e(t,s);else c9e(t,r)},transformReply:void 0};function c9e(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var l9e=_(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var d9e=_(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var f9e=_(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var Bg=_(Dg=>{"use strict";Object.defineProperty(Dg,"__esModule",{value:!0});Dg.parseGeoSearchOptions=Dg.parseGeoSearchArguments=void 0;function p9e(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),m9e(t,s)}Dg.parseGeoSearchArguments=p9e;function m9e(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}Dg.parseGeoSearchOptions=m9e;Dg.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),p9e(t,e,r,n,s)},transformReply:void 0}});var n2=_(r2=>{"use strict";Object.defineProperty(r2,"__esModule",{value:!0});r2.parseGeoRadiusArguments=void 0;var Xfr=Bg();function h9e(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,Xfr.parseGeoSearchOptions)(t,i)}r2.parseGeoRadiusArguments=h9e;r2.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),h9e(...t)},transformReply:void 0}});var s2=_(Vl=>{"use strict";var Zfr=Vl&&Vl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vl,"__esModule",{value:!0});Vl.GEO_REPLY_WITH=void 0;var g9e=Zfr(Bg());Vl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};Vl.default={IS_READ_ONLY:g9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){g9e.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(Vl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(Vl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(Vl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var BL=_(qo=>{"use strict";var epr=qo&&qo.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tpr=qo&&qo.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),rpr=qo&&qo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&epr(e,t,r);return tpr(e,t),e},npr=qo&&qo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qo,"__esModule",{value:!0});qo.parseGeoRadiusWithArguments=void 0;var y9e=rpr(n2()),spr=npr(s2());function A9e(t,e,r,n,s,i,a){(0,y9e.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}qo.parseGeoRadiusWithArguments=A9e;qo.default={IS_READ_ONLY:y9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),A9e(t,e,r,n,s,i,a)},transformReply:spr.default.transformReply}});var x9e=_(i2=>{"use strict";var ipr=i2&&i2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(i2,"__esModule",{value:!0});var apr=BL(),opr=ipr(BL());i2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,apr.parseGeoRadiusWithArguments)(...t)},transformReply:opr.default.transformReply}});var _9e=_(Bf=>{"use strict";var cpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),upr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cpr(e,t,r);return upr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var b9e=lpr(n2());Bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,b9e.parseGeoRadiusArguments)(...t)},transformReply:b9e.default.transformReply}});var v9e=_(Lf=>{"use strict";var dpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),fpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ppr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&dpr(e,t,r);return fpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var E9e=ppr(n2());Lf.default={IS_READ_ONLY:E9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,E9e.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var o2=_(a2=>{"use strict";Object.defineProperty(a2,"__esModule",{value:!0});a2.parseGeoRadiusByMemberArguments=void 0;var mpr=Bg();function S9e(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,mpr.parseGeoSearchOptions)(t,i)}a2.parseGeoRadiusByMemberArguments=S9e;a2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),S9e(t,e,r,n,s,i)},transformReply:void 0}});var xZ=_(Lg=>{"use strict";var I9e=Lg&&Lg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Lg,"__esModule",{value:!0});Lg.parseGeoRadiusByMemberWithArguments=void 0;var hpr=I9e(o2()),gpr=Bg(),ypr=I9e(s2());function C9e(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,gpr.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}Lg.parseGeoRadiusByMemberWithArguments=C9e;Lg.default={IS_READ_ONLY:hpr.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),C9e(t,e,r,n,s,i,a)},transformReply:ypr.default.transformReply}});var w9e=_(Mf=>{"use strict";var Apr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),xpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),bpr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Apr(e,t,r);return xpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var T9e=bpr(xZ());Mf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,T9e.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:T9e.default.transformReply}});var N9e=_(Wf=>{"use strict";var _pr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Epr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),vpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_pr(e,t,r);return Epr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var R9e=vpr(o2());Wf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,R9e.parseGeoRadiusByMemberArguments)(...t)},transformReply:R9e.default.transformReply}});var k9e=_($f=>{"use strict";var Spr=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ipr=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Cpr=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Spr(e,t,r);return Ipr(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var O9e=Cpr(o2());$f.default={IS_READ_ONLY:O9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,O9e.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var P9e=_(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});var Tpr=Bg();bZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Tpr.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var D9e=_(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var B9e=_(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var L9e=_(vZ=>{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var M9e=_(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});var SZ=we();IZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,SZ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,SZ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,SZ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var W9e=_(CZ=>{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var $9e=_(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var U9e=_(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var F9e=_(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var q9e=_(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});var wpr=we();NZ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,wpr.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var j9e=_(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var Q9e=_(c2=>{"use strict";Object.defineProperty(c2,"__esModule",{value:!0});c2.REDIS_FLUSH_MODES=void 0;c2.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};c2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var H9e=_(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var z9e=_(Uf=>{"use strict";var Rpr=Uf&&Uf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Npr=Uf&&Uf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Opr=Uf&&Uf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Rpr(e,t,r);return Npr(e,t),e};Object.defineProperty(Uf,"__esModule",{value:!0});var G9e=Opr(Pg());Uf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,G9e.parseEvalArguments)(...t)},transformReply:G9e.default.transformReply}});var V9e=_(Ff=>{"use strict";var kpr=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ppr=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Dpr=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&kpr(e,t,r);return Ppr(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var K9e=Dpr(Pg());Ff.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,K9e.parseEvalArguments)(...t)},transformReply:K9e.default.transformReply}});var Y9e=_(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var J9e=_(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var X9e=_(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var Z9e=_(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var WZ=_(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var eqe=_(u2=>{"use strict";var Bpr=u2&&u2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(u2,"__esModule",{value:!0});var $Z=Bpr(WZ());u2.default={NOT_KEYED_COMMAND:$Z.default.NOT_KEYED_COMMAND,IS_READ_ONLY:$Z.default.IS_READ_ONLY,parseCommand(...t){$Z.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var tqe=_(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var rqe=_(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var nqe=_(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});var Lpr=we();qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Mpr(t[1]),engines:Wpr(t[3])}),3:void 0}};function Mpr(t){if((0,Lpr.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Wpr(t){let e=t,r=Object.create(null);for(let n=0;n<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 sqe=_(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var HZ=_(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var iqe=_(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var aqe=_(l2=>{"use strict";Object.defineProperty(l2,"__esModule",{value:!0});l2.HASH_EXPIRATION=void 0;l2.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};l2.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oqe=_(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});var $pr=we();zZ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,$pr.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var cqe=_(d2=>{"use strict";Object.defineProperty(d2,"__esModule",{value:!0});d2.HASH_EXPIRATION_TIME=void 0;d2.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};d2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var uqe=_(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var lqe=_(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});var Upr=we();VZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:Upr.transformTuplesReply,3:void 0}}});var dqe=_(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var fqe=_(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var pqe=_(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var mqe=_(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var hqe=_(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var gqe=_(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var yqe=_(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Aqe=_(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var xqe=_(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var bqe=_(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});var Fpr=we();iee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,Fpr.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var _qe=_(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Eqe=_(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var vqe=_(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;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 Sqe=_(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});uee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Iqe=_(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});lee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var f2=_(Mg=>{"use strict";Object.defineProperty(Mg,"__esModule",{value:!0});Mg.pushScanArguments=Mg.parseScanArguments=void 0;function Cqe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}Mg.parseScanArguments=Cqe;function qpr(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}Mg.pushScanArguments=qpr;Mg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),Cqe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var fee=_(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});var jpr=f2();dee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,jpr.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n<e.length;)r.push({field:e[n++],value:e[n++]});return{cursor:t,entries:r}}}});var Tqe=_(p2=>{"use strict";var Qpr=p2&&p2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(p2,"__esModule",{value:!0});var Hpr=Qpr(fee());p2.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];Hpr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var Rqe=_(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(Wg(r),Wg(n)):r instanceof Map?Gpr(t,r):Array.isArray(r)?wqe(t,r):zpr(t,r)},transformReply:void 0};function Gpr(t,e){for(let[r,n]of e.entries())t.push(Wg(r),Wg(n))}function wqe(t,e){for(let r of e){if(Array.isArray(r)){wqe(t,r);continue}t.push(Wg(r))}}function zpr(t,e){for(let r of Object.keys(e))t.push(Wg(r),Wg(e[r]))}function Wg(t){return typeof t=="number"?t.toString():t}});var Oqe=_(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});var Kpr=Kl();mee.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?Vpr(t,r):Array.isArray(r)?Ypr(t,r):Jpr(t,r)},transformReply:void 0};function Vpr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(m2(r),m2(n))}function Ypr(t,e){let r=new Kpr.BasicCommandParser;if(Nqe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function Nqe(t,e){for(let r of e){if(Array.isArray(r)){Nqe(t,r);continue}t.push(m2(r))}}function Jpr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(m2(n),m2(e[n]))}function m2(t){return typeof t=="number"?t.toString():t}});var kqe=_(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var Pqe=_(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Dqe=_(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Bqe=_(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var Mqe=_(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});function Lqe(t){let e=[];for(let r=0;r<t.length;r+=2)e.push({key:t[r].toString(),value:Number(t[r+1])});return e}function Xpr(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 Zpr(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=Xpr(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=Lqe(i);break;case"by-net-bytes":e.byNetBytes=Lqe(i);break}}return e}xee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("HOTKEYS","GET")},transformReply:{2:t=>t===null?null:Zpr(t),3:void 0},unstableResp3:!0}});var Wqe=_(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var $qe=_(h2=>{"use strict";Object.defineProperty(h2,"__esModule",{value:!0});h2.HOTKEYS_METRICS=void 0;h2.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};h2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var Uqe=_(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var Fqe=_(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var qqe=_(vee=>{"use strict";Object.defineProperty(vee,"__esModule",{value:!0});vee.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var jqe=_(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Qqe=_(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});Iee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var Hqe=_(Cee=>{"use strict";Object.defineProperty(Cee,"__esModule",{value:!0});Cee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var Gqe=_(Tee=>{"use strict";Object.defineProperty(Tee,"__esModule",{value:!0});Tee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var zqe=_(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});wee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var Ree=_(g2=>{"use strict";Object.defineProperty(g2,"__esModule",{value:!0});g2.LATENCY_EVENTS=void 0;g2.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};g2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var Kqe=_(Nee=>{"use strict";Object.defineProperty(Nee,"__esModule",{value:!0});Nee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var Vqe=_(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var Yqe=_(y2=>{"use strict";Object.defineProperty(y2,"__esModule",{value:!0});y2.LATENCY_EVENTS=void 0;var e0r=Ree();Object.defineProperty(y2,"LATENCY_EVENTS",{enumerable:!0,get:function(){return e0r.LATENCY_EVENTS}});y2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var LL=_(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var Pee=_(A2=>{"use strict";var t0r=A2&&A2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(A2,"__esModule",{value:!0});var Jqe=t0r(LL());A2.default={IS_READ_ONLY:Jqe.default.IS_READ_ONLY,parseCommand(t,e,r,n){Jqe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var Zqe=_(x2=>{"use strict";var r0r=x2&&x2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(x2,"__esModule",{value:!0});var Xqe=r0r(Pee());x2.default={IS_READ_ONLY:Xqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Xqe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var tje=_(b2=>{"use strict";var n0r=b2&&b2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(b2,"__esModule",{value:!0});var eje=n0r(LL());b2.default={IS_READ_ONLY:eje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];eje.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var rje=_(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var nje=_(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var sje=_(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var ije=_(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var aje=_(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var Uee=_($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var oje=_(_2=>{"use strict";var s0r=_2&&_2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_2,"__esModule",{value:!0});var i0r=s0r(Uee());_2.default={IS_READ_ONLY:!1,parseCommand(t,e,r){i0r.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var qee=_(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});Fee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var cje=_(E2=>{"use strict";var a0r=E2&&E2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(E2,"__esModule",{value:!0});var jee=a0r(qee());E2.default={CACHEABLE:jee.default.CACHEABLE,IS_READ_ONLY:jee.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){jee.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var uje=_(Qee=>{"use strict";Object.defineProperty(Qee,"__esModule",{value:!0});Qee.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lje=_(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dje=_(Gee=>{"use strict";Object.defineProperty(Gee,"__esModule",{value:!0});Gee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var fje=_(zee=>{"use strict";Object.defineProperty(zee,"__esModule",{value:!0});zee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var pje=_(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var mje=_(Vee=>{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});Vee.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var hje=_(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});Yee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var gje=_(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});Jee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var yje=_(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});Xee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var Aje=_(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});var o0r=we();Zee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s<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++]]=o0r.transformDoubleReply[2](t[s++],e,r);break;default:n[t[s++]]=t[s++]}return n},3:void 0}}});var xje=_(ete=>{"use strict";Object.defineProperty(ete,"__esModule",{value:!0});ete.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var bje=_(tte=>{"use strict";Object.defineProperty(tte,"__esModule",{value:!0});tte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var _je=_(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});rte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var Eje=_(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});nte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var vje=_(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var Sje=_(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var Ije=_(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});ate.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var ote=_(v2=>{"use strict";Object.defineProperty(v2,"__esModule",{value:!0});v2.parseMSetArguments=void 0;function Cje(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n<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])}v2.parseMSetArguments=Cje;v2.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSET"),Cje(t,e)},transformReply:void 0}});var Rje=_(Ci=>{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});Ci.parseMSetExArguments=Ci.ExpirationMode=Ci.SetMode=void 0;var Tje=we();Ci.SetMode={XX:"XX",NX:"NX"};Ci.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function wje(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s<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])}Ci.parseMSetExArguments=wje;Ci.default={parseCommand(t,e,r){if(t.push("MSETEX"),wje(t,e),r?.mode&&t.push(r.mode),r?.expiration)switch(r.expiration.type){case Ci.ExpirationMode.EXAT:t.push(Ci.ExpirationMode.EXAT,(0,Tje.transformEXAT)(r.expiration.value));break;case Ci.ExpirationMode.PXAT:t.push(Ci.ExpirationMode.PXAT,(0,Tje.transformPXAT)(r.expiration.value));break;case Ci.ExpirationMode.KEEPTTL:t.push(Ci.ExpirationMode.KEEPTTL);break;case Ci.ExpirationMode.EX:case Ci.ExpirationMode.PX:t.push(r.expiration.type,r.expiration.value?.toString());break}},transformReply:void 0}});var Nje=_(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var c0r=ote();cte.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,c0r.parseMSetArguments)(t,e)},transformReply:void 0}});var Oje=_(ute=>{"use strict";Object.defineProperty(ute,"__esModule",{value:!0});ute.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var kje=_(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});lte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var Pje=_(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var Dje=_(fte=>{"use strict";Object.defineProperty(fte,"__esModule",{value:!0});fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var Bje=_(pte=>{"use strict";Object.defineProperty(pte,"__esModule",{value:!0});pte.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var Lje=_(mte=>{"use strict";Object.defineProperty(mte,"__esModule",{value:!0});mte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var Mje=_(hte=>{"use strict";Object.defineProperty(hte,"__esModule",{value:!0});var u0r=we();hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,u0r.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var Wje=_(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});gte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var $je=_(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});yte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var Uje=_(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});Ate.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var Fje=_(xte=>{"use strict";Object.defineProperty(xte,"__esModule",{value:!0});xte.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var qje=_(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});bte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var jje=_(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});_te.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Qje=_(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});Ete.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var Hje=_(vte=>{"use strict";Object.defineProperty(vte,"__esModule",{value:!0});vte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var Gje=_(Ste=>{"use strict";Object.defineProperty(Ste,"__esModule",{value:!0});Ste.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var zje=_(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var Kje=_(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});Cte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r<t.length;)e[t[r++].toString()]=Number(t[r++]);return e}}});var Vje=_(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});Tte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r<t.length;r+=2)e[t[r].toString()]=t[r+1];return e}}});var Yje=_(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var Jje=_(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});Rte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var Xje=_(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});Nte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var Zje=_(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});Ote.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var eQe=_(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});kte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var tQe=_(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});Pte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var rQe=_(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});Dte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var nQe=_(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var sQe=_(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var iQe=_(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var aQe=_(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});Wte.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var oQe=_($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});$te.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var cQe=_(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uQe=_(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lQe=_(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dQe=_(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var fQe=_(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});Qte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var pQe=_(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var mQe=_(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});Gte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var hQe=_(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});zte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var gQe=_(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});Kte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var yQe=_(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});Vte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var AQe=_(Yte=>{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});Yte.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var xQe=_(Jte=>{"use strict";Object.defineProperty(Jte,"__esModule",{value:!0});Jte.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var bQe=_(Xte=>{"use strict";Object.defineProperty(Xte,"__esModule",{value:!0});Xte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var _Qe=_(Zte=>{"use strict";Object.defineProperty(Zte,"__esModule",{value:!0});Zte.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var EQe=_(ere=>{"use strict";Object.defineProperty(ere,"__esModule",{value:!0});ere.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var vQe=_(tre=>{"use strict";Object.defineProperty(tre,"__esModule",{value:!0});tre.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var SQe=_(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});rre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var IQe=_(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});nre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var CQe=_(sre=>{"use strict";Object.defineProperty(sre,"__esModule",{value:!0});sre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var TQe=_(ire=>{"use strict";Object.defineProperty(ire,"__esModule",{value:!0});ire.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var wQe=_(are=>{"use strict";Object.defineProperty(are,"__esModule",{value:!0});are.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var RQe=_(ore=>{"use strict";Object.defineProperty(ore,"__esModule",{value:!0});ore.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var NQe=_(cre=>{"use strict";Object.defineProperty(cre,"__esModule",{value:!0});cre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var ML=_(S2=>{"use strict";Object.defineProperty(S2,"__esModule",{value:!0});S2.parseSortArguments=void 0;function OQe(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}S2.parseSortArguments=OQe;S2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),OQe(t,e,r)},transformReply:void 0}});var PQe=_(qf=>{"use strict";var l0r=qf&&qf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),d0r=qf&&qf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),f0r=qf&&qf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&l0r(e,t,r);return d0r(e,t),e};Object.defineProperty(qf,"__esModule",{value:!0});var kQe=f0r(ML());qf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,kQe.parseSortArguments)(...t)},transformReply:kQe.default.transformReply}});var DQe=_(I2=>{"use strict";var p0r=I2&&I2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(I2,"__esModule",{value:!0});var m0r=p0r(ML());I2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){m0r.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var BQe=_(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});ure.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var LQe=_(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});lre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var MQe=_(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});dre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pre=_(fre=>{"use strict";Object.defineProperty(fre,"__esModule",{value:!0});fre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var $Qe=_(C2=>{"use strict";var h0r=C2&&C2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(C2,"__esModule",{value:!0});var WQe=h0r(pre());C2.default={IS_READ_ONLY:WQe.default.IS_READ_ONLY,parseCommand(t,e,r){WQe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var UQe=_(mre=>{"use strict";Object.defineProperty(mre,"__esModule",{value:!0});mre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var FQe=_(hre=>{"use strict";Object.defineProperty(hre,"__esModule",{value:!0});var g0r=f2();hre.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,g0r.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var qQe=_(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});gre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var jQe=_(yre=>{"use strict";Object.defineProperty(yre,"__esModule",{value:!0});yre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var QQe=_(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});Are.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var HQe=_(xre=>{"use strict";Object.defineProperty(xre,"__esModule",{value:!0});xre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var GQe=_(bre=>{"use strict";Object.defineProperty(bre,"__esModule",{value:!0});bre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var zQe=_(_re=>{"use strict";Object.defineProperty(_re,"__esModule",{value:!0});_re.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var KQe=_(Ere=>{"use strict";Object.defineProperty(Ere,"__esModule",{value:!0});Ere.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var VQe=_(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});vre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var YQe=_(Sre=>{"use strict";Object.defineProperty(Sre,"__esModule",{value:!0});Sre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var JQe=_(Ire=>{"use strict";Object.defineProperty(Ire,"__esModule",{value:!0});Ire.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var XQe=_(Cre=>{"use strict";Object.defineProperty(Cre,"__esModule",{value:!0});Cre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var ZQe=_(Tre=>{"use strict";Object.defineProperty(Tre,"__esModule",{value:!0});Tre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var wre=_(T2=>{"use strict";Object.defineProperty(T2,"__esModule",{value:!0});T2.parseXAddArguments=void 0;function eHe(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}T2.parseXAddArguments=eHe;T2.default={IS_READ_ONLY:!1,parseCommand(...t){return eHe(void 0,...t)},transformReply:void 0}});var tHe=_(Rre=>{"use strict";Object.defineProperty(Rre,"__esModule",{value:!0});var y0r=wre();Rre.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,y0r.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var Ore=_(Nre=>{"use strict";Object.defineProperty(Nre,"__esModule",{value:!0});var A0r=we();Nre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(A0r.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var nHe=_(w2=>{"use strict";var x0r=w2&&w2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(w2,"__esModule",{value:!0});var rHe=x0r(Ore());w2.default={IS_READ_ONLY:rHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];rHe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Pre=_(kre=>{"use strict";Object.defineProperty(kre,"__esModule",{value:!0});var b0r=we();kre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(b0r.transformStreamMessageNullReply.bind(void 0,r))}}});var iHe=_(R2=>{"use strict";var _0r=R2&&R2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(R2,"__esModule",{value:!0});var sHe=_0r(Pre());R2.default={IS_READ_ONLY:sHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];sHe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var aHe=_(Dre=>{"use strict";Object.defineProperty(Dre,"__esModule",{value:!0});Dre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var oHe=_(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});Bre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var cHe=_(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});Lre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var uHe=_(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});Mre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var lHe=_(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});Wre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var dHe=_($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});$re.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var fHe=_(Ure=>{"use strict";Object.defineProperty(Ure,"__esModule",{value:!0});Ure.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pHe=_(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});Fre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var mHe=_(qre=>{"use strict";Object.defineProperty(qre,"__esModule",{value:!0});qre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var hHe=_(jre=>{"use strict";Object.defineProperty(jre,"__esModule",{value:!0});jre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var yHe=_(Qre=>{"use strict";Object.defineProperty(Qre,"__esModule",{value:!0});var gHe=we();Qre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r<t.length;r+=2)switch(t[r]){case"first-entry":case"last-entry":e[t[r]]=r1(t[r+1]);break;default:e[t[r]]=t[r+1];break}return e},3(t){if(t instanceof Map)t.set("first-entry",r1(t.get("first-entry"))),t.set("last-entry",r1(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]=r1(t[e+1]));else t["first-entry"]=r1(t["first-entry"]),t["last-entry"]=r1(t["last-entry"]);return t}}};function r1(t){if((0,gHe.isNullReply)(t))return t;let[e,r]=t;return{id:e,message:(0,gHe.transformTuplesReply)(r)}}});var AHe=_(Hre=>{"use strict";Object.defineProperty(Hre,"__esModule",{value:!0});Hre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var xHe=_(Gre=>{"use strict";Object.defineProperty(Gre,"__esModule",{value:!0});Gre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var bHe=_(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});zre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Kre=_(N2=>{"use strict";Object.defineProperty(N2,"__esModule",{value:!0});N2.xRangeArguments=void 0;var E0r=we();function _He(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}N2.xRangeArguments=_He;N2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(_He(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(E0r.transformStreamMessageReply.bind(void 0,r))}}});var Vre=_(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.pushXReadStreams=void 0;var v0r=we();function EHe(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r<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)}O2.pushXReadStreams=EHe;O2.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()),EHe(t,e)},transformReply:{2:v0r.transformStreamsMessagesReplyResp2,3:void 0},unstableResp3:!0}});var vHe=_(Yre=>{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});var S0r=Vre(),I0r=we();Yre.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,S0r.pushXReadStreams)(t,n)},transformReply:{2:I0r.transformStreamsMessagesReplyResp2,3:void 0}}});var SHe=_(jf=>{"use strict";var C0r=jf&&jf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),T0r=jf&&jf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),w0r=jf&&jf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&C0r(e,t,r);return T0r(e,t),e};Object.defineProperty(jf,"__esModule",{value:!0});var WL=w0r(Kre());jf.default={CACHEABLE:WL.default.CACHEABLE,IS_READ_ONLY:WL.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,WL.xRangeArguments)(r[0],r[1],r[2]))},transformReply:WL.default.transformReply}});var IHe=_(Jre=>{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});Jre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var CHe=_(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});Xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var Zre=_(k2=>{"use strict";Object.defineProperty(k2,"__esModule",{value:!0});k2.pushMembers=void 0;var wHe=we();k2.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),RHe(t,r)},transformReply:wHe.transformDoubleReply};function RHe(t,e){if(Array.isArray(e))for(let r of e)THe(t,r);else THe(t,e)}k2.pushMembers=RHe;function THe(t,e){t.push((0,wHe.transformDoubleArgument)(e.score),e.value)}});var NHe=_(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});var R0r=Zre(),N0r=we();ene.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,R0r.pushMembers)(t,r)},transformReply:N0r.transformNullableDoubleReply}});var OHe=_(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});tne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var PHe=_(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});var kHe=we();rne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,kHe.transformStringDoubleArgument)(r),(0,kHe.transformStringDoubleArgument)(n))},transformReply:void 0}});var sne=_(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var BHe=_(P2=>{"use strict";var O0r=P2&&P2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(P2,"__esModule",{value:!0});var k0r=we(),DHe=O0r(sne());P2.default={IS_READ_ONLY:DHe.default.IS_READ_ONLY,parseCommand(t,e){DHe.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:k0r.transformSortedSetReply}});var LHe=_(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});ine.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var WHe=_(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});var MHe=we();ane.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,MHe.transformDoubleArgument)(r),n)},transformReply:MHe.transformDoubleReply}});var $L=_(D2=>{"use strict";Object.defineProperty(D2,"__esModule",{value:!0});D2.parseZInterArguments=void 0;var P0r=we();function $He(t,e,r){(0,P0r.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}D2.parseZInterArguments=$He;D2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),$He(t,e,r)},transformReply:void 0}});var FHe=_(B2=>{"use strict";var D0r=B2&&B2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(B2,"__esModule",{value:!0});var B0r=we(),UHe=D0r($L());B2.default={IS_READ_ONLY:UHe.default.IS_READ_ONLY,parseCommand(...t){UHe.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:B0r.transformSortedSetReply}});var qHe=_(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var jHe=_(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});var L0r=$L();cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,L0r.parseZInterArguments)(t,r,n)},transformReply:void 0}});var QHe=_(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var HHe=_(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});var M0r=we();lne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,M0r.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var GHe=_(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var W0r=we();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:W0r.transformSortedSetReply}});var pne=_(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});var $0r=we();fne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:$0r.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var zHe=_(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var U0r=we();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:U0r.transformSortedSetReply}});var KHe=_(L2=>{"use strict";var F0r=L2&&L2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(L2,"__esModule",{value:!0});var q0r=F0r(pne());L2.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:q0r.default.transformReply}});var gne=_(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});hne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var yne=_(M2=>{"use strict";var j0r=M2&&M2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(M2,"__esModule",{value:!0});var VHe=j0r(gne());M2.default={IS_READ_ONLY:VHe.default.IS_READ_ONLY,parseCommand(t,e,r){VHe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var JHe=_(W2=>{"use strict";var Q0r=W2&&W2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(W2,"__esModule",{value:!0});var H0r=we(),YHe=Q0r(yne());W2.default={IS_READ_ONLY:YHe.default.IS_READ_ONLY,parseCommand(t,e,r){YHe.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:H0r.transformSortedSetReply}});var Ane=_($2=>{"use strict";Object.defineProperty($2,"__esModule",{value:!0});$2.zRangeArgument=void 0;var XHe=we();function ZHe(t,e,r){let n=[(0,XHe.transformStringDoubleArgument)(t),(0,XHe.transformStringDoubleArgument)(e)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}$2.zRangeArgument=ZHe;$2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(ZHe(r,n,s))},transformReply:void 0}});var eGe=_(U2=>{"use strict";var G0r=U2&&U2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(U2,"__esModule",{value:!0});var z0r=we(),xne=G0r(Ane());U2.default={CACHEABLE:xne.default.CACHEABLE,IS_READ_ONLY:xne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];xne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:z0r.transformSortedSetReply}});var rGe=_(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});var tGe=we();bne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,tGe.transformStringDoubleArgument)(r),(0,tGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var Ene=_(_ne=>{"use strict";Object.defineProperty(_ne,"__esModule",{value:!0});var nGe=we();_ne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,nGe.transformStringDoubleArgument)(r),(0,nGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var sGe=_(F2=>{"use strict";var K0r=F2&&F2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(F2,"__esModule",{value:!0});var V0r=we(),vne=K0r(Ene());F2.default={CACHEABLE:vne.default.CACHEABLE,IS_READ_ONLY:vne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];vne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:V0r.transformSortedSetReply}});var aGe=_(Sne=>{"use strict";Object.defineProperty(Sne,"__esModule",{value:!0});var iGe=we();Sne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,iGe.transformStringDoubleArgument)(n),(0,iGe.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var cGe=_(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});var oGe=we();Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,oGe.transformStringDoubleArgument)(r),(0,oGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var Tne=_(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});Cne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uGe=_(q2=>{"use strict";var Y0r=q2&&q2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(q2,"__esModule",{value:!0});var wne=Y0r(Tne());q2.default={CACHEABLE:wne.default.CACHEABLE,IS_READ_ONLY:wne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];wne.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var lGe=_(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});Rne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var fGe=_(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var dGe=we();Nne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,dGe.transformStringDoubleArgument)(r),(0,dGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var pGe=_(One=>{"use strict";Object.defineProperty(One,"__esModule",{value:!0});One.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var mGe=_(kne=>{"use strict";Object.defineProperty(kne,"__esModule",{value:!0});kne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var hGe=_(Pne=>{"use strict";Object.defineProperty(Pne,"__esModule",{value:!0});var J0r=f2(),X0r=we();Pne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,J0r.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:X0r.transformSortedSetReply[2](e)}}}});var gGe=_(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});var Z0r=we();Dne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:Z0r.transformNullableDoubleReply}});var Lne=_(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});var emr=we();Bne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,emr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var AGe=_(j2=>{"use strict";var tmr=j2&&j2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(j2,"__esModule",{value:!0});var rmr=we(),yGe=tmr(Lne());j2.default={IS_READ_ONLY:yGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];yGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:rmr.transformSortedSetReply}});var xGe=_(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});var nmr=we();Mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,nmr.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var _Ge=_(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});var bGe=we();Wne.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,bGe.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:bGe.transformBooleanReply}});var EGe=_($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var vGe=_(Une=>{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});Une.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var qne=_(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});var smr=we();Fne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:smr.transformDoubleArrayReply}});var IGe=_(Q2=>{"use strict";var imr=Q2&&Q2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Q2,"__esModule",{value:!0});var SGe=we(),amr=imr(qne()),omr={2:t=>({quantization:t[0],raw:t[1],l2Norm:SGe.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:SGe.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};Q2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){amr.default.parseCommand(t,e,r),t.push("RAW")},transformReply:omr}});var CGe=_(jne=>{"use strict";Object.defineProperty(jne,"__esModule",{value:!0});var cmr=we();jne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:cmr.transformRedisJsonNullReply}});var TGe=_(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});Qne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r<t.length;r+=2)e[t[r].toString()]=t[r+1];return e},3:void 0}}});var Gne=_(Hne=>{"use strict";Object.defineProperty(Hne,"__esModule",{value:!0});Hne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var RGe=_(H2=>{"use strict";var umr=H2&&H2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(H2,"__esModule",{value:!0});var lmr=we(),wGe=umr(Gne());function dmr(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s<r.length;s+=2){let i=r[s],a=lmr.transformDoubleReply[2](r[s+1]);n[i.toString()]=a}e.push(n)}return e}H2.default={IS_READ_ONLY:wGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];wGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:dmr,3:void 0}}});var NGe=_(zne=>{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});zne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var OGe=_(Kne=>{"use strict";Object.defineProperty(Kne,"__esModule",{value:!0});Kne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var kGe=_(Vne=>{"use strict";Object.defineProperty(Vne,"__esModule",{value:!0});var fmr=we();Vne.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:fmr.transformBooleanReply}});var PGe=_(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});var pmr=we();Yne.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:pmr.transformBooleanReply}});var Xne=_(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});var mmr=we();Jne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,mmr.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var BGe=_(G2=>{"use strict";var hmr=G2&&G2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(G2,"__esModule",{value:!0});var gmr=we(),DGe=hmr(Xne());G2.default={IS_READ_ONLY:DGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];DGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n<e.length;n+=2)r[e[n].toString()]=gmr.transformDoubleReply[2](e[n+1]);return r},3:void 0}}});var LGe=_(Zne=>{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});var ymr=we(),Amr=t=>t;Zne.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r<t.length;r+=2){let n=t[r];e[t[r-1]]={calls:n[1],histogram_usec:(0,ymr.transformTuplesToMap)(n[3],Amr)}}return e},3:void 0}}});var Nu=_(Gn=>{"use strict";var xmr=Gn&&Gn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bmr=Gn&&Gn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),z2=Gn&&Gn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xmr(e,t,r);return bmr(e,t),e},$=Gn&&Gn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Gn,"__esModule",{value:!0});Gn.NON_STICKY_COMMANDS=Gn.REDIS_FLUSH_MODES=Gn.COMMAND_LIST_FILTER_BY=Gn.CLUSTER_SLOT_STATES=Gn.FAILOVER_MODES=Gn.CLIENT_KILL_FILTERS=void 0;var MGe=$(lFe()),WGe=$(dFe()),$Ge=$(fFe()),UGe=$(pFe()),FGe=$(mFe()),qGe=$(hFe()),jGe=$(gFe()),QGe=$(SFe()),HGe=$(zJ()),GGe=$(IFe()),zGe=$(CFe()),KGe=$(TFe()),VGe=$(wFe()),YGe=$(RFe()),JGe=$(ZJ()),XGe=$(NFe()),ZGe=$(OFe()),eze=$(kFe()),tze=$(PFe()),rze=$(DFe()),nze=$(BFe()),sze=$(LFe()),ize=$(MFe()),aze=$(WFe()),oze=$(FFe()),cze=$(dX()),uze=$(qFe()),lze=$(jFe()),dze=$(zFe()),fze=$(hX()),pze=$(VFe()),mze=$(YFe()),hze=$(JFe()),gze=$(XFe()),yze=$(ZFe()),Aze=$(_X()),ese=z2(t7e());Object.defineProperty(Gn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return ese.CLIENT_KILL_FILTERS}});var xze=$(r7e()),bze=$(n7e()),_ze=$(s7e()),Eze=$(i7e()),vze=$(a7e()),Sze=$(o7e()),Ize=$(c7e()),Cze=$(u7e()),Tze=$(l7e()),wze=$(d7e()),Rze=$(f7e()),Nze=$(p7e()),Oze=$(m7e()),kze=$(h7e()),Pze=$(g7e()),tse=z2(y7e());Object.defineProperty(Gn,"FAILOVER_MODES",{enumerable:!0,get:function(){return tse.FAILOVER_MODES}});var Dze=$(A7e()),Bze=$(x7e()),Lze=$(b7e()),Mze=$(_7e()),Wze=$(E7e()),$ze=$(v7e()),Uze=$(S7e()),Fze=$(I7e()),qze=$(C7e()),jze=$(T7e()),Qze=$(w7e()),Hze=$(R7e()),Gze=$(N7e()),zze=$(O7e()),Kze=$(k7e()),rse=z2(P7e());Object.defineProperty(Gn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return rse.CLUSTER_SLOT_STATES}});var Vze=$(B7e()),Yze=$(L7e()),Jze=$(M7e()),Xze=$(W7e()),Zze=$($7e()),nse=z2(U7e());Object.defineProperty(Gn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return nse.COMMAND_LIST_FILTER_BY}});var eKe=$(F7e()),tKe=$(q7e()),rKe=$(j7e()),nKe=$(Q7e()),sKe=$(H7e()),iKe=$(G7e()),aKe=$(z7e()),oKe=$(K7e()),cKe=$(V7e()),uKe=$(Y7e()),lKe=$(J7e()),dKe=$(X7e()),fKe=$(Z7e()),pKe=$(e9e()),mKe=$(n9e()),hKe=$(Pg()),gKe=$(i9e()),yKe=$(o9e()),AKe=$(u9e()),xKe=$(l9e()),bKe=$(d9e()),_Ke=$(f9e()),EKe=$(x9e()),vKe=$(_9e()),SKe=$(v9e()),IKe=$(BL()),CKe=$(n2()),TKe=$(w9e()),wKe=$(N9e()),RKe=$(k9e()),NKe=$(xZ()),OKe=$(o2()),kKe=$(s2()),PKe=$(Bg()),DKe=$(P9e()),BKe=$(D9e()),LKe=$(B9e()),MKe=$(L9e()),WKe=$(M9e()),$Ke=$(W9e()),UKe=$($9e()),FKe=$(U9e()),qKe=$(F9e()),jKe=$(q9e()),QKe=$(j9e()),sse=z2(Q9e());Object.defineProperty(Gn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return sse.REDIS_FLUSH_MODES}});var HKe=$(H9e()),GKe=$(z9e()),zKe=$(V9e()),KKe=$(Y9e()),VKe=$(J9e()),YKe=$(X9e()),JKe=$(Z9e()),XKe=$(eqe()),ZKe=$(WZ()),eVe=$(tqe()),tVe=$(rqe()),rVe=$(nqe()),nVe=$(sqe()),sVe=$(HZ()),iVe=$(iqe()),aVe=$(aqe()),oVe=$(oqe()),cVe=$(cqe()),uVe=$(uqe()),lVe=$(lqe()),dVe=$(dqe()),fVe=$(fqe()),pVe=$(pqe()),mVe=$(mqe()),hVe=$(hqe()),gVe=$(gqe()),yVe=$(yqe()),AVe=$(Aqe()),xVe=$(xqe()),bVe=$(bqe()),_Ve=$(_qe()),EVe=$(Eqe()),vVe=$(vqe()),SVe=$(Sqe()),IVe=$(Iqe()),CVe=$(fee()),TVe=$(Tqe()),wVe=$(Rqe()),RVe=$(Oqe()),NVe=$(kqe()),OVe=$(Pqe()),kVe=$(Dqe()),PVe=$(Bqe()),DVe=$(Mqe()),BVe=$(Wqe()),LVe=$($qe()),MVe=$(Uqe()),WVe=$(Fqe()),$Ve=$(qqe()),UVe=$(jqe()),FVe=$(Qqe()),qVe=$(Hqe()),jVe=$(Gqe()),QVe=$(zqe()),HVe=$(Ree()),GVe=$(Kqe()),zVe=$(Vqe()),KVe=$(Yqe()),VVe=$(Zqe()),YVe=$(Pee()),JVe=$(tje()),XVe=$(LL()),ZVe=$(rje()),eYe=$(nje()),tYe=$(sje()),rYe=$(ije()),nYe=$(uX()),_mr=$(aje()),sYe=$(oje()),iYe=$(Uee()),aYe=$(cje()),oYe=$(qee()),cYe=$(uje()),uYe=$(lje()),lYe=$(dje()),dYe=$(fje()),fYe=$(pje()),pYe=$(mje()),mYe=$(hje()),hYe=$(gje()),gYe=$(yje()),yYe=$(Aje()),AYe=$(xje()),xYe=$(bje()),bYe=$(_je()),_Ye=$(Eje()),EYe=$(vje()),vYe=$(Sje()),SYe=$(Ije()),IYe=$(ote()),CYe=$(Rje()),TYe=$(Nje()),wYe=$(Oje()),RYe=$(kje()),NYe=$(Pje()),OYe=$(Dje()),kYe=$(Bje()),PYe=$(Lje()),DYe=$(Mje()),BYe=$(Wje()),LYe=$($je()),MYe=$(Uje()),WYe=$(Fje()),$Ye=$(qje()),UYe=$(jje()),FYe=$(Qje()),qYe=$(Hje()),jYe=$(Gje()),QYe=$(zje()),HYe=$(Kje()),GYe=$(Vje()),zYe=$(Yje()),KYe=$(Jje()),VYe=$(Xje()),YYe=$(Zje()),JYe=$(eQe()),XYe=$(tQe()),ZYe=$(rQe()),eJe=$(nQe()),tJe=$(sQe()),rJe=$(iQe()),nJe=$(aQe()),sJe=$(oQe()),iJe=$(cQe()),aJe=$(uQe()),oJe=$(lQe()),cJe=$(f2()),uJe=$(dQe()),lJe=$(fQe()),dJe=$(pQe()),fJe=$(mQe()),pJe=$(hQe()),mJe=$(gQe()),hJe=$(yQe()),gJe=$(AQe()),yJe=$(xQe()),AJe=$(bQe()),xJe=$(_Qe()),bJe=$(EQe()),_Je=$(vQe()),EJe=$(SQe()),vJe=$(IQe()),SJe=$(CQe()),IJe=$(TQe()),CJe=$(wQe()),TJe=$(RQe()),wJe=$(NQe()),RJe=$(PQe()),NJe=$(DQe()),OJe=$(ML()),kJe=$(BQe()),PJe=$(LQe()),DJe=$(MQe()),BJe=$($Qe()),LJe=$(pre()),MJe=$(UQe()),WJe=$(FQe()),$Je=$(qQe()),UJe=$(jQe()),FJe=$(QQe()),qJe=$(HQe()),jJe=$(GQe()),QJe=$(zQe()),HJe=$(KQe()),GJe=$(VQe()),zJe=$(YQe()),KJe=$(JQe()),VJe=$(XQe()),YJe=$(ZQe()),JJe=$(tHe()),XJe=$(wre()),ZJe=$(nHe()),eXe=$(Ore()),tXe=$(iHe()),rXe=$(Pre()),nXe=$(aHe()),sXe=$(oHe()),iXe=$(cHe()),aXe=$(uHe()),oXe=$(lHe()),cXe=$(dHe()),uXe=$(fHe()),lXe=$(pHe()),dXe=$(mHe()),fXe=$(hHe()),pXe=$(yHe()),mXe=$(AHe()),hXe=$(xHe()),gXe=$(bHe()),yXe=$(Kre()),AXe=$(Vre()),xXe=$(vHe()),bXe=$(SHe()),_Xe=$(IHe()),EXe=$(CHe()),vXe=$(NHe()),SXe=$(Zre()),IXe=$(OHe()),CXe=$(PHe()),TXe=$(BHe()),wXe=$(sne()),RXe=$(LHe()),NXe=$(WHe()),OXe=$(FHe()),kXe=$($L()),PXe=$(qHe()),DXe=$(jHe()),BXe=$(QHe()),LXe=$(pX()),MXe=$(HHe()),WXe=$(GHe()),$Xe=$(pne()),UXe=$(zHe()),FXe=$(KHe()),qXe=$(JHe()),jXe=$(yne()),QXe=$(gne()),HXe=$(eGe()),GXe=$(Ane()),zXe=$(rGe()),KXe=$(sGe()),VXe=$(Ene()),YXe=$(aGe()),JXe=$(cGe()),XXe=$(uGe()),ZXe=$(Tne()),eZe=$(lGe()),tZe=$(fGe()),rZe=$(pGe()),nZe=$(mGe()),sZe=$(hGe()),iZe=$(gGe()),aZe=$(AGe()),oZe=$(Lne()),cZe=$(xGe()),uZe=$(_Ge()),lZe=$(EGe()),dZe=$(vGe()),fZe=$(qne()),pZe=$(IGe()),mZe=$(CGe()),hZe=$(TGe()),gZe=$(Gne()),yZe=$(RGe()),AZe=$(NGe()),xZe=$(OGe()),bZe=$(kGe()),_Ze=$(PGe()),EZe=$(Xne()),vZe=$(BGe()),SZe=$(LGe());Gn.default={ACL_CAT:MGe.default,aclCat:MGe.default,ACL_DELUSER:WGe.default,aclDelUser:WGe.default,ACL_DRYRUN:$Ge.default,aclDryRun:$Ge.default,ACL_GENPASS:UGe.default,aclGenPass:UGe.default,ACL_GETUSER:FGe.default,aclGetUser:FGe.default,ACL_LIST:qGe.default,aclList:qGe.default,ACL_LOAD:jGe.default,aclLoad:jGe.default,ACL_LOG_RESET:QGe.default,aclLogReset:QGe.default,ACL_LOG:HGe.default,aclLog:HGe.default,ACL_SAVE:GGe.default,aclSave:GGe.default,ACL_SETUSER:zGe.default,aclSetUser:zGe.default,ACL_USERS:KGe.default,aclUsers:KGe.default,ACL_WHOAMI:VGe.default,aclWhoAmI:VGe.default,APPEND:YGe.default,append:YGe.default,ASKING:JGe.default,asking:JGe.default,AUTH:XGe.default,auth:XGe.default,BGREWRITEAOF:ZGe.default,bgRewriteAof:ZGe.default,BGSAVE:eze.default,bgSave:eze.default,BITCOUNT:tze.default,bitCount:tze.default,BITFIELD_RO:rze.default,bitFieldRo:rze.default,BITFIELD:nze.default,bitField:nze.default,BITOP:sze.default,bitOp:sze.default,BITPOS:ize.default,bitPos:ize.default,BLMOVE:aze.default,blMove:aze.default,BLMPOP:oze.default,blmPop:oze.default,BLPOP:cze.default,blPop:cze.default,BRPOP:uze.default,brPop:uze.default,BRPOPLPUSH:lze.default,brPopLPush:lze.default,BZMPOP:dze.default,bzmPop:dze.default,BZPOPMAX:fze.default,bzPopMax:fze.default,BZPOPMIN:pze.default,bzPopMin:pze.default,CLIENT_CACHING:mze.default,clientCaching:mze.default,CLIENT_GETNAME:hze.default,clientGetName:hze.default,CLIENT_GETREDIR:gze.default,clientGetRedir:gze.default,CLIENT_ID:yze.default,clientId:yze.default,CLIENT_INFO:Aze.default,clientInfo:Aze.default,CLIENT_KILL:ese.default,clientKill:ese.default,CLIENT_LIST:xze.default,clientList:xze.default,"CLIENT_NO-EVICT":bze.default,clientNoEvict:bze.default,"CLIENT_NO-TOUCH":_ze.default,clientNoTouch:_ze.default,CLIENT_PAUSE:Eze.default,clientPause:Eze.default,CLIENT_SETNAME:vze.default,clientSetName:vze.default,CLIENT_TRACKING:Sze.default,clientTracking:Sze.default,CLIENT_TRACKINGINFO:Ize.default,clientTrackingInfo:Ize.default,CLIENT_UNPAUSE:Cze.default,clientUnpause:Cze.default,CLUSTER_ADDSLOTS:Tze.default,clusterAddSlots:Tze.default,CLUSTER_ADDSLOTSRANGE:wze.default,clusterAddSlotsRange:wze.default,CLUSTER_BUMPEPOCH:Rze.default,clusterBumpEpoch:Rze.default,"CLUSTER_COUNT-FAILURE-REPORTS":Nze.default,clusterCountFailureReports:Nze.default,CLUSTER_COUNTKEYSINSLOT:Oze.default,clusterCountKeysInSlot:Oze.default,CLUSTER_DELSLOTS:kze.default,clusterDelSlots:kze.default,CLUSTER_DELSLOTSRANGE:Pze.default,clusterDelSlotsRange:Pze.default,CLUSTER_FAILOVER:tse.default,clusterFailover:tse.default,CLUSTER_FLUSHSLOTS:Dze.default,clusterFlushSlots:Dze.default,CLUSTER_FORGET:Bze.default,clusterForget:Bze.default,CLUSTER_GETKEYSINSLOT:Lze.default,clusterGetKeysInSlot:Lze.default,CLUSTER_INFO:Mze.default,clusterInfo:Mze.default,CLUSTER_KEYSLOT:Wze.default,clusterKeySlot:Wze.default,CLUSTER_LINKS:$ze.default,clusterLinks:$ze.default,CLUSTER_MEET:Uze.default,clusterMeet:Uze.default,CLUSTER_MYID:Fze.default,clusterMyId:Fze.default,CLUSTER_MYSHARDID:qze.default,clusterMyShardId:qze.default,CLUSTER_NODES:jze.default,clusterNodes:jze.default,CLUSTER_REPLICAS:Qze.default,clusterReplicas:Qze.default,CLUSTER_REPLICATE:Hze.default,clusterReplicate:Hze.default,CLUSTER_RESET:Gze.default,clusterReset:Gze.default,CLUSTER_SAVECONFIG:zze.default,clusterSaveConfig:zze.default,"CLUSTER_SET-CONFIG-EPOCH":Kze.default,clusterSetConfigEpoch:Kze.default,CLUSTER_SETSLOT:rse.default,clusterSetSlot:rse.default,CLUSTER_SLOTS:Vze.default,clusterSlots:Vze.default,COMMAND_COUNT:Yze.default,commandCount:Yze.default,COMMAND_GETKEYS:Jze.default,commandGetKeys:Jze.default,COMMAND_GETKEYSANDFLAGS:Xze.default,commandGetKeysAndFlags:Xze.default,COMMAND_INFO:Zze.default,commandInfo:Zze.default,COMMAND_LIST:nse.default,commandList:nse.default,COMMAND:eKe.default,command:eKe.default,CONFIG_GET:tKe.default,configGet:tKe.default,CONFIG_RESETASTAT:rKe.default,configResetStat:rKe.default,CONFIG_REWRITE:nKe.default,configRewrite:nKe.default,CONFIG_SET:sKe.default,configSet:sKe.default,COPY:iKe.default,copy:iKe.default,DBSIZE:aKe.default,dbSize:aKe.default,DECR:oKe.default,decr:oKe.default,DECRBY:cKe.default,decrBy:cKe.default,DEL:uKe.default,del:uKe.default,DELEX:lKe.default,delEx:lKe.default,DIGEST:dKe.default,digest:dKe.default,DUMP:fKe.default,dump:fKe.default,ECHO:pKe.default,echo:pKe.default,EVAL_RO:mKe.default,evalRo:mKe.default,EVAL:hKe.default,eval:hKe.default,EVALSHA_RO:gKe.default,evalShaRo:gKe.default,EVALSHA:yKe.default,evalSha:yKe.default,EXISTS:FKe.default,exists:FKe.default,EXPIRE:qKe.default,expire:qKe.default,EXPIREAT:jKe.default,expireAt:jKe.default,EXPIRETIME:QKe.default,expireTime:QKe.default,FLUSHALL:sse.default,flushAll:sse.default,FLUSHDB:HKe.default,flushDb:HKe.default,FCALL:GKe.default,fCall:GKe.default,FCALL_RO:zKe.default,fCallRo:zKe.default,FUNCTION_DELETE:KKe.default,functionDelete:KKe.default,FUNCTION_DUMP:VKe.default,functionDump:VKe.default,FUNCTION_FLUSH:YKe.default,functionFlush:YKe.default,FUNCTION_KILL:JKe.default,functionKill:JKe.default,FUNCTION_LIST_WITHCODE:XKe.default,functionListWithCode:XKe.default,FUNCTION_LIST:ZKe.default,functionList:ZKe.default,FUNCTION_LOAD:eVe.default,functionLoad:eVe.default,FUNCTION_RESTORE:tVe.default,functionRestore:tVe.default,FUNCTION_STATS:rVe.default,functionStats:rVe.default,GEOADD:AKe.default,geoAdd:AKe.default,GEODIST:xKe.default,geoDist:xKe.default,GEOHASH:bKe.default,geoHash:bKe.default,GEOPOS:_Ke.default,geoPos:_Ke.default,GEORADIUS_RO_WITH:EKe.default,geoRadiusRoWith:EKe.default,GEORADIUS_RO:vKe.default,geoRadiusRo:vKe.default,GEORADIUS_STORE:SKe.default,geoRadiusStore:SKe.default,GEORADIUS_WITH:IKe.default,geoRadiusWith:IKe.default,GEORADIUS:CKe.default,geoRadius:CKe.default,GEORADIUSBYMEMBER_RO_WITH:TKe.default,geoRadiusByMemberRoWith:TKe.default,GEORADIUSBYMEMBER_RO:wKe.default,geoRadiusByMemberRo:wKe.default,GEORADIUSBYMEMBER_STORE:RKe.default,geoRadiusByMemberStore:RKe.default,GEORADIUSBYMEMBER_WITH:NKe.default,geoRadiusByMemberWith:NKe.default,GEORADIUSBYMEMBER:OKe.default,geoRadiusByMember:OKe.default,GEOSEARCH_WITH:kKe.default,geoSearchWith:kKe.default,GEOSEARCH:PKe.default,geoSearch:PKe.default,GEOSEARCHSTORE:DKe.default,geoSearchStore:DKe.default,GET:BKe.default,get:BKe.default,GETBIT:LKe.default,getBit:LKe.default,GETDEL:MKe.default,getDel:MKe.default,GETEX:WKe.default,getEx:WKe.default,GETRANGE:$Ke.default,getRange:$Ke.default,GETSET:UKe.default,getSet:UKe.default,HDEL:nVe.default,hDel:nVe.default,HELLO:sVe.default,hello:sVe.default,HEXISTS:iVe.default,hExists:iVe.default,HEXPIRE:aVe.default,hExpire:aVe.default,HEXPIREAT:oVe.default,hExpireAt:oVe.default,HEXPIRETIME:cVe.default,hExpireTime:cVe.default,HGET:uVe.default,hGet:uVe.default,HGETALL:lVe.default,hGetAll:lVe.default,HGETDEL:dVe.default,hGetDel:dVe.default,HGETEX:fVe.default,hGetEx:fVe.default,HINCRBY:pVe.default,hIncrBy:pVe.default,HINCRBYFLOAT:mVe.default,hIncrByFloat:mVe.default,HKEYS:hVe.default,hKeys:hVe.default,HLEN:gVe.default,hLen:gVe.default,HMGET:yVe.default,hmGet:yVe.default,HPERSIST:AVe.default,hPersist:AVe.default,HPEXPIRE:xVe.default,hpExpire:xVe.default,HPEXPIREAT:bVe.default,hpExpireAt:bVe.default,HPEXPIRETIME:_Ve.default,hpExpireTime:_Ve.default,HPTTL:EVe.default,hpTTL:EVe.default,HRANDFIELD_COUNT_WITHVALUES:vVe.default,hRandFieldCountWithValues:vVe.default,HRANDFIELD_COUNT:SVe.default,hRandFieldCount:SVe.default,HRANDFIELD:IVe.default,hRandField:IVe.default,HSCAN:CVe.default,hScan:CVe.default,HSCAN_NOVALUES:TVe.default,hScanNoValues:TVe.default,HSET:wVe.default,hSet:wVe.default,HSETEX:RVe.default,hSetEx:RVe.default,HSETNX:NVe.default,hSetNX:NVe.default,HSTRLEN:OVe.default,hStrLen:OVe.default,HTTL:kVe.default,hTTL:kVe.default,HVALS:PVe.default,hVals:PVe.default,HOTKEYS_GET:DVe.default,hotkeysGet:DVe.default,HOTKEYS_RESET:BVe.default,hotkeysReset:BVe.default,HOTKEYS_START:LVe.default,hotkeysStart:LVe.default,HOTKEYS_STOP:MVe.default,hotkeysStop:MVe.default,INCR:WVe.default,incr:WVe.default,INCRBY:$Ve.default,incrBy:$Ve.default,INCRBYFLOAT:UVe.default,incrByFloat:UVe.default,INFO:FVe.default,info:FVe.default,KEYS:qVe.default,keys:qVe.default,LASTSAVE:jVe.default,lastSave:jVe.default,LATENCY_DOCTOR:QVe.default,latencyDoctor:QVe.default,LATENCY_GRAPH:HVe.default,latencyGraph:HVe.default,LATENCY_HISTORY:GVe.default,latencyHistory:GVe.default,LATENCY_HISTOGRAM:SZe.default,latencyHistogram:SZe.default,LATENCY_LATEST:zVe.default,latencyLatest:zVe.default,LATENCY_RESET:KVe.default,latencyReset:KVe.default,LCS_IDX_WITHMATCHLEN:VVe.default,lcsIdxWithMatchLen:VVe.default,LCS_IDX:YVe.default,lcsIdx:YVe.default,LCS_LEN:JVe.default,lcsLen:JVe.default,LCS:XVe.default,lcs:XVe.default,LINDEX:ZVe.default,lIndex:ZVe.default,LINSERT:eYe.default,lInsert:eYe.default,LLEN:tYe.default,lLen:tYe.default,LMOVE:rYe.default,lMove:rYe.default,LMPOP:nYe.default,lmPop:nYe.default,LOLWUT:_mr.default,LPOP_COUNT:sYe.default,lPopCount:sYe.default,LPOP:iYe.default,lPop:iYe.default,LPOS_COUNT:aYe.default,lPosCount:aYe.default,LPOS:oYe.default,lPos:oYe.default,LPUSH:cYe.default,lPush:cYe.default,LPUSHX:uYe.default,lPushX:uYe.default,LRANGE:lYe.default,lRange:lYe.default,LREM:dYe.default,lRem:dYe.default,LSET:fYe.default,lSet:fYe.default,LTRIM:pYe.default,lTrim:pYe.default,MEMORY_DOCTOR:mYe.default,memoryDoctor:mYe.default,"MEMORY_MALLOC-STATS":hYe.default,memoryMallocStats:hYe.default,MEMORY_PURGE:gYe.default,memoryPurge:gYe.default,MEMORY_STATS:yYe.default,memoryStats:yYe.default,MEMORY_USAGE:AYe.default,memoryUsage:AYe.default,MGET:xYe.default,mGet:xYe.default,MIGRATE:bYe.default,migrate:bYe.default,MODULE_LIST:_Ye.default,moduleList:_Ye.default,MODULE_LOAD:EYe.default,moduleLoad:EYe.default,MODULE_UNLOAD:vYe.default,moduleUnload:vYe.default,MOVE:SYe.default,move:SYe.default,MSET:IYe.default,mSet:IYe.default,MSETEX:CYe.default,mSetEx:CYe.default,MSETNX:TYe.default,mSetNX:TYe.default,OBJECT_ENCODING:wYe.default,objectEncoding:wYe.default,OBJECT_FREQ:RYe.default,objectFreq:RYe.default,OBJECT_IDLETIME:NYe.default,objectIdleTime:NYe.default,OBJECT_REFCOUNT:OYe.default,objectRefCount:OYe.default,PERSIST:kYe.default,persist:kYe.default,PEXPIRE:PYe.default,pExpire:PYe.default,PEXPIREAT:DYe.default,pExpireAt:DYe.default,PEXPIRETIME:BYe.default,pExpireTime:BYe.default,PFADD:LYe.default,pfAdd:LYe.default,PFCOUNT:MYe.default,pfCount:MYe.default,PFMERGE:WYe.default,pfMerge:WYe.default,PING:$Ye.default,ping:$Ye.default,PSETEX:UYe.default,pSetEx:UYe.default,PTTL:FYe.default,pTTL:FYe.default,PUBLISH:qYe.default,publish:qYe.default,PUBSUB_CHANNELS:jYe.default,pubSubChannels:jYe.default,PUBSUB_NUMPAT:QYe.default,pubSubNumPat:QYe.default,PUBSUB_NUMSUB:HYe.default,pubSubNumSub:HYe.default,PUBSUB_SHARDNUMSUB:GYe.default,pubSubShardNumSub:GYe.default,PUBSUB_SHARDCHANNELS:zYe.default,pubSubShardChannels:zYe.default,RANDOMKEY:KYe.default,randomKey:KYe.default,READONLY:VYe.default,readonly:VYe.default,RENAME:YYe.default,rename:YYe.default,RENAMENX:JYe.default,renameNX:JYe.default,REPLICAOF:XYe.default,replicaOf:XYe.default,"RESTORE-ASKING":ZYe.default,restoreAsking:ZYe.default,RESTORE:eJe.default,restore:eJe.default,RPOP_COUNT:rJe.default,rPopCount:rJe.default,ROLE:tJe.default,role:tJe.default,RPOP:nJe.default,rPop:nJe.default,RPOPLPUSH:sJe.default,rPopLPush:sJe.default,RPUSH:iJe.default,rPush:iJe.default,RPUSHX:aJe.default,rPushX:aJe.default,SADD:oJe.default,sAdd:oJe.default,SCAN:cJe.default,scan:cJe.default,SCARD:uJe.default,sCard:uJe.default,SCRIPT_DEBUG:lJe.default,scriptDebug:lJe.default,SCRIPT_EXISTS:dJe.default,scriptExists:dJe.default,SCRIPT_FLUSH:fJe.default,scriptFlush:fJe.default,SCRIPT_KILL:pJe.default,scriptKill:pJe.default,SCRIPT_LOAD:mJe.default,scriptLoad:mJe.default,SDIFF:hJe.default,sDiff:hJe.default,SDIFFSTORE:gJe.default,sDiffStore:gJe.default,SET:yJe.default,set:yJe.default,SETBIT:AJe.default,setBit:AJe.default,SETEX:xJe.default,setEx:xJe.default,SETNX:bJe.default,setNX:bJe.default,SETRANGE:_Je.default,setRange:_Je.default,SINTER:EJe.default,sInter:EJe.default,SINTERCARD:vJe.default,sInterCard:vJe.default,SINTERSTORE:SJe.default,sInterStore:SJe.default,SISMEMBER:IJe.default,sIsMember:IJe.default,SMEMBERS:CJe.default,sMembers:CJe.default,SMISMEMBER:TJe.default,smIsMember:TJe.default,SMOVE:wJe.default,sMove:wJe.default,SORT_RO:RJe.default,sortRo:RJe.default,SORT_STORE:NJe.default,sortStore:NJe.default,SORT:OJe.default,sort:OJe.default,SPOP_COUNT:kJe.default,sPopCount:kJe.default,SPOP:PJe.default,sPop:PJe.default,SPUBLISH:DJe.default,sPublish:DJe.default,SRANDMEMBER_COUNT:BJe.default,sRandMemberCount:BJe.default,SRANDMEMBER:LJe.default,sRandMember:LJe.default,SREM:MJe.default,sRem:MJe.default,SSCAN:WJe.default,sScan:WJe.default,STRLEN:$Je.default,strLen:$Je.default,SUNION:UJe.default,sUnion:UJe.default,SUNIONSTORE:FJe.default,sUnionStore:FJe.default,SWAPDB:qJe.default,swapDb:qJe.default,TIME:jJe.default,time:jJe.default,TOUCH:QJe.default,touch:QJe.default,TTL:HJe.default,ttl:HJe.default,TYPE:GJe.default,type:GJe.default,UNLINK:zJe.default,unlink:zJe.default,WAIT:KJe.default,wait:KJe.default,XACK:VJe.default,xAck:VJe.default,XACKDEL:YJe.default,xAckDel:YJe.default,XADD_NOMKSTREAM:JJe.default,xAddNoMkStream:JJe.default,XADD:XJe.default,xAdd:XJe.default,XAUTOCLAIM_JUSTID:ZJe.default,xAutoClaimJustId:ZJe.default,XAUTOCLAIM:eXe.default,xAutoClaim:eXe.default,XCLAIM_JUSTID:tXe.default,xClaimJustId:tXe.default,XCLAIM:rXe.default,xClaim:rXe.default,XCFGSET:nXe.default,xCfgSet:nXe.default,XDEL:sXe.default,xDel:sXe.default,XDELEX:iXe.default,xDelEx:iXe.default,XGROUP_CREATE:aXe.default,xGroupCreate:aXe.default,XGROUP_CREATECONSUMER:oXe.default,xGroupCreateConsumer:oXe.default,XGROUP_DELCONSUMER:cXe.default,xGroupDelConsumer:cXe.default,XGROUP_DESTROY:uXe.default,xGroupDestroy:uXe.default,XGROUP_SETID:lXe.default,xGroupSetId:lXe.default,XINFO_CONSUMERS:dXe.default,xInfoConsumers:dXe.default,XINFO_GROUPS:fXe.default,xInfoGroups:fXe.default,XINFO_STREAM:pXe.default,xInfoStream:pXe.default,XLEN:mXe.default,xLen:mXe.default,XPENDING_RANGE:hXe.default,xPendingRange:hXe.default,XPENDING:gXe.default,xPending:gXe.default,XRANGE:yXe.default,xRange:yXe.default,XREAD:AXe.default,xRead:AXe.default,XREADGROUP:xXe.default,xReadGroup:xXe.default,XREVRANGE:bXe.default,xRevRange:bXe.default,XSETID:_Xe.default,xSetId:_Xe.default,XTRIM:EXe.default,xTrim:EXe.default,ZADD_INCR:vXe.default,zAddIncr:vXe.default,ZADD:SXe.default,zAdd:SXe.default,ZCARD:IXe.default,zCard:IXe.default,ZCOUNT:CXe.default,zCount:CXe.default,ZDIFF_WITHSCORES:TXe.default,zDiffWithScores:TXe.default,ZDIFF:wXe.default,zDiff:wXe.default,ZDIFFSTORE:RXe.default,zDiffStore:RXe.default,ZINCRBY:NXe.default,zIncrBy:NXe.default,ZINTER_WITHSCORES:OXe.default,zInterWithScores:OXe.default,ZINTER:kXe.default,zInter:kXe.default,ZINTERCARD:PXe.default,zInterCard:PXe.default,ZINTERSTORE:DXe.default,zInterStore:DXe.default,ZLEXCOUNT:BXe.default,zLexCount:BXe.default,ZMPOP:LXe.default,zmPop:LXe.default,ZMSCORE:MXe.default,zmScore:MXe.default,ZPOPMAX_COUNT:WXe.default,zPopMaxCount:WXe.default,ZPOPMAX:$Xe.default,zPopMax:$Xe.default,ZPOPMIN_COUNT:UXe.default,zPopMinCount:UXe.default,ZPOPMIN:FXe.default,zPopMin:FXe.default,ZRANDMEMBER_COUNT_WITHSCORES:qXe.default,zRandMemberCountWithScores:qXe.default,ZRANDMEMBER_COUNT:jXe.default,zRandMemberCount:jXe.default,ZRANDMEMBER:QXe.default,zRandMember:QXe.default,ZRANGE_WITHSCORES:HXe.default,zRangeWithScores:HXe.default,ZRANGE:GXe.default,zRange:GXe.default,ZRANGEBYLEX:zXe.default,zRangeByLex:zXe.default,ZRANGEBYSCORE_WITHSCORES:KXe.default,zRangeByScoreWithScores:KXe.default,ZRANGEBYSCORE:VXe.default,zRangeByScore:VXe.default,ZRANGESTORE:YXe.default,zRangeStore:YXe.default,ZRANK_WITHSCORE:XXe.default,zRankWithScore:XXe.default,ZRANK:ZXe.default,zRank:ZXe.default,ZREM:eZe.default,zRem:eZe.default,ZREMRANGEBYLEX:tZe.default,zRemRangeByLex:tZe.default,ZREMRANGEBYRANK:rZe.default,zRemRangeByRank:rZe.default,ZREMRANGEBYSCORE:JXe.default,zRemRangeByScore:JXe.default,ZREVRANK:nZe.default,zRevRank:nZe.default,ZSCAN:sZe.default,zScan:sZe.default,ZSCORE:iZe.default,zScore:iZe.default,ZUNION_WITHSCORES:aZe.default,zUnionWithScores:aZe.default,ZUNION:oZe.default,zUnion:oZe.default,ZUNIONSTORE:cZe.default,zUnionStore:cZe.default,VADD:uZe.default,vAdd:uZe.default,VCARD:lZe.default,vCard:lZe.default,VDIM:dZe.default,vDim:dZe.default,VEMB:fZe.default,vEmb:fZe.default,VEMB_RAW:pZe.default,vEmbRaw:pZe.default,VGETATTR:mZe.default,vGetAttr:mZe.default,VINFO:hZe.default,vInfo:hZe.default,VLINKS:gZe.default,vLinks:gZe.default,VLINKS_WITHSCORES:yZe.default,vLinksWithScores:yZe.default,VRANDMEMBER:AZe.default,vRandMember:AZe.default,VRANGE:xZe.default,vRange:xZe.default,VREM:bZe.default,vRem:bZe.default,VSETATTR:_Ze.default,vSetAttr:_Ze.default,VSIM:EZe.default,vSim:EZe.default,VSIM_WITHSCORES:vZe.default,vSimWithScores:vZe.default};var Emr=$(Nu()),{HOTKEYS_GET:Zon,hotkeysGet:ecn,HOTKEYS_RESET:tcn,hotkeysReset:rcn,HOTKEYS_START:ncn,hotkeysStart:scn,HOTKEYS_STOP:icn,hotkeysStop:acn,...vmr}=Emr.default;Gn.NON_STICKY_COMMANDS=vmr});var K2=_(fr=>{"use strict";var IZe=fr&&fr.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},CZe;Object.defineProperty(fr,"__esModule",{value:!0});fr.emitDiagnostics=fr.dbgMaintenance=fr.MAINTENANCE_EVENTS=fr.SMIGRATED_EVENT=void 0;var TZe=require("net"),Smr=require("dns/promises"),n1=IZe(require("node:assert")),Imr=require("node:timers/promises"),Cmr=IZe(require("node:diagnostics_channel"));fr.SMIGRATED_EVENT="__SMIGRATED";fr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var um={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Tmr=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};fr.dbgMaintenance=Tmr;var wmr=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Cmr.default.channel("redis.maintenance").publish(t)};fr.emitDiagnostics=wmr;var UL=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await Nmr(n,r,e)],errorHandler:i=>{if((0,fr.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,fr.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(um).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,fr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case um.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,fr.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case um.MIGRATING:case um.SMIGRATING:case um.FAILING_OVER:return(0,fr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case um.MIGRATED:case um.FAILED_OVER:return(0,fr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case um.SMIGRATED:return(0,fr.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,n1.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,fr.dbgMaintenance)(`Wait for ${d}ms`),await(0,Imr.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,fr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,fr.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,fr.dbgMaintenance)("[ERR]",u)}),(0,fr.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,fr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,fr.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,fr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,fr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,fr.dbgMaintenance)("In-flight commands completed"),(0,fr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,fr.dbgMaintenance)("Swap client sockets done."),(0,fr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,fr.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,fr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=CZe.parseSMigratedPush(e);(0,fr.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:e[1],entries:n}}#l(){(0,n1.default)(this.#t.socket!==void 0),(0,n1.default)("host"in this.#t.socket),(0,n1.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,n1.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};CZe=UL;fr.default=UL;function Rmr(t){let e=(0,TZe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function Nmr(t,e,r){if((0,n1.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,fr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,TZe.isIP)(e)?e:(await(0,Smr.lookup)(e,{family:0})).address,s=Rmr(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,fr.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var PZe=_(V2=>{"use strict";var kZe=V2&&V2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(V2,"__esModule",{value:!0});var wZe=require("node:events"),RZe=kZe(require("node:net")),Omr=kZe(require("node:tls")),Yl=zl(),NZe=require("node:timers/promises"),OZe=K2(),ise=class extends wZe.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Omr.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return RZe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return RZe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Yl.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#A(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Yl.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,NZe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,NZe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,OZe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,OZe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#A(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Yl.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,wZe.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Yl.SocketTimeoutDuringMaintenanceError(this.#o):new Yl.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Yl.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Yl.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Yl.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Yl.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(e,r){if(r instanceof Yl.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};V2.default=ise});var ose=_(FL=>{"use strict";Object.defineProperty(FL,"__esModule",{value:!0});FL.Token=void 0;var ase=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs<e?0:this.expiresAtMs-e}};FL.Token=ase});var DZe=_(s1=>{"use strict";Object.defineProperty(s1,"__esModule",{value:!0});s1.TokenManager=s1.IDPError=void 0;var kmr=ose(),qL=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};s1.IDPError=qL;var cse=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new kmr.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new qL(n,r))}};s1.TokenManager=cse});var BZe=_(i1=>{"use strict";Object.defineProperty(i1,"__esModule",{value:!0});i1.UnableToObtainNewCredentialsError=i1.CredentialsError=void 0;var use=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};i1.CredentialsError=use;var lse=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};i1.UnableToObtainNewCredentialsError=lse});var WZe=_(Mc=>{"use strict";Object.defineProperty(Mc,"__esModule",{value:!0});Mc.Token=Mc.CredentialsError=Mc.UnableToObtainNewCredentialsError=Mc.IDPError=Mc.TokenManager=void 0;var LZe=DZe();Object.defineProperty(Mc,"TokenManager",{enumerable:!0,get:function(){return LZe.TokenManager}});Object.defineProperty(Mc,"IDPError",{enumerable:!0,get:function(){return LZe.IDPError}});var MZe=BZe();Object.defineProperty(Mc,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return MZe.UnableToObtainNewCredentialsError}});Object.defineProperty(Mc,"CredentialsError",{enumerable:!0,get:function(){return MZe.CredentialsError}});var Pmr=ose();Object.defineProperty(Mc,"Token",{enumerable:!0,get:function(){return Pmr.Token}})});var QL=_(Jl=>{"use strict";var Dmr=Jl&&Jl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Jl,"__esModule",{value:!0});Jl.EmptyAwareSinglyLinkedList=Jl.SinglyLinkedList=Jl.DoublyLinkedList=void 0;var Bmr=Dmr(require("events")),dse=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Jl.DoublyLinkedList=dse;var jL=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Jl.SinglyLinkedList=jL;var fse=class extends jL{events=new Bmr.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Jl.EmptyAwareSinglyLinkedList=fse});var $Ze=_(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});var Y2=`\r
|
|
`;function Lmr(t){let e=[],r="*"+t.length+Y2;for(let n=0;n<t.length;n++){let s=t[n];if(typeof s=="string")r+="$"+Buffer.byteLength(s)+Y2+s+Y2;else if(s instanceof Buffer)e.push(r+"$"+s.length.toString()+Y2,s),r=Y2;else throw new TypeError(`"arguments[${n}]" must be of type "string | Buffer", got ${typeof s} instead.`)}return e.push(r),e}pse.default=Lmr});var hse=_((gcn,mse)=>{var UZe=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],Mmr=function(e){for(var r,n=0,s=0,i=[],a=e.length;n<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},FZe=mse.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Mmr(e):e,c=o.length;n<c;){if(r=o[n++],s===-1)r===123&&(s=n);else if(r!==125)a=UZe[(r^a>>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=UZe[(r^i>>8)&255]^i<<8}return i&16383};mse.exports.generateMulti=function(e){for(var r=1,n=e.length,s=FZe(e[0]);r<n;)if(FZe(e[r++])!==s)return-1;return s}});var J2=_(Dt=>{"use strict";var Wmr=Dt&&Dt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Dt,"__esModule",{value:!0});Dt.PubSub=Dt.PUBSUB_TYPE=void 0;var $mr=Wmr(hse());Dt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var Ti={[Dt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[Dt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[Dt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},gse=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||Ti[Dt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[Dt.PUBSUB_TYPE.CHANNELS]:new Map,[Dt.PUBSUB_TYPE.PATTERNS]:new Map,[Dt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[Ti[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[Ti[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(e,r){let n=[Ti[e].subscribe];for(let[s,i]of r)this.#a(e,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([Ti[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([Ti[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[Ti[e].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)t.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[Dt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[Dt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[Dt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===Dt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[Ti[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[Ti[Dt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return Ti[Dt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):Ti[Dt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):Ti[Dt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(Dt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[Dt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[Dt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[Dt.PUBSUB_TYPE.CHANNELS]:this.listeners[Dt.PUBSUB_TYPE.CHANNELS],[Dt.PUBSUB_TYPE.PATTERNS]:this.listeners[Dt.PUBSUB_TYPE.PATTERNS],[Dt.PUBSUB_TYPE.SHARDED]:this.listeners[Dt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[Dt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[Dt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[Dt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[Dt.PUBSUB_TYPE.SHARDED])e.has((0,$mr.default)(n))&&(r.set(n,s),this.listeners[Dt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[Dt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};Dt.PubSub=gse});var jZe=_(Z2=>{"use strict";var Umr=Z2&&Z2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z2,"__esModule",{value:!0});var qZe=QL(),Fmr=Umr($Ze()),X2=OL(),yse=J2(),a1=zl(),o1=K2(),qmr=Buffer.from("pong"),jmr=Buffer.from("RESET"),Qmr={...X2.PUSH_TYPE_MAPPING,[X2.RESP_TYPES.SIMPLE_STRING]:Buffer},Ase=class t{#e;#t;#r=new qZe.DoublyLinkedList;#n=new qZe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new yse.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,o1.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,o1.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,o1.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;t.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new a1.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,o1.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=yse.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||yse.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new X2.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,o1.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,o1.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#v(new a1.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new a1.AbortError):new Promise((n,s)=>{let i,a={args:e,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new a1.CommandTimeoutDuringMaintenanceError(o):new a1.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new a1.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:X2.PUSH_TYPE_MAPPING},r)})}#A(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(qmr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[X2.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>Qmr)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#A(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#A(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#A(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#A(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#_?this.#_=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#_;async reset(e,r){return new Promise((n,s)=>{this.#_=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&jmr.equals(i)){this.#g(),this.#_=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#_(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,Fmr.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#y(e),e.abort=void 0),e.timeout&&(t.#I(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#v(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#y(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#I(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#E(e,r){e.abort&&t.#y(e),e.timeout&&t.#I(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#v(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#E(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#v(e);for(let r of this.#r)t.#E(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};Z2.default=Ase});var Zl=_(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.scriptArgumentsPrefix=Xl.functionArgumentsPrefix=Xl.getTransformReply=Xl.attachConfig=void 0;function QZe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function Hmr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=QZe:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=QZe:d[f]=n(p,o);HZe(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);HZe(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Xl.attachConfig=Hmr;function HZe(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function Gmr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Xl.getTransformReply=Gmr;function zmr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Xl.functionArgumentsPrefix=zmr;function Kmr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Xl.scriptArgumentsPrefix=Kmr});var eT=_(bse=>{"use strict";Object.defineProperty(bse,"__esModule",{value:!0});var GZe=zl(),xse=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof GZe.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new GZe.MultiErrorReply(n,r);return n}};bse.default=xse});var Ese=_(tT=>{"use strict";var zZe=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var Vmr=zZe(Nu()),Ymr=zZe(eT()),c1=Zl(),HL=Kl(),_se=class t{static#e(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,c1.functionArgumentsPrefix)(e,r),i=(0,c1.getTransformReply)(r,n);return function(...a){let o=new HL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,c1.getTransformReply)(e,r);return function(...s){let i=new HL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,c1.attachConfig)({BaseClass:t,commands:Vmr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new Ymr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};tT.default=_se});var YZe=_(l1=>{"use strict";var KZe=l1&&l1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(l1,"__esModule",{value:!0});l1.RedisLegacyClient=void 0;var Jmr=Zl(),VZe=KZe(Nu()),Xmr=KZe(eT()),u1=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,r){for(let n=0;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,Jmr.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(VZe.default))this[n]=t.#t(n,s,r);this.#n=vse.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};l1.RedisLegacyClient=u1;var vse=class t{static#e(e,r,n){let s=u1.getTransformReply(r,n);return function(...i){let a=[e];return u1.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(VZe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new Xmr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return u1.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var d1=_(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.PooledNoRedirectClientSideCache=ho.BasicPooledClientSideCache=ho.PooledClientSideCacheProvider=ho.BasicClientSideCache=ho.ClientSideCacheProvider=ho.CacheStats=void 0;var Zmr=require("stream"),rT=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};ho.CacheStats=rT;var GL=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return rT.empty()}};function ehr(){return GL.INSTANCE}var zL=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return rT.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function thr(t){let e=new Array(t.length*2);for(let r=0;r<t.length;r++)e[r]=t[r].length,e[r+t.length]=t[r];return e.join("_")}var KL=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)}},nT=class extends KL{#e;get value(){return this.#e}constructor(e,r){super(e),this.#e=r}},sT=class extends KL{#e;get promise(){return this.#e}constructor(e,r){super(e),this.#e=r}},VL=class extends Zmr.EventEmitter{};ho.ClientSideCacheProvider=VL;var YL=class extends VL{#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?zL.create():ehr()}async handleCache(e,r,n,s,i){let a,o=thr(r.redisArgs),c=this.get(o);if(c){if(c instanceof nT)return this.#r.recordHits(1),structuredClone(c.value);if(c instanceof sT)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 GL||(this.#r=zL.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 nT(this.ttl,r)}createPromiseEntry(e,r){return new sT(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};ho.BasicClientSideCache=YL;var JL=class extends YL{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};ho.PooledClientSideCacheProvider=JL;var XL=class extends JL{onError(){this.clear(!1)}onClose(){this.clear(!1)}};ho.BasicPooledClientSideCache=XL;var Sse=class extends nT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},Ise=class extends sT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},Cse=class extends XL{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Sse(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ise(this.ttl,n,r)}onError(){}onClose(){}};ho.PooledNoRedirectClientSideCache=Cse});var ZL=_(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});var Tse=class{#e;#t;get(e){return JSON.stringify(e,JZe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,JZe())}};wse.default=Tse;function JZe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var kse=_(f1=>{"use strict";var Ose=f1&&f1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(f1,"__esModule",{value:!0});f1.RedisClientPool=void 0;var rhr=Nu(),nhr=Ose(p1()),shr=require("node:events"),Rse=QL(),ihr=zl(),$g=Zl(),ahr=Ose(Ese()),XZe=d1(),e5=Kl(),ohr=Ose(ZL()),Nse=class t extends shr.EventEmitter{static#e(e,r){let n=(0,$g.getTransformReply)(e,r);return async function(...s){let i=new e5.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,$g.getTransformReply)(e,r);return async function(...s){let i=new e5.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,$g.functionArgumentsPrefix)(e,r),i=(0,$g.getTransformReply)(r,n);return async function(...a){let o=new e5.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,$g.scriptArgumentsPrefix)(e),s=(0,$g.getTransformReply)(e,r);return async function(...i){let a=new e5.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new ohr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,$g.attachConfig)({BaseClass:t,commands:rhr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=ahr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Rse.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Rse.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Rse.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.length}#p=!1;get isOpen(){return this._self.#p}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof XZe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new XZe.BasicPooledClientSideCache(n)}this.#s=nhr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.length<this._self.#i.minimum;)e.push(this._self.#A());try{await Promise.all(e)}catch(r){throw this.destroy(),r}return this}async#A(){let e=this._self.#l.push(this._self.#s().on("error",r=>this.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#_(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new ihr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClients<this._self.#i.maximum&&this._self.#A();return}let a=this._self.#l.push(s);this._self.#g(a,r,n,e)})}#g(e,r,n,s){let i=s(e.value);i instanceof Promise?i.then(r,n).finally(()=>this.#_(e)):(r(i),this.#_(e))}#_(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#v()}cleanupTimeout;#v(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#y(),this.#i.cleanupDelay))}#y(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;r<e;r++)this.#c.shift().destroy()}sendCommand(e,r){return this.execute(n=>n.sendCommand(e,r))}MULTI(){return new this.Multi((e,r)=>this.execute(n=>n._executeMulti(e,r)),e=>this.execute(r=>r._executePipeline(e)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let e=[];for(let r of this._self.#c)e.push(r.close());for(let r of this._self.#l)e.push(r.close());await Promise.all(e),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let e of this._self.#c)e.destroy();this._self.#c.reset();for(let e of this._self.#l)e.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};f1.RedisClientPool=Nse});var ZZe=_((wcn,chr)=>{chr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var p1=_(ku=>{"use strict";var uhr=ku&&ku.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),lhr=ku&&ku.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),dhr=ku&&ku.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&uhr(e,t,r);return lhr(e,t),e},g1=ku&&ku.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Ou;Object.defineProperty(ku,"__esModule",{value:!0});var m1=g1(Nu()),fhr=g1(PZe()),eet=WZe(),phr=g1(jZe()),mhr=require("node:events"),Ug=Zl(),lm=zl(),hhr=require("node:url"),h1=J2(),ghr=g1(Ese()),yhr=g1(HZ()),Ahr=YZe(),xhr=kse(),Fg=we(),tet=d1(),t5=Kl(),bhr=g1(ZL()),_hr=ZZe(),r5=dhr(K2()),n5=class extends mhr.EventEmitter{static#e(e,r){let n=(0,Ug.getTransformReply)(e,r);return async function(...s){let i=new t5.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,Ug.getTransformReply)(e,r);return async function(...s){let i=new t5.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,Ug.functionArgumentsPrefix)(e,r),i=(0,Ug.getTransformReply)(r,n);return async function(...a){let o=new t5.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,Ug.scriptArgumentsPrefix)(e),s=(0,Ug.getTransformReply)(e,r);return async function(...i){let a=new t5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new bhr.default;static factory(e){let r=Ou.#a.get(e);return r||(r=(0,Ug.attachConfig)({BaseClass:Ou,commands:m1.default,createCommand:Ou.#e,createModuleCommand:Ou.#t,createFunctionCommand:Ou.#r,createScriptCommand:Ou.#n,config:e}),r.prototype.Multi=ghr.default.extend(e),Ou.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return Ou.factory(e)(e)}static parseOptions(e){if(e?.url){let r=Ou.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new hhr.URL(e),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#h;#p;#d;#f=null;#m=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#A(e),this.#o=this.#g(e),this.#i=this.#_(),this.#s=this.#S(),this.#o.maintNotifications!=="disabled"&&new r5.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof tet.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new tet.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else e?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#A(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&r5.default.setupDefaultMaintOptions(e),e.url){let r=Ou.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#_(){return new phr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,Fg.parseArgs)(m1.default.AUTH,{username:e.username,password:e.password??""}))};#v(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new eet.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new eet.UnableToObtainNewCredentialsError(n))}})}async#y(e,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#I(){let e=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#v(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,Fg.parseArgs)(yhr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,Fg.parseArgs)(m1.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#v(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,Fg.parseArgs)(m1.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,Fg.parseArgs)(m1.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,Fg.parseArgs)(m1.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",_hr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await r5.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#E(e){e.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#S(){let e=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#y(s,!0)),n.length)return this.#k(),Promise.all(n)},r=new fhr.default(e,this.#o.socket);return this.#E(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Ahr.RedisLegacyClient(this)}createPool(e){return xhr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#E(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(r5.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&e.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(e,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new lm.ClientOfflineError)}else return Promise.reject(new lm.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#C(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#C(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(h1.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(h1.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,Fg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#k(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#C(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#k(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#C()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new lm.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#C();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new lm.ClientClosedError;if(n)throw new lm.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new lm.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#C();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new lm.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#C(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#y(e,!1)),this._self.#C(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#C(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new lm.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};Ou=n5;ku.default=n5});var set=_(ed=>{"use strict";var net=ed&&ed.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Dse;Object.defineProperty(ed,"__esModule",{value:!0});ed.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Ehr=zl(),vhr=net(p1()),jo=J2(),Pse=net(hse()),ret=d1(),go=K2();ed.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var s5=class{static#e=16384;#t;#r;#n;slots=new Array(Dse.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof ret.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new ret.BasicPooledClientSideCache(e.clientSideCache)),this.#r=vhr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;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 Ehr.RootNodesUnavailableError}#i(){this.slots=new Array(Dse.#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(jo.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(jo.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#S({[jo.PUBSUB_TYPE.CHANNELS]:a,[jo.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async e=>{if((0,go.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,go.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,go.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,go.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,go.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,go.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let y;if(h){let x=[...new Set(this.slots)].map(S=>`${S.master.host}:${S.master.port}`);(0,go.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${x.join(", ")}`);let A=this.slots.find(S=>S.master.host===d&&S.master.port===f);if(!A)throw(0,go.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");y=A,h.client?._pause(),h.pubSub?.client._pause()}else{let x=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,x),await Promise.all([...x,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),y={master:h}}a=h;let g=new Set;for(let x of p)if(typeof x=="number")this.slots[x]=y,g.add(x),i.add(x);else for(let A=x[0];A<=x[1];A++)this.slots[A]=y,g.add(A),i.add(A);(0,go.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,go.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,go.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n(ed.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,go.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(ed.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(jo.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(jo.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#S({[jo.PUBSUB_TYPE.CHANNELS]:f,[jo.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,go.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#h(e){let r=this.#d(e);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#A(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(go.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(ed.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#A(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#A(e)}#g;async rediscover(e){return this.#g??=this.#_(e).finally(()=>{this.#g=void 0}),this.#g}async#_(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#y(e=>e.quit())}disconnect(){return this.#y(e=>e.disconnect())}close(){return this.#y(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#v())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#v(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#y(e){this.#a=!1;let r=[];for(let n of this.#v())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Pse.default)(e);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e<this.masters.length){do yield this.masters[e];while(++e<this.masters.length);for(let r of this.replicas)yield r}else{e-=this.masters.length;do yield this.replicas[e];while(++e<this.replicas.length)}for(;;){for(let r of this.masters)yield r;for(let r of this.replicas)yield r}}_randomNodeIterator;getRandomNode(){return this._randomNodeIterator??=this.#I(),this._randomNodeIterator.next().value}*#E(e){let r=Math.floor(Math.random()*(1+e.replicas.length));if(r<e.replicas.length)do yield e.replicas[r];while(++r<e.replicas.length);for(;;){yield e.master;for(let n of e.replicas)yield n}}getSlotRandomNode(e){let r=this.slots[e];return r.replicas?.length?(r.nodesIterator??=this.#E(r),r.nodesIterator.next().value):r.master}getMasterByAddress(e){let r=this.nodeByAddress.get(e);if(r)return this.nodeClient(r)}getPubSubClient(){return this.pubSubNode?this.pubSubNode.connectPromise??Promise.resolve(this.pubSubNode.client):this.#S()}async#S(e){let r=Math.floor(Math.random()*(this.masters.length+this.replicas.length)),n=r<this.masters.length?this.masters[r]:this.replicas[r-this.masters.length],s=this.#m(n,!1);return this.pubSubNode={address:n.address,client:s,connectPromise:s.connect().then(async i=>(e&&await Promise.all([i.extendPubSubListeners(jo.PUBSUB_TYPE.CHANNELS,e[jo.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(jo.PUBSUB_TYPE.PATTERNS,e[jo.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Pse.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(jo.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Pse.default)(e)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};Dse=s5;ed.default=s5});var iet=_(iT=>{"use strict";var Shr=iT&&iT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iT,"__esModule",{value:!0});var Ihr=Nu(),Chr=Shr(eT()),y1=Zl(),i5=Kl(),Bse=class t{static#e(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,y1.functionArgumentsPrefix)(e,r),i=(0,y1.getTransformReply)(r,n);return function(...a){let o=new i5.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(e,r){let n=(0,y1.getTransformReply)(e,r);return function(...s){let i=new i5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,y1.attachConfig)({BaseClass:t,commands:Ihr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Chr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};iT.default=Bse});var cet=_(Pu=>{"use strict";var Thr=Pu&&Pu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),whr=Pu&&Pu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Rhr=Pu&&Pu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Thr(e,t,r);return whr(e,t),e},oet=Pu&&Pu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Pu,"__esModule",{value:!0});var Nhr=Nu(),Ohr=require("node:events"),qg=Zl(),aet=Rhr(set()),khr=oet(iet()),Phr=zl(),a5=Kl(),Dhr=ZJ(),Bhr=oet(ZL()),Lse=class t extends Ohr.EventEmitter{static#e(e,r){let n=(0,qg.getTransformReply)(e,r);return async function(...s){let i=new a5.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,qg.getTransformReply)(e,r);return async function(...s){let i=new a5.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,qg.functionArgumentsPrefix)(e,r),i=(0,qg.getTransformReply)(r,n);return async function(...a){let o=new a5.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(e,r){let n=(0,qg.scriptArgumentsPrefix)(e),s=(0,qg.getTransformReply)(e,r);return async function(...i){let a=new a5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Bhr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,qg.attachConfig)({BaseClass:t,commands:Nhr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=khr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(e){super(),this._options=e,this._slots=new aet.default(e,this.emit.bind(this)),this.on(aet.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([Dhr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof Phr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Pu.default=Lse});var det=_(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.getMappedNode=ci.createScriptCommand=ci.createModuleCommand=ci.createFunctionCommand=ci.createCommand=ci.clientSocketToNode=ci.createNodeList=ci.parseNode=void 0;var o5=Kl(),A1=Zl();function uet(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}ci.parseNode=uet;function Lhr(t){var e=[];for(let r of t){let n=uet(r);n!==void 0&&e.push(n)}return e}ci.createNodeList=Lhr;function Mhr(t){let e=t;return{host:e.host,port:e.port}}ci.clientSocketToNode=Mhr;function Whr(t,e){let r=(0,A1.getTransformReply)(t,e);return async function(...n){let s=new o5.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}ci.createCommand=Whr;function $hr(t,e,r){let n=(0,A1.functionArgumentsPrefix)(t,e),s=(0,A1.getTransformReply)(e,r);return async function(...i){let a=new o5.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}ci.createFunctionCommand=$hr;function Uhr(t,e){let r=(0,A1.getTransformReply)(t,e);return async function(...n){let s=new o5.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}ci.createModuleCommand=Uhr;function Fhr(t,e){let r=(0,A1.scriptArgumentsPrefix)(t),n=(0,A1.getTransformReply)(t,e);return async function(...s){let i=new o5.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}ci.createScriptCommand=Fhr;function qhr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}ci.getMappedNode=qhr});var pet=_(aT=>{"use strict";var jhr=aT&&aT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(aT,"__esModule",{value:!0});var Qhr=Nu(),fet=jhr(eT()),x1=Zl(),c5=Kl(),Mse=class t{static _createCommand(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,x1.functionArgumentsPrefix)(e,r),i=(0,x1.getTransformReply)(r,n);return function(...a){let o=new c5.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(e,r){let n=(0,x1.getTransformReply)(e,r);return function(...s){let i=new c5.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,x1.attachConfig)({BaseClass:t,commands:Qhr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new fet.default;#t;#r=!0;constructor(e,r){this.#e=new fet.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};aT.default=Mse});var get=_(b1=>{"use strict";var het=b1&&b1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(b1,"__esModule",{value:!0});b1.PubSubProxy=void 0;var Hhr=het(require("node:events")),dm=J2(),met=het(p1()),Wse=class extends Hhr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new met.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(dm.PUBSUB_TYPE.CHANNELS,this.#a[dm.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(dm.PUBSUB_TYPE.PATTERNS,this.#a[dm.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[dm.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(dm.PUBSUB_TYPE.CHANNELS),[dm.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(dm.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof met.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};b1.PubSubProxy=Wse});var yet=_($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});var Ghr=we();$se.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:Ghr.transformTuplesReply,3:void 0}}});var Aet=_(Use=>{"use strict";Object.defineProperty(Use,"__esModule",{value:!0});Use.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var xet=_(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});var zhr=we();Fse.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,zhr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var bet=_(qse=>{"use strict";Object.defineProperty(qse,"__esModule",{value:!0});var Khr=we();qse.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,Khr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var _et=_(jse=>{"use strict";Object.defineProperty(jse,"__esModule",{value:!0});jse.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var wet=_(oT=>{"use strict";var cT=oT&&oT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oT,"__esModule",{value:!0});var Eet=cT(yet()),vet=cT(Aet()),Iet=cT(xet()),Cet=cT(bet()),Tet=cT(_et());oT.default={SENTINEL_SENTINELS:Cet.default,sentinelSentinels:Cet.default,SENTINEL_MASTER:Eet.default,sentinelMaster:Eet.default,SENTINEL_REPLICAS:Iet.default,sentinelReplicas:Iet.default,SENTINEL_MONITOR:vet.default,sentinelMonitor:vet.default,SENTINEL_SET:Tet.default,sentinelSet:Tet.default}});var Ret=_(uT=>{"use strict";var Vhr=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var Yhr=Vhr(wet());uT.default={sentinel:Yhr.default}});var Oet=_(u5=>{"use strict";Object.defineProperty(u5,"__esModule",{value:!0});u5.WaitQueue=void 0;var Net=QL(),Qse=class{#e=new Net.SinglyLinkedList;#t=new Net.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};u5.WaitQueue=Qse});var Let=_(Qf=>{"use strict";var Kse=Qf&&Qf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qf,"__esModule",{value:!0});Qf.RedisSentinelFactory=Qf.RedisSentinelClient=void 0;var Vse=require("node:events"),_1=Kse(p1()),Pet=Zl(),Det=Nu(),Fn=det(),Bet=Kse(pet()),Jhr=get(),Xhr=require("node:timers/promises"),l5=Kse(Ret()),Zhr=Oet(),ket=d1(),lT=class t{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,Pet.attachConfig)({BaseClass:t,commands:Det.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Bet.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Qf.RedisSentinelClient=lT;var Hse=class t extends Vse.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new Gse(e),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(e){let r=(0,Pet.attachConfig)({BaseClass:t,commands:Det.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Bet.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(e){let r=await this._self.#e.getClientLease();try{return await e(lT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return lT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Qf.default=Hse;var Gse=class extends Vse.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#A;#g=[];#_=0;#v;get useReplicas(){return this.#v>0}#y;#I;#E;#S;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#k(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#k(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#I=e.maxCommandRediscovers??16,this.#A=e.masterPoolSize??1,this.#v=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof ket.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new ket.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=l5.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new Zhr.WaitQueue;for(let r=0;r<this.#A;r++)this.#m.push(r);this.#E=new Jhr.PubSubProxy(this.#n,r=>this.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return _1.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#y=this.#C(),await this.#y,this.#t=!0}finally{this.#y=void 0,this.#s>0&&(this.#S=setInterval(this.#O.bind(this),this.#s))}}async#C(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&e>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,Xhr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#y!==void 0&&await this.#y;let s=this.#R(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await e(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#_>=this.#g.length&&(this.#_=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#_++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#y!==void 0)return this.#l=!0,await this.#y;try{return this.#y=this.#C(),await this.#y}finally{this.#u("finished reconfgure"),this.#y=void 0}}}#P(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#E.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#E.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#E.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#E.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#E.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#E.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#v,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#P(a)}).on("end",()=>this.#P(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(e.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u<this.#A;u++){let l=e.masterToOpen,d=this.#T(e.masterToOpen,this.#n);d.on("error",f=>{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#E.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,e.replicasToOpen.size!=0)for(let[a,o]of e.replicasToOpen){for(let u=0;u<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=()=>{}}},zse=class extends Vse.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:l5.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:l5.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return _1.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=_1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:l5.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return _1.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Qf.RedisSentinelFactory=zse});var fT=_(Kt=>{"use strict";var egr=Kt&&Kt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tgr=Kt&&Kt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&egr(e,t,r)},Yse=Kt&&Kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.BasicPooledClientSideCache=Kt.BasicClientSideCache=Kt.REDIS_FLUSH_MODES=Kt.COMMAND_LIST_FILTER_BY=Kt.CLUSTER_SLOT_STATES=Kt.FAILOVER_MODES=Kt.CLIENT_KILL_FILTERS=Kt.GEO_REPLY_WITH=Kt.createSentinel=Kt.createCluster=Kt.createClientPool=Kt.createClient=Kt.digest=Kt.defineScript=Kt.VerbatimString=Kt.RESP_TYPES=void 0;var rgr=OL();Object.defineProperty(Kt,"RESP_TYPES",{enumerable:!0,get:function(){return rgr.RESP_TYPES}});var ngr=gJ();Object.defineProperty(Kt,"VerbatimString",{enumerable:!0,get:function(){return ngr.VerbatimString}});var sgr=cFe();Object.defineProperty(Kt,"defineScript",{enumerable:!0,get:function(){return sgr.defineScript}});var igr=uFe();Object.defineProperty(Kt,"digest",{enumerable:!0,get:function(){return igr.digest}});tgr(zl(),Kt);var agr=Yse(p1());Kt.createClient=agr.default.create;var ogr=kse();Kt.createClientPool=ogr.RedisClientPool.create;var cgr=Yse(cet());Kt.createCluster=cgr.default.create;var ugr=Yse(Let());Kt.createSentinel=ugr.default.create;var lgr=s2();Object.defineProperty(Kt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return lgr.GEO_REPLY_WITH}});var dT=Nu();Object.defineProperty(Kt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return dT.CLIENT_KILL_FILTERS}});Object.defineProperty(Kt,"FAILOVER_MODES",{enumerable:!0,get:function(){return dT.FAILOVER_MODES}});Object.defineProperty(Kt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return dT.CLUSTER_SLOT_STATES}});Object.defineProperty(Kt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return dT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Kt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return dT.REDIS_FLUSH_MODES}});var Met=d1();Object.defineProperty(Kt,"BasicClientSideCache",{enumerable:!0,get:function(){return Met.BasicClientSideCache}});Object.defineProperty(Kt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return Met.BasicPooledClientSideCache}})});var Wet=_(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var dgr=we();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:dgr.transformBooleanReply}});var $et=_(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});Xse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var Uet=_(Zse=>{"use strict";Object.defineProperty(Zse,"__esModule",{value:!0});var fgr=we();Zse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:fgr.transformBooleanReply}});var eie=_(d5=>{"use strict";Object.defineProperty(d5,"__esModule",{value:!0});d5.transformInfoV2Reply=void 0;var pgr=fT();function mgr(t,e){switch(e?e[pgr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s<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}}}d5.transformInfoV2Reply=mgr});var Fet=_(tie=>{"use strict";Object.defineProperty(tie,"__esModule",{value:!0});var hgr=eie();tie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,hgr.transformInfoV2Reply)(t,r),3:void 0}}});var qet=_(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});var ggr=we();rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:ggr.transformBooleanArrayReply}});var jet=_(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Qet=_(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});var ygr=we();sie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:ygr.transformBooleanArrayReply}});var Het=_(iie=>{"use strict";Object.defineProperty(iie,"__esModule",{value:!0});var Agr=we();iie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Agr.transformBooleanArrayReply}});var Get=_(aie=>{"use strict";Object.defineProperty(aie,"__esModule",{value:!0});aie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var zet=_(oie=>{"use strict";Object.defineProperty(oie,"__esModule",{value:!0});oie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var E1=_(td=>{"use strict";var xgr=td&&td.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bgr=td&&td.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&xgr(e,t,r)},rd=td&&td.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(td,"__esModule",{value:!0});var Ket=rd(Wet()),Vet=rd($et()),Yet=rd(Uet()),Jet=rd(Fet()),Xet=rd(qet()),Zet=rd(jet()),ett=rd(Qet()),ttt=rd(Het()),rtt=rd(Get()),ntt=rd(zet());bgr(eie(),td);td.default={ADD:Ket.default,add:Ket.default,CARD:Vet.default,card:Vet.default,EXISTS:Yet.default,exists:Yet.default,INFO:Jet.default,info:Jet.default,INSERT:Xet.default,insert:Xet.default,LOADCHUNK:Zet.default,loadChunk:Zet.default,MADD:ett.default,mAdd:ett.default,MEXISTS:ttt.default,mExists:ttt.default,RESERVE:rtt.default,reserve:rtt.default,SCANDUMP:ntt.default,scanDump:ntt.default}});var itt=_(cie=>{"use strict";Object.defineProperty(cie,"__esModule",{value:!0});cie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)stt(t,n);else stt(t,r)},transformReply:void 0};function stt(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var att=_(uie=>{"use strict";Object.defineProperty(uie,"__esModule",{value:!0});var _gr=E1();uie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,_gr.transformInfoV2Reply)(t,r),3:void 0}}});var ott=_(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});lie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var ctt=_(die=>{"use strict";Object.defineProperty(die,"__esModule",{value:!0});die.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var utt=_(fie=>{"use strict";Object.defineProperty(fie,"__esModule",{value:!0});fie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Egr(r))t.pushVariadic(r);else{for(let n=0;n<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 Egr(t){return typeof t[0]=="string"||t[0]instanceof Buffer}});var ltt=_(pie=>{"use strict";Object.defineProperty(pie,"__esModule",{value:!0});pie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var ytt=_(pT=>{"use strict";var v1=pT&&pT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pT,"__esModule",{value:!0});var dtt=v1(itt()),ftt=v1(att()),ptt=v1(ott()),mtt=v1(ctt()),htt=v1(utt()),gtt=v1(ltt());pT.default={INCRBY:dtt.default,incrBy:dtt.default,INFO:ftt.default,info:ftt.default,INITBYDIM:ptt.default,initByDim:ptt.default,INITBYPROB:mtt.default,initByProb:mtt.default,MERGE:htt.default,merge:htt.default,QUERY:gtt.default,query:gtt.default}});var Att=_(mie=>{"use strict";Object.defineProperty(mie,"__esModule",{value:!0});var vgr=we();mie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:vgr.transformBooleanReply}});var xtt=_(hie=>{"use strict";Object.defineProperty(hie,"__esModule",{value:!0});var Sgr=we();hie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:Sgr.transformBooleanReply}});var btt=_(gie=>{"use strict";Object.defineProperty(gie,"__esModule",{value:!0});gie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var _tt=_(yie=>{"use strict";Object.defineProperty(yie,"__esModule",{value:!0});var Igr=we();yie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:Igr.transformBooleanReply}});var Ett=_(Aie=>{"use strict";Object.defineProperty(Aie,"__esModule",{value:!0});var Cgr=we();Aie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Cgr.transformBooleanReply}});var vtt=_(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});var Tgr=E1();xie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Tgr.transformInfoV2Reply)(t,r),3:void 0}}});var bie=_(mT=>{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.parseCfInsertArguments=void 0;var wgr=we();function Stt(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}mT.parseCfInsertArguments=Stt;mT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),Stt(...t)},transformReply:wgr.transformBooleanArrayReply}});var Itt=_(Hf=>{"use strict";var Rgr=Hf&&Hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ngr=Hf&&Hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ogr=Hf&&Hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Rgr(e,t,r);return Ngr(e,t),e};Object.defineProperty(Hf,"__esModule",{value:!0});var _ie=Ogr(bie());Hf.default={IS_READ_ONLY:_ie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,_ie.parseCfInsertArguments)(...t)},transformReply:_ie.default.transformReply}});var Ctt=_(Eie=>{"use strict";Object.defineProperty(Eie,"__esModule",{value:!0});Eie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var Ttt=_(vie=>{"use strict";Object.defineProperty(vie,"__esModule",{value:!0});vie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var wtt=_(Sie=>{"use strict";Object.defineProperty(Sie,"__esModule",{value:!0});Sie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Utt=_(hT=>{"use strict";var Du=hT&&hT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hT,"__esModule",{value:!0});var Rtt=Du(Att()),Ntt=Du(xtt()),Ott=Du(btt()),ktt=Du(_tt()),Ptt=Du(Ett()),Dtt=Du(vtt()),Btt=Du(bie()),Ltt=Du(Itt()),Mtt=Du(Ctt()),Wtt=Du(Ttt()),$tt=Du(wtt());hT.default={ADD:Rtt.default,add:Rtt.default,ADDNX:Ntt.default,addNX:Ntt.default,COUNT:Ott.default,count:Ott.default,DEL:ktt.default,del:ktt.default,EXISTS:Ptt.default,exists:Ptt.default,INFO:Dtt.default,info:Dtt.default,INSERT:Btt.default,insert:Btt.default,INSERTNX:Ltt.default,insertNX:Ltt.default,LOADCHUNK:Mtt.default,loadChunk:Mtt.default,RESERVE:Wtt.default,reserve:Wtt.default,SCANDUMP:$tt.default,scanDump:$tt.default}});var Ftt=_(Iie=>{"use strict";Object.defineProperty(Iie,"__esModule",{value:!0});Iie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var Cie=_(gT=>{"use strict";Object.defineProperty(gT,"__esModule",{value:!0});gT.transformByRankArguments=void 0;var kgr=we();function qtt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}gT.transformByRankArguments=qtt;gT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),qtt(...t)},transformReply:kgr.transformDoubleArrayReply}});var jtt=_(Gf=>{"use strict";var Pgr=Gf&&Gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dgr=Gf&&Gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Bgr=Gf&&Gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Pgr(e,t,r);return Dgr(e,t),e};Object.defineProperty(Gf,"__esModule",{value:!0});var Tie=Bgr(Cie());Gf.default={IS_READ_ONLY:Tie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,Tie.transformByRankArguments)(...t)},transformReply:Tie.default.transformReply}});var Qtt=_(wie=>{"use strict";Object.defineProperty(wie,"__esModule",{value:!0});var Lgr=we();wie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Lgr.transformDoubleArrayReply}});var Htt=_(Rie=>{"use strict";Object.defineProperty(Rie,"__esModule",{value:!0});Rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var Gtt=_(Nie=>{"use strict";Object.defineProperty(Nie,"__esModule",{value:!0});var Mgr=E1();Nie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Mgr.transformInfoV2Reply)(t,r),3:void 0}}});var ztt=_(Oie=>{"use strict";Object.defineProperty(Oie,"__esModule",{value:!0});var Wgr=we();Oie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Wgr.transformDoubleReply}});var Ktt=_(kie=>{"use strict";Object.defineProperty(kie,"__esModule",{value:!0});kie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var Vtt=_(Pie=>{"use strict";Object.defineProperty(Pie,"__esModule",{value:!0});var $gr=we();Pie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:$gr.transformDoubleReply}});var Ytt=_(Die=>{"use strict";Object.defineProperty(Die,"__esModule",{value:!0});var Ugr=we();Die.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Ugr.transformDoubleArrayReply}});var Bie=_(yT=>{"use strict";Object.defineProperty(yT,"__esModule",{value:!0});yT.transformRankArguments=void 0;function Jtt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}yT.transformRankArguments=Jtt;yT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),Jtt(...t)},transformReply:void 0}});var Xtt=_(Lie=>{"use strict";Object.defineProperty(Lie,"__esModule",{value:!0});Lie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var Ztt=_(zf=>{"use strict";var Fgr=zf&&zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qgr=zf&&zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jgr=zf&&zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fgr(e,t,r);return qgr(e,t),e};Object.defineProperty(zf,"__esModule",{value:!0});var Mie=jgr(Bie());zf.default={IS_READ_ONLY:Mie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,Mie.transformRankArguments)(...t)},transformReply:Mie.default.transformReply}});var ert=_(Wie=>{"use strict";Object.defineProperty(Wie,"__esModule",{value:!0});var Qgr=we();Wie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:Qgr.transformDoubleReply}});var hrt=_(AT=>{"use strict";var yo=AT&&AT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(AT,"__esModule",{value:!0});var trt=yo(Ftt()),rrt=yo(Cie()),nrt=yo(jtt()),srt=yo(Qtt()),irt=yo(Htt()),art=yo(Gtt()),ort=yo(ztt()),crt=yo(Ktt()),urt=yo(Vtt()),lrt=yo(Ytt()),drt=yo(Bie()),frt=yo(Xtt()),prt=yo(Ztt()),mrt=yo(ert());AT.default={ADD:trt.default,add:trt.default,BYRANK:rrt.default,byRank:rrt.default,BYREVRANK:nrt.default,byRevRank:nrt.default,CDF:srt.default,cdf:srt.default,CREATE:irt.default,create:irt.default,INFO:art.default,info:art.default,MAX:ort.default,max:ort.default,MERGE:crt.default,merge:crt.default,MIN:urt.default,min:urt.default,QUANTILE:lrt.default,quantile:lrt.default,RANK:drt.default,rank:drt.default,RESET:frt.default,reset:frt.default,REVRANK:prt.default,revRank:prt.default,TRIMMED_MEAN:mrt.default,trimmedMean:mrt.default}});var grt=_($ie=>{"use strict";Object.defineProperty($ie,"__esModule",{value:!0});$ie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var yrt=_(Uie=>{"use strict";Object.defineProperty(Uie,"__esModule",{value:!0});Uie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var xrt=_(Fie=>{"use strict";Object.defineProperty(Fie,"__esModule",{value:!0});function Art(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Fie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)Art(t,n);else Art(t,r)},transformReply:void 0}});var brt=_(qie=>{"use strict";Object.defineProperty(qie,"__esModule",{value:!0});var Hgr=we(),Ggr=E1();qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=Hgr.transformDoubleReply[2](t[7],e,r),(0,Ggr.transformInfoV2Reply)(t,r)),3:void 0}}});var _rt=_(jie=>{"use strict";Object.defineProperty(jie,"__esModule",{value:!0});jie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r<t.length;r++)e.push({item:t[r],count:t[++r]});return e}}});var Ert=_(Qie=>{"use strict";Object.defineProperty(Qie,"__esModule",{value:!0});Qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var vrt=_(Hie=>{"use strict";Object.defineProperty(Hie,"__esModule",{value:!0});var zgr=we();Hie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:zgr.transformBooleanArrayReply}});var Srt=_(Gie=>{"use strict";Object.defineProperty(Gie,"__esModule",{value:!0});Gie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var Prt=_(xT=>{"use strict";var fm=xT&&xT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xT,"__esModule",{value:!0});var Irt=fm(grt()),Crt=fm(yrt()),Trt=fm(xrt()),wrt=fm(brt()),Rrt=fm(_rt()),Nrt=fm(Ert()),Ort=fm(vrt()),krt=fm(Srt());xT.default={ADD:Irt.default,add:Irt.default,COUNT:Crt.default,count:Crt.default,INCRBY:Trt.default,incrBy:Trt.default,INFO:wrt.default,info:wrt.default,LIST_WITHCOUNT:Rrt.default,listWithCount:Rrt.default,LIST:Nrt.default,list:Nrt.default,QUERY:Ort.default,query:Ort.default,RESERVE:krt.default,reserve:krt.default}});var Drt=_(bT=>{"use strict";var _T=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Kgr=_T(E1()),Vgr=_T(ytt()),Ygr=_T(Utt()),Jgr=_T(hrt()),Xgr=_T(Prt());bT.default={bf:Kgr.default,cms:Vgr.default,cf:Ygr.default,tDigest:Jgr.default,topK:Xgr.default}});var zie=_(S1=>{"use strict";var Zgr=S1&&S1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(S1,"__esModule",{value:!0});S1.default=void 0;var eyr=Drt();Object.defineProperty(S1,"default",{enumerable:!0,get:function(){return Zgr(eyr).default}})});var Lrt=_(Kie=>{"use strict";Object.defineProperty(Kie,"__esModule",{value:!0});var Brt=we();Kie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,Brt.transformRedisJsonArgument)(n));for(let i=0;i<s.length;i++)t.push((0,Brt.transformRedisJsonArgument)(s[i]))},transformReply:void 0}});var Mrt=_(Vie=>{"use strict";Object.defineProperty(Vie,"__esModule",{value:!0});var tyr=we();Vie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,tyr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var $rt=_(Yie=>{"use strict";Object.defineProperty(Yie,"__esModule",{value:!0});var Wrt=we();Yie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,Wrt.transformRedisJsonArgument)(s));for(let a=0;a<i.length;a++)t.push((0,Wrt.transformRedisJsonArgument)(i[a]))},transformReply:void 0}});var Urt=_(Jie=>{"use strict";Object.defineProperty(Jie,"__esModule",{value:!0});Jie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Frt=_(Zie=>{"use strict";Object.defineProperty(Zie,"__esModule",{value:!0});var Xie=we();Zie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Xie.isArrayReply)(t)?t.map(e=>(0,Xie.transformRedisJsonNullReply)(e)):(0,Xie.transformRedisJsonNullReply)(t)}}});var qrt=_(eae=>{"use strict";Object.defineProperty(eae,"__esModule",{value:!0});eae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var jrt=_(tae=>{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});tae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Qrt=_(rae=>{"use strict";Object.defineProperty(rae,"__esModule",{value:!0});rae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Hrt=_(nae=>{"use strict";Object.defineProperty(nae,"__esModule",{value:!0});nae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Grt=_(sae=>{"use strict";Object.defineProperty(sae,"__esModule",{value:!0});sae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var zrt=_(iae=>{"use strict";Object.defineProperty(iae,"__esModule",{value:!0});var ryr=we();iae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:ryr.transformRedisJsonNullReply}});var Krt=_(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var nyr=we();aae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,nyr.transformRedisJsonArgument)(n))},transformReply:void 0}});var Vrt=_(oae=>{"use strict";Object.defineProperty(oae,"__esModule",{value:!0});var syr=we();oae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,syr.transformRedisJsonNullReply)(e))}}});var Yrt=_(cae=>{"use strict";Object.defineProperty(cae,"__esModule",{value:!0});var iyr=we();cae.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r<e.length;r++)t.pushKey(e[r].key),t.push(e[r].path,(0,iyr.transformRedisJsonArgument)(e[r].value))},transformReply:void 0}});var lae=_(uae=>{"use strict";Object.defineProperty(uae,"__esModule",{value:!0});uae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var Jrt=_(ET=>{"use strict";var ayr=ET&&ET.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ET,"__esModule",{value:!0});var oyr=ayr(lae());ET.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:oyr.default.transformReply}});var Xrt=_(dae=>{"use strict";Object.defineProperty(dae,"__esModule",{value:!0});dae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var Zrt=_(fae=>{"use strict";Object.defineProperty(fae,"__esModule",{value:!0});fae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var ent=_(pae=>{"use strict";Object.defineProperty(pae,"__esModule",{value:!0});var cyr=we();pae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,cyr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var tnt=_(mae=>{"use strict";Object.defineProperty(mae,"__esModule",{value:!0});var uyr=we();mae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,uyr.transformRedisJsonArgument)(r))},transformReply:void 0}});var rnt=_(hae=>{"use strict";Object.defineProperty(hae,"__esModule",{value:!0});hae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var nnt=_(gae=>{"use strict";Object.defineProperty(gae,"__esModule",{value:!0});gae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var snt=_(yae=>{"use strict";Object.defineProperty(yae,"__esModule",{value:!0});yae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var wnt=_(Bu=>{"use strict";var zn=Bu&&Bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bu,"__esModule",{value:!0});Bu.transformRedisJsonNullReply=Bu.transformRedisJsonReply=Bu.transformRedisJsonArgument=void 0;var int=zn(Lrt()),ant=zn(Mrt()),ont=zn($rt()),cnt=zn(Urt()),unt=zn(Frt()),lnt=zn(qrt()),dnt=zn(jrt()),fnt=zn(Qrt()),pnt=zn(Hrt()),mnt=zn(Grt()),hnt=zn(zrt()),gnt=zn(Krt()),ynt=zn(Vrt()),Ant=zn(Yrt()),xnt=zn(lae()),bnt=zn(Jrt()),_nt=zn(Xrt()),Ent=zn(Zrt()),vnt=zn(ent()),Snt=zn(tnt()),Int=zn(rnt()),Cnt=zn(nnt()),Tnt=zn(snt()),Aae=we();Object.defineProperty(Bu,"transformRedisJsonArgument",{enumerable:!0,get:function(){return Aae.transformRedisJsonArgument}});Object.defineProperty(Bu,"transformRedisJsonReply",{enumerable:!0,get:function(){return Aae.transformRedisJsonReply}});Object.defineProperty(Bu,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return Aae.transformRedisJsonNullReply}});Bu.default={ARRAPPEND:int.default,arrAppend:int.default,ARRINDEX:ant.default,arrIndex:ant.default,ARRINSERT:ont.default,arrInsert:ont.default,ARRLEN:cnt.default,arrLen:cnt.default,ARRPOP:unt.default,arrPop:unt.default,ARRTRIM:lnt.default,arrTrim:lnt.default,CLEAR:dnt.default,clear:dnt.default,DEBUG_MEMORY:fnt.default,debugMemory:fnt.default,DEL:pnt.default,del:pnt.default,FORGET:mnt.default,forget:mnt.default,GET:hnt.default,get:hnt.default,MERGE:gnt.default,merge:gnt.default,MGET:ynt.default,mGet:ynt.default,MSET:Ant.default,mSet:Ant.default,NUMINCRBY:xnt.default,numIncrBy:xnt.default,NUMMULTBY:bnt.default,numMultBy:bnt.default,OBJKEYS:_nt.default,objKeys:_nt.default,OBJLEN:Ent.default,objLen:Ent.default,SET:vnt.default,set:vnt.default,STRAPPEND:Snt.default,strAppend:Snt.default,STRLEN:Int.default,strLen:Int.default,TOGGLE:Cnt.default,toggle:Cnt.default,TYPE:Tnt.default,type:Tnt.default}});var xae=_(I1=>{"use strict";var lyr=I1&&I1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(I1,"__esModule",{value:!0});I1.default=void 0;var dyr=wnt();Object.defineProperty(I1,"default",{enumerable:!0,get:function(){return lyr(dyr).default}})});var Rnt=_(bae=>{"use strict";Object.defineProperty(bae,"__esModule",{value:!0});bae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var f5=_(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.REDISEARCH_LANGUAGE=Cn.parseSchema=Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Cn.VAMANA_COMPRESSION_ALGORITHM=Cn.SCHEMA_VECTOR_FIELD_ALGORITHM=Cn.SCHEMA_TEXT_FIELD_PHONETIC=Cn.SCHEMA_FIELD_TYPE=void 0;var Nnt=we();Cn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Cn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Cn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Cn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function _ae(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Ont(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case Cn.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.NUMERIC:case Cn.SCHEMA_FIELD_TYPE.GEO:_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),_ae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.VECTOR:t.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}t.pushVariadicWithLength(a);break;case Cn.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Cn.parseSchema=Ont;Cn.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Cn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,Nnt.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,Nnt.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Ont(t,r)},transformReply:void 0}});var knt=_(Eae=>{"use strict";Object.defineProperty(Eae,"__esModule",{value:!0});var fyr=f5();Eae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,fyr.parseSchema)(t,r)},transformReply:void 0}});var C1=_(p5=>{"use strict";Object.defineProperty(p5,"__esModule",{value:!0});p5.DEFAULT_DIALECT=void 0;p5.DEFAULT_DIALECT="2"});var Qg=_(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});jg.parseSearchOptions=jg.parseParamsArgument=void 0;var vT=we(),pyr=C1();function Pnt(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}jg.parseParamsArgument=Pnt;function Dnt(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,vT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,vT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,vT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,vT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,vT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Pnt(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",pyr.DEFAULT_DIALECT)}jg.parseSearchOptions=Dnt;jg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),Dnt(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n<t.length;)r.push({id:t[n++],value:e?Object.create(null):myr(t[n++])});return{total:t[0],documents:r}},3:void 0},unstableResp3:!0};function myr(t){let e=Object.create(null);if(!t)return e;let r=0;for(;r<t.length;){let n=t[r++],s=t[r++];if(n==="$")try{Object.assign(e,JSON.parse(s));continue}catch{}e[n]=s}return e}});var T1=_(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.parseGroupByReducer=an.parseAggregateOptions=an.FT_AGGREGATE_GROUP_BY_REDUCERS=an.FT_AGGREGATE_STEPS=void 0;var hyr=Qg(),gyr=we(),yyr=C1();an.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};an.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};an.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Mnt(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s<t.length;s++)n.push((0,gyr.transformTuplesReply)(t[s],e,r));return{total:Number(t[0]),results:n}},3:void 0},unstableResp3:!0};function Mnt(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)Bnt(r,n);else Bnt(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 an.FT_AGGREGATE_STEPS.GROUPBY:if(r.properties?t.pushVariadicWithLength(r.properties):t.push("0"),Array.isArray(r.REDUCE))for(let s of r.REDUCE)vae(t,s);else vae(t,r.REDUCE);break;case an.FT_AGGREGATE_STEPS.SORTBY:let n=[];if(Array.isArray(r.BY))for(let s of r.BY)Lnt(n,s);else Lnt(n,r.BY);r.MAX&&n.push("MAX",r.MAX.toString()),t.pushVariadicWithLength(n);break;case an.FT_AGGREGATE_STEPS.APPLY:t.push(r.expression,"AS",r.AS);break;case an.FT_AGGREGATE_STEPS.LIMIT:t.push(r.from.toString(),r.size.toString());break;case an.FT_AGGREGATE_STEPS.FILTER:t.push(r.expression);break}(0,hyr.parseParamsArgument)(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",yyr.DEFAULT_DIALECT)}an.parseAggregateOptions=Mnt;function Bnt(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.identifier),e.AS&&t.push("AS",e.AS))}function vae(t,e){switch(t.push("REDUCE",e.type),e.type){case an.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT:t.push("0");break;case an.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT_DISTINCT:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT_DISTINCTISH:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.SUM:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.MIN:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.MAX:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.AVG:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.STDDEV:case an.FT_AGGREGATE_GROUP_BY_REDUCERS.TOLIST:t.push("1",e.property);break;case an.FT_AGGREGATE_GROUP_BY_REDUCERS.QUANTILE:t.push("2",e.property,e.quantile.toString());break;case an.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 an.FT_AGGREGATE_GROUP_BY_REDUCERS.RANDOM_SAMPLE:t.push("2",e.property,e.sampleSize.toString());break}e.AS&&t.push("AS",e.AS)}an.parseGroupByReducer=vae;function Lnt(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.BY),e.DIRECTION&&t.push(e.DIRECTION))}});var Iae=_(ST=>{"use strict";var Ayr=ST&&ST.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ST,"__esModule",{value:!0});var Sae=Ayr(T1());ST.default={IS_READ_ONLY:Sae.default.IS_READ_ONLY,parseCommand(t,e,r,n){Sae.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...Sae.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Wnt=_(Cae=>{"use strict";Object.defineProperty(Cae,"__esModule",{value:!0});Cae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var $nt=_(Tae=>{"use strict";Object.defineProperty(Tae,"__esModule",{value:!0});Tae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Unt=_(wae=>{"use strict";Object.defineProperty(wae,"__esModule",{value:!0});wae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var Fnt=_(Rae=>{"use strict";Object.defineProperty(Rae,"__esModule",{value:!0});Rae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var qnt=_(Nae=>{"use strict";Object.defineProperty(Nae,"__esModule",{value:!0});Nae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var jnt=_(Oae=>{"use strict";Object.defineProperty(Oae,"__esModule",{value:!0});Oae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var Qnt=_(IT=>{"use strict";var xyr=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var byr=xyr(Iae());IT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:byr.default.transformReply,unstableResp3:!0}});var Hnt=_(kae=>{"use strict";Object.defineProperty(kae,"__esModule",{value:!0});kae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Gnt=_(Pae=>{"use strict";Object.defineProperty(Pae,"__esModule",{value:!0});Pae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var znt=_(Dae=>{"use strict";Object.defineProperty(Dae,"__esModule",{value:!0});Dae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var Knt=_(Bae=>{"use strict";Object.defineProperty(Bae,"__esModule",{value:!0});Bae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var Vnt=_(Lae=>{"use strict";Object.defineProperty(Lae,"__esModule",{value:!0});var _yr=Qg(),Eyr=C1();Lae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,_yr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Eyr.DEFAULT_DIALECT)},transformReply:void 0}});var Ynt=_(Mae=>{"use strict";Object.defineProperty(Mae,"__esModule",{value:!0});var vyr=C1();Mae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",vyr.DEFAULT_DIALECT)},transformReply:void 0}});var Znt=_(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.FT_HYBRID_COMBINE_METHOD=Lu.FT_HYBRID_VECTOR_METHOD=void 0;var Jnt=we(),Syr=Qg(),Iyr=T1();Lu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};Lu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Cyr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Tyr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===Lu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===Lu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function wyr(t,e){if(e){if(t.push("COMBINE"),e.method.type===Lu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===Lu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function Ryr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function Nyr(t,e){if(Cyr(t,e.SEARCH),Tyr(t,e.VSIM),e.COMBINE&&wyr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Jnt.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Jnt.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,Iyr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)Ryr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,Syr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}Lu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),Nyr(t,r)},transformReply:{2:t=>Oyr(t),3:void 0},unstableResp3:!0};function Oyr(t){let e=Xnt(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Xnt(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function Xnt(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r<t.length;r+=2){let n=t[r],s=t[r+1];typeof n=="string"&&(e[n]=s)}return e}});var est=_($ae=>{"use strict";Object.defineProperty($ae,"__esModule",{value:!0});var Wae=we();$ae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:kyr,3:void 0},unstableResp3:!0};function kyr(t,e,r){let n=(0,Wae.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;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]=Wae.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]=Wae.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 rst=_(Kf=>{"use strict";var Pyr=Kf&&Kf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dyr=Kf&&Kf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Byr=Kf&&Kf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Pyr(e,t,r);return Dyr(e,t),e};Object.defineProperty(Kf,"__esModule",{value:!0});var tst=Byr(Qg());Kf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,tst.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:tst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var sst=_(Vf=>{"use strict";var Lyr=Vf&&Vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Myr=Vf&&Vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Wyr=Vf&&Vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lyr(e,t,r);return Myr(e,t),e};Object.defineProperty(Vf,"__esModule",{value:!0});var nst=Wyr(T1());Vf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,nst.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:nst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var ist=_(CT=>{"use strict";var $yr=CT&&CT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CT,"__esModule",{value:!0});var Uae=$yr(Qg());CT.default={NOT_KEYED_COMMAND:Uae.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Uae.default.IS_READ_ONLY,parseCommand(...t){Uae.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var ost=_(Fae=>{"use strict";Object.defineProperty(Fae,"__esModule",{value:!0});var Uyr=C1();Fae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)ast(t,s);else ast(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Uyr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function ast(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var cst=_(qae=>{"use strict";Object.defineProperty(qae,"__esModule",{value:!0});qae.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ust=_(jae=>{"use strict";Object.defineProperty(jae,"__esModule",{value:!0});jae.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var TT=_(Qae=>{"use strict";Object.defineProperty(Qae,"__esModule",{value:!0});Qae.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var dst=_(wT=>{"use strict";var Fyr=wT&&wT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wT,"__esModule",{value:!0});var qyr=we(),lst=Fyr(TT());wT.default={IS_READ_ONLY:lst.default.IS_READ_ONLY,parseCommand(...t){lst.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,qyr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r<t.length;)e[n++]={suggestion:t[r++],payload:t[r++]};return e}}});var pst=_(RT=>{"use strict";var jyr=RT&&RT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RT,"__esModule",{value:!0});var Hae=we(),fst=jyr(TT());RT.default={IS_READ_ONLY:fst.default.IS_READ_ONLY,parseCommand(...t){fst.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,Hae.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:Hae.transformDoubleReply[2](t[s++],e,r),payload:t[s++]};return n},3:t=>{if((0,Hae.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 hst=_(NT=>{"use strict";var Qyr=NT&&NT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NT,"__esModule",{value:!0});var Gae=we(),mst=Qyr(TT());NT.default={IS_READ_ONLY:mst.default.IS_READ_ONLY,parseCommand(...t){mst.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,Gae.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:Gae.transformDoubleReply[2](t[s++],e,r)};return n},3:t=>{if((0,Gae.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 gst=_(zae=>{"use strict";Object.defineProperty(zae,"__esModule",{value:!0});zae.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var yst=_(Kae=>{"use strict";Object.defineProperty(Kae,"__esModule",{value:!0});Kae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r<t.length;){let n=t[r++].toString(),s=t[r++];e[n]=s}return e},3:void 0}}});var Ast=_(Vae=>{"use strict";Object.defineProperty(Vae,"__esModule",{value:!0});Vae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var xst=_(Yae=>{"use strict";Object.defineProperty(Yae,"__esModule",{value:!0});Yae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var tit=_(OT=>{"use strict";var Tr=OT&&OT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OT,"__esModule",{value:!0});var bst=Tr(Rnt()),_st=Tr(knt()),Est=Tr(Iae()),vst=Tr(T1()),Sst=Tr(Wnt()),Ist=Tr($nt()),Cst=Tr(Unt()),Tst=Tr(Fnt()),wst=Tr(qnt()),Rst=Tr(f5()),Nst=Tr(jnt()),Ost=Tr(Qnt()),kst=Tr(Hnt()),Pst=Tr(Gnt()),Dst=Tr(znt()),Bst=Tr(Knt()),Lst=Tr(Vnt()),Mst=Tr(Ynt()),Wst=Tr(Znt()),$st=Tr(est()),Ust=Tr(rst()),Fst=Tr(sst()),qst=Tr(ist()),jst=Tr(Qg()),Qst=Tr(ost()),Hst=Tr(cst()),Gst=Tr(ust()),zst=Tr(dst()),Kst=Tr(pst()),Vst=Tr(hst()),Yst=Tr(TT()),Jst=Tr(gst()),Xst=Tr(yst()),Zst=Tr(Ast()),eit=Tr(xst());OT.default={_LIST:bst.default,_list:bst.default,ALTER:_st.default,alter:_st.default,AGGREGATE_WITHCURSOR:Est.default,aggregateWithCursor:Est.default,AGGREGATE:vst.default,aggregate:vst.default,ALIASADD:Sst.default,aliasAdd:Sst.default,ALIASDEL:Ist.default,aliasDel:Ist.default,ALIASUPDATE:Cst.default,aliasUpdate:Cst.default,CONFIG_GET:Tst.default,configGet:Tst.default,CONFIG_SET:wst.default,configSet:wst.default,CREATE:Rst.default,create:Rst.default,CURSOR_DEL:Nst.default,cursorDel:Nst.default,CURSOR_READ:Ost.default,cursorRead:Ost.default,DICTADD:kst.default,dictAdd:kst.default,DICTDEL:Pst.default,dictDel:Pst.default,DICTDUMP:Dst.default,dictDump:Dst.default,DROPINDEX:Bst.default,dropIndex:Bst.default,EXPLAIN:Lst.default,explain:Lst.default,EXPLAINCLI:Mst.default,explainCli:Mst.default,HYBRID:Wst.default,hybrid:Wst.default,INFO:$st.default,info:$st.default,PROFILESEARCH:Ust.default,profileSearch:Ust.default,PROFILEAGGREGATE:Fst.default,profileAggregate:Fst.default,SEARCH_NOCONTENT:qst.default,searchNoContent:qst.default,SEARCH:jst.default,search:jst.default,SPELLCHECK:Qst.default,spellCheck:Qst.default,SUGADD:Hst.default,sugAdd:Hst.default,SUGDEL:Gst.default,sugDel:Gst.default,SUGGET_WITHPAYLOADS:zst.default,sugGetWithPayloads:zst.default,SUGGET_WITHSCORES_WITHPAYLOADS:Kst.default,sugGetWithScoresWithPayloads:Kst.default,SUGGET_WITHSCORES:Vst.default,sugGetWithScores:Vst.default,SUGGET:Yst.default,sugGet:Yst.default,SUGLEN:Jst.default,sugLen:Jst.default,SYNDUMP:Xst.default,synDump:Xst.default,SYNUPDATE:Zst.default,synUpdate:Zst.default,TAGVALS:eit.default,tagVals:eit.default}});var Jae=_(ui=>{"use strict";var Hyr=ui&&ui.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ui,"__esModule",{value:!0});ui.FT_AGGREGATE_STEPS=ui.FT_AGGREGATE_GROUP_BY_REDUCERS=ui.SCHEMA_VECTOR_FIELD_ALGORITHM=ui.SCHEMA_TEXT_FIELD_PHONETIC=ui.SCHEMA_FIELD_TYPE=ui.REDISEARCH_LANGUAGE=ui.default=void 0;var Gyr=tit();Object.defineProperty(ui,"default",{enumerable:!0,get:function(){return Hyr(Gyr).default}});var m5=f5();Object.defineProperty(ui,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return m5.REDISEARCH_LANGUAGE}});Object.defineProperty(ui,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return m5.SCHEMA_FIELD_TYPE}});Object.defineProperty(ui,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return m5.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(ui,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return m5.SCHEMA_VECTOR_FIELD_ALGORITHM}});var rit=T1();Object.defineProperty(ui,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return rit.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(ui,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return rit.FT_AGGREGATE_STEPS}})});var li=_(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.transformRESP2LabelsWithSources=_r.transformRESP2Labels=_r.parseSelectedLabelsArguments=_r.resp3MapToValue=_r.resp2MapToValue=_r.transformSamplesReply=_r.transformSampleReply=_r.parseLabelsArgument=_r.transformTimestampArgument=_r.parseDuplicatePolicy=_r.TIME_SERIES_DUPLICATE_POLICIES=_r.parseChunkSizeArgument=_r.parseEncodingArgument=_r.TIME_SERIES_ENCODING=_r.parseRetentionArgument=_r.parseIgnoreArgument=void 0;var Xae=fT();function zyr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}_r.parseIgnoreArgument=zyr;function Kyr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}_r.parseRetentionArgument=Kyr;_r.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function Vyr(t,e){e!==void 0&&t.push("ENCODING",e)}_r.parseEncodingArgument=Vyr;function Yyr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}_r.parseChunkSizeArgument=Yyr;_r.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function Jyr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}_r.parseDuplicatePolicy=Jyr;function Xyr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}_r.transformTimestampArgument=Xyr;function Zyr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}_r.parseLabelsArgument=Zyr;_r.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};_r.transformSamplesReply={2(t){return t.map(e=>_r.transformSampleReply[2](e))},3(t){return t.map(e=>_r.transformSampleReply[3](e))}};function eAr(t,e,r){let n=t;switch(r?.[Xae.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}_r.resp2MapToValue=eAr;function tAr(t,e){let r=t;if(r instanceof Array)for(let n=1;n<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}_r.resp3MapToValue=tAr;function rAr(t,e){t.push("SELECTED_LABELS"),t.pushVariadic(e)}_r.parseSelectedLabelsArguments=rAr;function nAr(t,e){let r=t;switch(e?.[Xae.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}}_r.transformRESP2Labels=nAr;function sAr(t,e){let r=t,n=r.length-2,s;switch(e?.[Xae.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=iAr(a[1]);return{labels:s,sources:o}}_r.transformRESP2LabelsWithSources=sAr;function iAr(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 nit=_(Zae=>{"use strict";Object.defineProperty(Zae,"__esModule",{value:!0});var w1=li();Zae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,w1.transformTimestampArgument)(r),n.toString()),(0,w1.parseRetentionArgument)(t,s?.RETENTION),(0,w1.parseEncodingArgument)(t,s?.ENCODING),(0,w1.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,w1.parseLabelsArgument)(t,s?.LABELS),(0,w1.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var sit=_(eoe=>{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});var kT=li();eoe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,kT.parseRetentionArgument)(t,r?.RETENTION),(0,kT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,kT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,kT.parseLabelsArgument)(t,r?.LABELS),(0,kT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var iit=_(toe=>{"use strict";Object.defineProperty(toe,"__esModule",{value:!0});var R1=li();toe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,R1.parseRetentionArgument)(t,r?.RETENTION),(0,R1.parseEncodingArgument)(t,r?.ENCODING),(0,R1.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,R1.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,R1.parseLabelsArgument)(t,r?.LABELS),(0,R1.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var roe=_(PT=>{"use strict";Object.defineProperty(PT,"__esModule",{value:!0});PT.TIME_SERIES_AGGREGATION_TYPE=void 0;PT.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};PT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var noe=_(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.parseIncrByArguments=void 0;var DT=li();function ait(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,DT.transformTimestampArgument)(n.TIMESTAMP)),(0,DT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,DT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,DT.parseLabelsArgument)(t,n?.LABELS),(0,DT.parseIgnoreArgument)(t,n?.IGNORE)}BT.parseIncrByArguments=ait;BT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),ait(...t)},transformReply:void 0}});var oit=_(Yf=>{"use strict";var aAr=Yf&&Yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),oAr=Yf&&Yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),cAr=Yf&&Yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&aAr(e,t,r);return oAr(e,t),e};Object.defineProperty(Yf,"__esModule",{value:!0});var soe=cAr(noe());Yf.default={IS_READ_ONLY:soe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,soe.parseIncrByArguments)(...t)},transformReply:soe.default.transformReply}});var uit=_(ioe=>{"use strict";Object.defineProperty(ioe,"__esModule",{value:!0});var cit=li();ioe.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,cit.transformTimestampArgument)(r),(0,cit.transformTimestampArgument)(n))},transformReply:void 0}});var lit=_(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});aoe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var dit=_(ooe=>{"use strict";Object.defineProperty(ooe,"__esModule",{value:!0});ooe.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var uoe=_(coe=>{"use strict";Object.defineProperty(coe,"__esModule",{value:!0});var uAr=we();coe.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s<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]=uAr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var fit=_(LT=>{"use strict";var lAr=LT&<.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LT,"__esModule",{value:!0});var loe=lAr(uoe());LT.default={IS_READ_ONLY:loe.default.IS_READ_ONLY,parseCommand(t,e){loe.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=loe.default.transformReply[2](t,e,r);for(let s=0;s<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 pit=_(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});var dAr=li();doe.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,dAr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var nd=_(Hg=>{"use strict";Object.defineProperty(Hg,"__esModule",{value:!0});Hg.parseFilterArgument=Hg.parseLatestArgument=void 0;var h5=li();function mit(t,e){e&&t.push("LATEST")}Hg.parseLatestArgument=mit;function hit(t,e){t.push("FILTER"),t.pushVariadic(e)}Hg.parseFilterArgument=hit;Hg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),mit(t,r?.LATEST),hit(t,e)},transformReply:{2(t,e,r){return(0,h5.resp2MapToValue)(t,([,,n])=>({sample:h5.transformSampleReply[2](n)}),r)},3(t){return(0,h5.resp3MapToValue)(t,([,e])=>({sample:h5.transformSampleReply[3](e)}))}}}});var foe=_(WT=>{"use strict";Object.defineProperty(WT,"__esModule",{value:!0});WT.createTransformMGetLabelsReply=void 0;var git=nd(),MT=li();function yit(){return{2(t,e,r){return(0,MT.resp2MapToValue)(t,([,n,s])=>({labels:(0,MT.transformRESP2Labels)(n),sample:MT.transformSampleReply[2](s)}),r)},3(t){return(0,MT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:MT.transformSampleReply[3](r)}))}}}WT.createTransformMGetLabelsReply=yit;WT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,git.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,git.parseFilterArgument)(t,e)},transformReply:yit()}});var xit=_(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});var Ait=nd(),fAr=li(),pAr=foe();poe.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,Ait.parseLatestArgument)(t,n?.LATEST),(0,fAr.parseSelectedLabelsArguments)(t,r),(0,Ait.parseFilterArgument)(t,e)},transformReply:(0,pAr.createTransformMGetLabelsReply)()}});var sd=_(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});Jf.transformRangeArguments=Jf.parseRangeArguments=Jf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Gg=li();Jf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function bit(t,e,r,n){if(t.push((0,Gg.transformTimestampArgument)(e),(0,Gg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Gg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Gg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Gg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}Jf.parseRangeArguments=bit;function _it(t,e,r,n,s){t.pushKey(e),bit(t,r,n,s)}Jf.transformRangeArguments=_it;Jf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),_it(...t)},transformReply:{2(t){return Gg.transformSamplesReply[2](t)},3(t){return Gg.transformSamplesReply[3](t)}}}});var N1=_(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.extractResp3MRangeSources=Mu.createTransformMRangeGroupByArguments=Mu.parseGroupByArguments=Mu.TIME_SERIES_REDUCERS=void 0;var g5=li(),mAr=sd(),hAr=nd();Mu.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function Eit(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Mu.parseGroupByArguments=Eit;function vit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,mAr.parseRangeArguments)(e,r,n,a),(0,hAr.parseFilterArgument)(e,s),Eit(e,i)}}Mu.createTransformMRangeGroupByArguments=vit;function Sit(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Mu.extractResp3MRangeSources=Sit;Mu.default={IS_READ_ONLY:!0,parseCommand:vit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,g5.resp2MapToValue)(t,([n,s,i])=>({samples:g5.transformSamplesReply[2](i)}),r)},3(t){return(0,g5.resp3MapToValue)(t,([e,r,n,s])=>({sources:Sit(n),samples:g5.transformSamplesReply[3](s)}))}}}});var y5=_($T=>{"use strict";Object.defineProperty($T,"__esModule",{value:!0});$T.createTransformMRangeSelectedLabelsArguments=void 0;var O1=li(),gAr=sd(),yAr=nd();function Iit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,gAr.parseRangeArguments)(e,r,n,a),(0,O1.parseSelectedLabelsArguments)(e,s),(0,yAr.parseFilterArgument)(e,i)}}$T.createTransformMRangeSelectedLabelsArguments=Iit;$T.default={IS_READ_ONLY:!0,parseCommand:Iit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,O1.resp2MapToValue)(t,([n,s,i])=>({labels:(0,O1.transformRESP2Labels)(s,r),samples:O1.transformSamplesReply[2](i)}),r)},3(t){return(0,O1.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:O1.transformSamplesReply[3](n)}))}}}});var hoe=_(zg=>{"use strict";var AAr=zg&&zg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zg,"__esModule",{value:!0});zg.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var moe=li(),xAr=sd(),Cit=N1(),bAr=nd(),_Ar=AAr(y5());function Tit(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,xAr.parseRangeArguments)(e,r,n,o),(0,moe.parseSelectedLabelsArguments)(e,s),(0,bAr.parseFilterArgument)(e,i),(0,Cit.parseGroupByArguments)(e,a)}}zg.createMRangeSelectedLabelsGroupByTransformArguments=Tit;zg.default={IS_READ_ONLY:!0,parseCommand:Tit("TS.MRANGE"),transformReply:{2:_Ar.default.transformReply[2],3(t){return(0,moe.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,Cit.extractResp3MRangeSources)(n),samples:moe.transformSamplesReply[3](s)}))}}}});var goe=_(FT=>{"use strict";Object.defineProperty(FT,"__esModule",{value:!0});FT.createMRangeWithLabelsGroupByTransformArguments=void 0;var UT=li(),EAr=sd(),wit=N1(),vAr=nd();function Rit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,EAr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,vAr.parseFilterArgument)(e,s),(0,wit.parseGroupByArguments)(e,i)}}FT.createMRangeWithLabelsGroupByTransformArguments=Rit;FT.default={IS_READ_ONLY:!0,parseCommand:Rit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,UT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,UT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:UT.transformSamplesReply[2](i)}},r)},3(t){return(0,UT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,wit.extractResp3MRangeSources)(n),samples:UT.transformSamplesReply[3](s)}))}}}});var yoe=_(qT=>{"use strict";Object.defineProperty(qT,"__esModule",{value:!0});qT.createTransformMRangeWithLabelsArguments=void 0;var A5=li(),SAr=sd(),IAr=nd();function Nit(t){return(e,r,n,s,i)=>{e.push(t),(0,SAr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,IAr.parseFilterArgument)(e,s)}}qT.createTransformMRangeWithLabelsArguments=Nit;qT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Nit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,A5.resp2MapToValue)(t,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:A5.transformSamplesReply[2](i)}},r)},3(t){return(0,A5.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:A5.transformSamplesReply[3](n)}))}}}});var Aoe=_(jT=>{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.createTransformMRangeArguments=void 0;var x5=li(),CAr=sd(),TAr=nd();function Oit(t){return(e,r,n,s,i)=>{e.push(t),(0,CAr.parseRangeArguments)(e,r,n,i),(0,TAr.parseFilterArgument)(e,s)}}jT.createTransformMRangeArguments=Oit;jT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Oit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,x5.resp2MapToValue)(t,([n,s,i])=>x5.transformSamplesReply[2](i),r)},3(t){return(0,x5.resp3MapToValue)(t,([e,r,n])=>x5.transformSamplesReply[3](n))}}}});var kit=_(Xf=>{"use strict";var wAr=Xf&&Xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),RAr=Xf&&Xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),NAr=Xf&&Xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wAr(e,t,r);return RAr(e,t),e};Object.defineProperty(Xf,"__esModule",{value:!0});var xoe=NAr(N1());Xf.default={IS_READ_ONLY:xoe.default.IS_READ_ONLY,parseCommand:(0,xoe.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:xoe.default.transformReply}});var Pit=_(Zf=>{"use strict";var OAr=Zf&&Zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kAr=Zf&&Zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),PAr=Zf&&Zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&OAr(e,t,r);return kAr(e,t),e};Object.defineProperty(Zf,"__esModule",{value:!0});var boe=PAr(hoe());Zf.default={IS_READ_ONLY:boe.default.IS_READ_ONLY,parseCommand:(0,boe.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:boe.default.transformReply}});var Dit=_(ep=>{"use strict";var DAr=ep&&ep.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),BAr=ep&&ep.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),LAr=ep&&ep.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&DAr(e,t,r);return BAr(e,t),e};Object.defineProperty(ep,"__esModule",{value:!0});var _oe=LAr(y5());ep.default={IS_READ_ONLY:_oe.default.IS_READ_ONLY,parseCommand:(0,_oe.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:_oe.default.transformReply}});var Bit=_(tp=>{"use strict";var MAr=tp&&tp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WAr=tp&&tp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$Ar=tp&&tp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&MAr(e,t,r);return WAr(e,t),e};Object.defineProperty(tp,"__esModule",{value:!0});var Eoe=$Ar(goe());tp.default={IS_READ_ONLY:Eoe.default.IS_READ_ONLY,parseCommand:(0,Eoe.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Eoe.default.transformReply}});var Lit=_(rp=>{"use strict";var UAr=rp&&rp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FAr=rp&&rp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qAr=rp&&rp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&UAr(e,t,r);return FAr(e,t),e};Object.defineProperty(rp,"__esModule",{value:!0});var b5=qAr(yoe());rp.default={NOT_KEYED_COMMAND:b5.default.NOT_KEYED_COMMAND,IS_READ_ONLY:b5.default.IS_READ_ONLY,parseCommand:(0,b5.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:b5.default.transformReply}});var Mit=_(np=>{"use strict";var jAr=np&&np.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QAr=np&&np.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),HAr=np&&np.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jAr(e,t,r);return QAr(e,t),e};Object.defineProperty(np,"__esModule",{value:!0});var _5=HAr(Aoe());np.default={NOT_KEYED_COMMAND:_5.default.NOT_KEYED_COMMAND,IS_READ_ONLY:_5.default.IS_READ_ONLY,parseCommand:(0,_5.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:_5.default.transformReply}});var Wit=_(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});voe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var $it=_(sp=>{"use strict";var GAr=sp&&sp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zAr=sp&&sp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),KAr=sp&&sp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&GAr(e,t,r);return zAr(e,t),e};Object.defineProperty(sp,"__esModule",{value:!0});var Soe=KAr(sd());sp.default={IS_READ_ONLY:Soe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,Soe.transformRangeArguments)(...t)},transformReply:Soe.default.transformReply}});var gat=_(id=>{"use strict";var VAr=id&&id.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YAr=id&&id.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&VAr(e,t,r)},Kr=id&&id.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(id,"__esModule",{value:!0});var Uit=Kr(nit()),Fit=Kr(sit()),qit=Kr(iit()),jit=Kr(roe()),Qit=Kr(oit()),Hit=Kr(uit()),Git=Kr(lit()),zit=Kr(dit()),Kit=Kr(noe()),Vit=Kr(fit()),Yit=Kr(uoe()),Jit=Kr(pit()),Xit=Kr(xit()),Zit=Kr(foe()),eat=Kr(nd()),tat=Kr(N1()),rat=Kr(hoe()),nat=Kr(y5()),sat=Kr(goe()),iat=Kr(yoe()),aat=Kr(Aoe()),oat=Kr(kit()),cat=Kr(Pit()),uat=Kr(Dit()),lat=Kr(Bit()),dat=Kr(Lit()),fat=Kr(Mit()),pat=Kr(Wit()),mat=Kr(sd()),hat=Kr($it());YAr(li(),id);id.default={ADD:Uit.default,add:Uit.default,ALTER:Fit.default,alter:Fit.default,CREATE:qit.default,create:qit.default,CREATERULE:jit.default,createRule:jit.default,DECRBY:Qit.default,decrBy:Qit.default,DEL:Hit.default,del:Hit.default,DELETERULE:Git.default,deleteRule:Git.default,GET:zit.default,get:zit.default,INCRBY:Kit.default,incrBy:Kit.default,INFO_DEBUG:Vit.default,infoDebug:Vit.default,INFO:Yit.default,info:Yit.default,MADD:Jit.default,mAdd:Jit.default,MGET_SELECTED_LABELS:Xit.default,mGetSelectedLabels:Xit.default,MGET_WITHLABELS:Zit.default,mGetWithLabels:Zit.default,MGET:eat.default,mGet:eat.default,MRANGE_GROUPBY:tat.default,mRangeGroupBy:tat.default,MRANGE_SELECTED_LABELS_GROUPBY:rat.default,mRangeSelectedLabelsGroupBy:rat.default,MRANGE_SELECTED_LABELS:nat.default,mRangeSelectedLabels:nat.default,MRANGE_WITHLABELS_GROUPBY:sat.default,mRangeWithLabelsGroupBy:sat.default,MRANGE_WITHLABELS:iat.default,mRangeWithLabels:iat.default,MRANGE:aat.default,mRange:aat.default,MREVRANGE_GROUPBY:oat.default,mRevRangeGroupBy:oat.default,MREVRANGE_SELECTED_LABELS_GROUPBY:cat.default,mRevRangeSelectedLabelsGroupBy:cat.default,MREVRANGE_SELECTED_LABELS:uat.default,mRevRangeSelectedLabels:uat.default,MREVRANGE_WITHLABELS_GROUPBY:lat.default,mRevRangeWithLabelsGroupBy:lat.default,MREVRANGE_WITHLABELS:dat.default,mRevRangeWithLabels:dat.default,MREVRANGE:fat.default,mRevRange:fat.default,QUERYINDEX:pat.default,queryIndex:pat.default,RANGE:mat.default,range:mat.default,REVRANGE:hat.default,revRange:hat.default}});var Coe=_(ra=>{"use strict";var JAr=ra&&ra.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ra,"__esModule",{value:!0});ra.TIME_SERIES_REDUCERS=ra.TIME_SERIES_BUCKET_TIMESTAMP=ra.TIME_SERIES_AGGREGATION_TYPE=ra.TIME_SERIES_DUPLICATE_POLICIES=ra.TIME_SERIES_ENCODING=ra.default=void 0;var Ioe=gat();Object.defineProperty(ra,"default",{enumerable:!0,get:function(){return JAr(Ioe).default}});Object.defineProperty(ra,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Ioe.TIME_SERIES_ENCODING}});Object.defineProperty(ra,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Ioe.TIME_SERIES_DUPLICATE_POLICIES}});var XAr=roe();Object.defineProperty(ra,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return XAr.TIME_SERIES_AGGREGATION_TYPE}});var ZAr=sd();Object.defineProperty(ra,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return ZAr.TIME_SERIES_BUCKET_TIMESTAMP}});var exr=N1();Object.defineProperty(ra,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return exr.TIME_SERIES_REDUCERS}})});var yat=_(As=>{"use strict";var txr=As&&As.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QT=As&&As.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&txr(e,t,r)},E5=As&&As.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(As,"__esModule",{value:!0});As.createSentinel=As.createCluster=As.createClientPool=As.createClient=void 0;var v5=fT(),rxr=E5(zie()),nxr=E5(xae()),sxr=E5(Jae()),ixr=E5(Coe());QT(fT(),As);QT(zie(),As);QT(xae(),As);QT(Jae(),As);QT(Coe(),As);var S5={...rxr.default,json:nxr.default,ft:sxr.default,ts:ixr.default};function axr(t){return(0,v5.createClient)({...t,modules:{...S5,...t?.modules}})}As.createClient=axr;function oxr(t,e){return(0,v5.createClientPool)({...t,modules:{...S5,...t?.modules}},e)}As.createClientPool=oxr;function cxr(t){return(0,v5.createCluster)({...t,modules:{...S5,...t?.modules}})}As.createCluster=cxr;function uxr(t){return(0,v5.createSentinel)({...t,modules:{...S5,...t?.modules}})}As.createSentinel=uxr});var T5={};os(T5,{closeLocalRedisConnection:()=>pxr,getLocalRedisCaches:()=>dxr,getLocalRedisKey:()=>Aat,judgeLocalRedisValid:()=>fxr,setLocalRedisKey:()=>I5,setLocalRedisKeyWithExpiry:()=>lxr,updateLocalRedisCaches:()=>C5});async function k1(){if(ns)return ns;let t=O.localRedisUrl;try{E("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Ce(yat(),1));return ns=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),ns.on("error",r=>{E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),ns.on("connect",()=>{E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await ns.connect(),O.localRedisValid=!0,E("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),ns}catch(e){return E("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function P1(){if(!ns)return!1;try{return await ns.ping()==="PONG"}catch(t){return E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function Aat(t){try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await ns.get(t)}catch(e){return E("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function I5(t,e){let r=zb(t,e),n=sn(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await ns.set(t,r);return O.lastHashes[t]=n,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return E("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function lxr(t,e,r){let n=zb(t,e),s=sn(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await ns.setEx(t,r,n);return O.lastHashes[t]=s,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return E("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function dxr(){if(!O.localCacheInitialized)try{if(E("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>Aat(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),E("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=sn(JSON.stringify(O.animes)),O.lastHashes.episodeIds=sn(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=sn(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=sn(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=sn(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=sn(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,E("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function C5(){try{if(E("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await P1()||await k1(),!ns)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=sn(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){E("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>I5(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){E("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function fxr(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await P1()||await k1(),ns&&await ns.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function pxr(){if(ns)try{await ns.quit(),ns=null,O.localRedisValid=!1,E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){E("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var ns,HT=gr(()=>{kt();vt();ws();ns=null});var Ho,U1=gr(()=>{kt();vt();Ho=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),E("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),E("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Xot={};os(Xot,{CloudflareHandler:()=>zoe});var zoe,Zot=gr(()=>{U1();kt();vt();dr();zoe=class extends Ho{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await Ae(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){E("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await iL(s,a,i),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return E("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var ect={};os(ect,{VercelHandler:()=>Koe});var Koe,tct=gr(()=>{U1();kt();vt();dr();Koe=class extends Ho{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await Ae(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){E("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){E("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await iL(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){E("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Gr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){E("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Hb(n,s),this.delLocalEnv(e)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await Ae(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Gr(i,JSON.stringify(o),a);return c?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var rct={};os(rct,{NetlifyHandler:()=>Voe});var Voe,nct=gr(()=>{U1();kt();vt();dr();Voe=class extends Ho{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await Ae(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await CUe(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Hb(r,n),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Gr(e,JSON.stringify({}),r);return s?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var sct={};os(sct,{EdgeoneHandler:()=>Yoe});var Yoe,ict=gr(()=>{U1();kt();vt();dr();Yoe=class extends Ho{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var act={};os(act,{HuggingfaceHandler:()=>Joe});var Joe,oct=gr(()=>{U1();kt();vt();dr();Joe=class extends Ho{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await Ae(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Gr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await Hb(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Gr(e,void 0,this._getOptions()),!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Ymt=_(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.removeTrailingChar=jy.merge=void 0;var H4r=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,jy.merge)(e[n],r[n]):e[n]=r[n]}),e};jy.merge=H4r;var G4r=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;jy.removeTrailingChar=G4r});var $_=_(Om=>{"use strict";Object.defineProperty(Om,"__esModule",{value:!0});Om.DataError=Om.DatabaseError=Om.NestedError=void 0;var wR=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`:
|
|
`+this.inner:e}};Om.NestedError=wR;var Xde=class extends wR{};Om.DatabaseError=Xde;var Zde=class extends wR{};Om.DataError=Zde});var sfe=_(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.getArrayIndicies=ka.validateArrayIndex=ka.validateArrayIndicies=ka.isInt=ka.ArrayInfo=ka.arrayRegex=void 0;var LM=$_(),z4r=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;ka.arrayRegex=z4r;var efe={},tfe=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,rfe(n))this.index=parseInt(n);else if(!this.append)throw new LM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(efe[e])return efe[e];let n=(0,ka.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=nfe(i);return Jmt(a),efe[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new LM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new LM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s<this.indicies.length-1;s++){let i=+this.indicies[s];i===-1&&(i=n.length-1),n=n[i]}r===-1&&(r=n.length-1)}return{index:r,dataForProperty:n}}isMultiDimensional(){return this.indicies.length>1}};ka.ArrayInfo=tfe;function rfe(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}ka.isInt=rfe;function Jmt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}ka.validateArrayIndicies=Jmt;function Xmt(t){if(t.length!==0&&!rfe(t))throw new LM.DataError("Only numerical values accepted for array index",200)}ka.validateArrayIndex=Xmt;function nfe(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Xmt(e);let r=e.length+2;return[e,...nfe(t.substring(r))]}ka.getArrayIndicies=nfe});var tht=_(MM=>{"use strict";Object.defineProperty(MM,"__esModule",{value:!0});MM.DBParentData=void 0;var Zmt=sfe(),eht=$_(),ife=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Zmt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new eht.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Zmt.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new eht.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};MM.DBParentData=ife});var nht=_((JEn,rht)=>{rht.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var sht=_(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.TimeoutError=void 0;var K4r=$_(),afe=class extends K4r.NestedError{};WM.TimeoutError=afe});var oht=_(U_=>{"use strict";Object.defineProperty(U_,"__esModule",{value:!0});U_.writeLockAsync=U_.readLockAsync=void 0;var V4r=nht(),iht=sht(),aht=new V4r,Y4r=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{aht.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new iht.TimeoutError("Timeout",100))}})})};U_.readLockAsync=Y4r;var J4r=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{aht.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new iht.TimeoutError("Timeout",100))}})})};U_.writeLockAsync=J4r});var cfe=_($M=>{"use strict";Object.defineProperty($M,"__esModule",{value:!0});$M.JsonAdapter=void 0;var ofe=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};$M.JsonAdapter=ofe});var lfe=_(FM=>{"use strict";Object.defineProperty(FM,"__esModule",{value:!0});FM.FileAdapter=void 0;var UM=require("fs/promises"),X4r=require("path"),ufe=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,UM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,UM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=X4r.dirname(this.filename);await(0,UM.mkdir)(s,{recursive:!0}),r=await(0,UM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};FM.FileAdapter=ufe});var cht=_(F_=>{"use strict";Object.defineProperty(F_,"__esModule",{value:!0});F_.ConfigWithAdapter=F_.Config=void 0;var Z4r=require("path"),eBr=cfe(),tBr=lfe(),dfe=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,Z4r.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new eBr.JsonAdapter(new tBr.FileAdapter(this.filename,i),n)}};F_.Config=dfe;var ffe=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};F_.ConfigWithAdapter=ffe});var fht=_(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.JsonDB=aa.FileAdapter=aa.JsonAdapter=aa.DataError=aa.DatabaseError=aa.ConfigWithAdapter=aa.Config=void 0;var uht=Ymt(),ia=$_(),rBr=tht(),nBr=sfe(),pfe=oht(),lht=cht();Object.defineProperty(aa,"Config",{enumerable:!0,get:function(){return lht.Config}});Object.defineProperty(aa,"ConfigWithAdapter",{enumerable:!0,get:function(){return lht.ConfigWithAdapter}});var dht=$_();Object.defineProperty(aa,"DatabaseError",{enumerable:!0,get:function(){return dht.DatabaseError}});Object.defineProperty(aa,"DataError",{enumerable:!0,get:function(){return dht.DataError}});var sBr=cfe();Object.defineProperty(aa,"JsonAdapter",{enumerable:!0,get:function(){return sBr.JsonAdapter}});var iBr=lfe();Object.defineProperty(aa,"FileAdapter",{enumerable:!0,get:function(){return iBr.FileAdapter}});var mfe=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new ia.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,uht.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new ia.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=nBr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new ia.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new ia.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new rBr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,pfe.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof ia.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof ia.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,pfe.writeLockAsync)(async()=>{let s=await this.getParentData(e,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new ia.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new ia.DataError("Can't merge an Array with an Object",4);i=(0,uht.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,pfe.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(e){throw new ia.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new ia.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new ia.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new ia.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};aa.JsonDB=mfe});var EMr={};os(EMr,{start:()=>bMr,stop:()=>_Mr});module.exports=sxt(EMr);var _yt=Ce(HNe(),1);var M_=Ce(require("node:fs/promises"),1),$s=Ce(require("node:path"),1),DM=require("node:crypto"),Mmt=require("node:module"),Kde=require("node:url");function LS(t,e){return function(){return t.apply(e,arguments)}}var{toString:dzt}=Object.prototype,{getPrototypeOf:EH}=Object,w3=(t=>e=>{let r=dzt.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),El=t=>(t=t.toLowerCase(),e=>w3(e)===t),R3=t=>e=>typeof e===t,{isArray:$x}=Array,MS=R3("undefined");function fzt(t){return t!==null&&!MS(t)&&t.constructor!==null&&!MS(t.constructor)&&_c(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var KNe=El("ArrayBuffer");function pzt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&KNe(t.buffer),e}var mzt=R3("string"),_c=R3("function"),VNe=R3("number"),N3=t=>t!==null&&typeof t=="object",hzt=t=>t===!0||t===!1,T3=t=>{if(w3(t)!=="object")return!1;let e=EH(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},gzt=El("Date"),yzt=El("File"),Azt=El("Blob"),xzt=El("FileList"),bzt=t=>N3(t)&&_c(t.pipe),_zt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||_c(t.append)&&((e=w3(t))==="formdata"||e==="object"&&_c(t.toString)&&t.toString()==="[object FormData]"))},Ezt=El("URLSearchParams"),vzt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function WS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),$x(t))for(n=0,s=t.length;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 YNe(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 JNe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,XNe=t=>!MS(t)&&t!==JNe;function _H(){let{caseless:t}=XNe(this)&&this||{},e={},r=(n,s)=>{let i=t&&YNe(e,s)||s;T3(e[i])&&T3(n)?e[i]=_H(e[i],n):T3(n)?e[i]=_H({},n):$x(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&WS(arguments[n],r);return e}var Szt=(t,e,r,{allOwnKeys:n}={})=>(WS(e,(s,i)=>{r&&_c(s)?t[i]=LS(s,r):t[i]=s},{allOwnKeys:n}),t),Izt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Czt=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},Tzt=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&EH(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},wzt=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},Rzt=t=>{if(!t)return null;if($x(t))return t;let e=t.length;if(!VNe(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Nzt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&EH(Uint8Array)),Ozt=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},kzt=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},Pzt=El("HTMLFormElement"),Dzt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),GNe=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Bzt=El("RegExp"),ZNe=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};WS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},Lzt=t=>{ZNe(t,(e,r)=>{if(_c(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(_c(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Mzt=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return $x(t)?n(t):n(String(t).split(e)),r},Wzt=()=>{},$zt=(t,e)=>(t=+t,Number.isFinite(t)?t:e),bH="abcdefghijklmnopqrstuvwxyz",zNe="0123456789",eOe={DIGIT:zNe,ALPHA:bH,ALPHA_DIGIT:bH+bH.toUpperCase()+zNe},Uzt=(t=16,e=eOe.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function Fzt(t){return!!(t&&_c(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var qzt=t=>{let e=new Array(10),r=(n,s)=>{if(N3(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=$x(n)?[]:{};return WS(n,(a,o)=>{let c=r(a,s+1);!MS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},jzt=El("AsyncFunction"),Qzt=t=>t&&(N3(t)||_c(t))&&_c(t.then)&&_c(t.catch),de={isArray:$x,isArrayBuffer:KNe,isBuffer:fzt,isFormData:_zt,isArrayBufferView:pzt,isString:mzt,isNumber:VNe,isBoolean:hzt,isObject:N3,isPlainObject:T3,isUndefined:MS,isDate:gzt,isFile:yzt,isBlob:Azt,isRegExp:Bzt,isFunction:_c,isStream:bzt,isURLSearchParams:Ezt,isTypedArray:Nzt,isFileList:xzt,forEach:WS,merge:_H,extend:Szt,trim:vzt,stripBOM:Izt,inherits:Czt,toFlatObject:Tzt,kindOf:w3,kindOfTest:El,endsWith:wzt,toArray:Rzt,forEachEntry:Ozt,matchAll:kzt,isHTMLForm:Pzt,hasOwnProperty:GNe,hasOwnProp:GNe,reduceDescriptors:ZNe,freezeMethods:Lzt,toObjectSet:Mzt,toCamelCase:Dzt,noop:Wzt,toFiniteNumber:$zt,findKey:YNe,global:JNe,isContextDefined:XNe,ALPHABET:eOe,generateString:Uzt,isSpecCompliantForm:Fzt,toJSONObject:qzt,isAsyncFn:jzt,isThenable:Qzt};function Ux(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}de.inherits(Ux,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:de.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var tOe=Ux.prototype,rOe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{rOe[t]={value:t}});Object.defineProperties(Ux,rOe);Object.defineProperty(tOe,"isAxiosError",{value:!0});Ux.from=(t,e,r,n,s,i)=>{let a=Object.create(tOe);return de.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),Ux.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Ze=Ux;var sPe=Ce(nPe(),1),U3=sPe.default;function jH(t){return de.isPlainObject(t)||de.isArray(t)}function aPe(t){return de.endsWith(t,"[]")?t.slice(0,-2):t}function iPe(t,e,r){return t?t.concat(e).map(function(s,i){return s=aPe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function RVt(t){return de.isArray(t)&&!t.some(jH)}var NVt=de.toFlatObject(de,{},null,function(e){return/^is[A-Z]/.test(e)});function OVt(t,e,r){if(!de.isObject(t))throw new TypeError("target must be an object");e=e||new(U3||FormData),r=de.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,y){return!de.isUndefined(y[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&de.isSpecCompliantForm(e);if(!de.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(de.isDate(m))return m.toISOString();if(!c&&de.isBlob(m))throw new Ze("Blob is not supported. Use a Buffer instead.");return de.isArrayBuffer(m)||de.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,y){let g=m;if(m&&!y&&typeof m=="object"){if(de.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(de.isArray(m)&&RVt(m)||(de.isFileList(m)||de.endsWith(h,"[]"))&&(g=de.toArray(m)))return h=aPe(h),g.forEach(function(x,A){!(de.isUndefined(x)||x===null)&&e.append(a===!0?iPe([h],A,i):a===null?h:h+"[]",u(x))}),!1}return jH(m)?!0:(e.append(iPe(y,h,i),u(m)),!1)}let d=[],f=Object.assign(NVt,{defaultVisitor:l,convertValue:u,isVisitable:jH});function p(m,h){if(!de.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),de.forEach(m,function(g,b){(!(de.isUndefined(g)||g===null)&&s.call(e,g,de.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!de.isObject(t))throw new TypeError("data must be an object");return p(t),e}var h0=OVt;function oPe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function cPe(t,e){this._pairs=[],t&&h0(t,this,e)}var uPe=cPe.prototype;uPe.append=function(e,r){this._pairs.push([e,r])};uPe.toString=function(e){let r=e?function(n){return e.call(this,n,oPe)}:oPe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var lPe=cPe;function kVt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Bh(t,e,r){if(!e)return t;let n=r&&r.encode||kVt,s=r&&r.serialize,i;if(s?i=s(e,r):i=de.isURLSearchParams(e)?e.toString():new lPe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var QH=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){de.forEach(this.handlers,function(n){n!==null&&e(n)})}},HH=QH;var Hx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var dPe=Ce(require("url"),1),fPe=dPe.default.URLSearchParams;var pPe={isNode:!0,classes:{URLSearchParams:fPe,FormData:U3,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var GH={};os(GH,{hasBrowserEnv:()=>mPe,hasStandardBrowserEnv:()=>PVt,hasStandardBrowserWebWorkerEnv:()=>DVt});var mPe=typeof window<"u"&&typeof document<"u",PVt=(t=>mPe&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),DVt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Os={...GH,...pPe};function zH(t,e){return h0(t,new Os.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Os.isNode&&de.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function BVt(t){return de.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function LVt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n<s;n++)i=r[n],e[i]=t[i];return e}function MVt(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&&de.isArray(s)?s.length:a,c?(de.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!de.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&de.isArray(s[a])&&(s[a]=LVt(s[a])),!o)}if(de.isFormData(t)&&de.isFunction(t.entries)){let r={};return de.forEachEntry(t,(n,s)=>{e(BVt(n),s,r,0)}),r}return null}var F3=MVt;function WVt(t,e,r){if(de.isString(t))try{return(e||JSON.parse)(t),de.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var KH={transitional:Hx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=de.isObject(e);if(i&&de.isHTMLForm(e)&&(e=new FormData(e)),de.isFormData(e))return s?JSON.stringify(F3(e)):e;if(de.isArrayBuffer(e)||de.isBuffer(e)||de.isStream(e)||de.isFile(e)||de.isBlob(e))return e;if(de.isArrayBufferView(e))return e.buffer;if(de.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return zH(e,this.formSerializer).toString();if((o=de.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return h0(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),WVt(e)):e}],transformResponse:[function(e){let r=this.transitional||KH.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&de.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Ze.from(o,Ze.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Os.classes.FormData,Blob:Os.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};de.forEach(["delete","get","head","post","put","patch"],t=>{KH.headers[t]={}});var Gx=KH;var $Vt=de.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),hPe=t=>{let e={},r,n,s;return t&&t.split(`
|
|
`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&$Vt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var gPe=Symbol("internals");function QS(t){return t&&String(t).trim().toLowerCase()}function q3(t){return t===!1||t==null?t:de.isArray(t)?t.map(q3):String(t)}function UVt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var FVt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function VH(t,e,r,n,s){if(de.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!de.isString(e)){if(de.isString(n))return e.indexOf(n)!==-1;if(de.isRegExp(n))return n.test(e)}}function qVt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function jVt(t,e){let r=de.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var zx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=QS(c);if(!l)throw new Error("header name must be a non-empty string");let d=de.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=q3(o))}let a=(o,c)=>de.forEach(o,(u,l)=>i(u,l,c));return de.isPlainObject(e)||e instanceof this.constructor?a(e,r):de.isString(e)&&(e=e.trim())&&!FVt(e)?a(hPe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=QS(e),e){let n=de.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return UVt(s);if(de.isFunction(r))return r.call(this,s,n);if(de.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=QS(e),e){let n=de.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||VH(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=QS(a),a){let o=de.findKey(n,a);o&&(!r||VH(n,n[o],o,r))&&(delete n[o],s=!0)}}return de.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||VH(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return de.forEach(this,(s,i)=>{let a=de.findKey(n,i);if(a){r[a]=q3(s),delete r[i];return}let o=e?qVt(i):String(i).trim();o!==i&&delete r[i],r[o]=q3(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return de.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&de.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(`
|
|
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[gPe]=this[gPe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=QS(a);n[o]||(jVt(s,a),n[o]=!0)}return de.isArray(e)?e.forEach(i):i(e),this}};zx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);de.reduceDescriptors(zx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});de.freezeMethods(zx);var ks=zx;function HS(t,e){let r=this||Gx,n=e||r,s=ks.from(n.headers),i=n.data;return de.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function GS(t){return!!(t&&t.__CANCEL__)}function yPe(t,e,r){Ze.call(this,t??"canceled",Ze.ERR_CANCELED,e,r),this.name="CanceledError"}de.inherits(yPe,Ze,{__CANCEL__:!0});var mu=yPe;function g0(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Ze("Request failed with status code "+r.status,[Ze.ERR_BAD_REQUEST,Ze.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function YH(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function JH(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function Lh(t,e){return t&&!YH(e)?JH(t,e):e}var XPe=Ce(xPe(),1),ZPe=Ce(require("http"),1),e3e=Ce(require("https"),1),t3e=Ce(require("util"),1),r3e=Ce(WPe(),1),rf=Ce(require("zlib"),1);var Uh="1.6.7";function JS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var wYt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function mG(t,e,r){let n=r&&r.Blob||Os.classes.Blob,s=JS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=wYt.exec(t);if(!i)throw new Ze("Invalid URL",Ze.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Ze("Blob is not supported",Ze.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Ze("Unsupported protocol "+s,Ze.ERR_NOT_SUPPORT)}var Fh=Ce(require("stream"),1);var UPe=Ce(require("stream"),1);function RYt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var $Pe=RYt;function NYt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a<e)return;let p=l&&u-l;return p?Math.round(f*1e3/p):void 0}}var z3=NYt;var K3=Symbol("internals"),hG=class extends UPe.default.Transform{constructor(e){e=de.toFlatObject(e,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,c)=>!de.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[K3]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=z3(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=$Pe(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(e){let r=this[K3];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[K3],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(m,h){let y=Buffer.byteLength(m);i.bytesSeen+=y,i.bytes+=y,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let y=Buffer.byteLength(m),g=null,b=o,x,A=0;if(a){let S=Date.now();(!i.ts||(A=S-i.ts)>=c)&&(i.ts=S,x=l-i.bytes,i.bytes=x<0?-x:0,A=0),x=l-i.bytes}if(a){if(x<=0)return setTimeout(()=>{h(null,m)},c-A);x<b&&(b=x)}b&&y>b&&y-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,y){if(h)return n(h);y?p(y,m):n(null)})}setLength(e){return this[K3].length=+e,this}},gG=hG;var n3e=Ce(require("events"),1);var qPe=require("util"),jPe=require("stream");var{asyncIterator:FPe}=Symbol,OYt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[FPe]?yield*t[FPe]():yield t},V3=OYt;var kYt=de.ALPHABET.ALPHA_DIGIT+"-_",XS=new qPe.TextEncoder,A0=`\r
|
|
`,PYt=XS.encode(A0),DYt=2,yG=class{constructor(e,r){let{escapeName:n}=this.constructor,s=de.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${A0}`;s?r=XS.encode(String(r).replace(/\r?\n|\r\n?/g,A0)):i+=`Content-Type: ${r.type||"application/octet-stream"}${A0}`,this.headers=XS.encode(i+A0),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+DYt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;de.isTypedArray(e)?yield e:yield*V3(e),yield PYt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},BYt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+de.generateString(s,kYt)}=r||{};if(!de.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=XS.encode("--"+i+A0),o=XS.encode("--"+i+"--"+A0+A0),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new yG(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=de.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),jPe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},QPe=BYt;var HPe=Ce(require("stream"),1),AG=class extends HPe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},GPe=AG;var LYt=(t,e)=>de.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,zPe=LYt;var KPe={flush:rf.default.constants.Z_SYNC_FLUSH,finishFlush:rf.default.constants.Z_SYNC_FLUSH},MYt={flush:rf.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:rf.default.constants.BROTLI_OPERATION_FLUSH},VPe=de.isFunction(rf.default.createBrotliDecompress),{http:WYt,https:$Yt}=r3e.default,UYt=/https:?/,YPe=Os.protocols.map(t=>t+":");function FYt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function s3e(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,XPe.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){s3e(i,e,i.href)}}var qYt=typeof process<"u"&&de.kindOf(process)==="process",jYt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),QYt=({address:t,family:e})=>{if(!de.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},JPe=(t,e)=>QYt(de.isObject(t)?t:{address:t,family:e}),i3e=qYt&&function(e){return jYt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let U=zPe(o,z=>de.isArray(z)?z:[z]);o=(z,j,J)=>{U(z,j,(se,oe,ue)=>{if(se)return J(se);let Te=de.isArray(oe)?oe.map(Ne=>JPe(Ne)):[JPe(oe,ue)];j.all?J(se,Te):J(se,Te[0].address,Te[0].family)})}}let h=new n3e.default,y=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((U,z)=>{f=!0,z&&(p=!0,y())});function g(U){h.emit("abort",!U||U.type?new mu(null,e,m):U)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=Lh(e.baseURL,e.url),x=new URL(b,"http://localhost"),A=x.protocol||YPe[0];if(A==="data:"){let U;if(d!=="GET")return g0(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{U=mG(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(z){throw Ze.from(z,Ze.ERR_BAD_REQUEST,e)}return u==="text"?(U=U.toString(l),(!l||l==="utf8")&&(U=de.stripBOM(U))):u==="stream"&&(U=Fh.default.Readable.from(U)),g0(n,s,{data:U,status:200,statusText:"OK",headers:new ks,config:e})}if(YPe.indexOf(A)===-1)return s(new Ze("Unsupported protocol "+A,Ze.ERR_BAD_REQUEST,e));let S=ks.from(e.headers).normalize();S.set("User-Agent","axios/"+Uh,!1);let I=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,k;if(de.isSpecCompliantForm(a)){let U=S.getContentType(/boundary=([-_\w\d]{10,70})/i);a=QPe(a,z=>{S.set(z)},{tag:`axios-${Uh}-boundary`,boundary:U&&U[1]||void 0})}else if(de.isFormData(a)&&de.isFunction(a.getHeaders)){if(S.set(a.getHeaders()),!S.hasContentLength())try{let U=await t3e.default.promisify(a.getLength).call(a);Number.isFinite(U)&&U>=0&&S.setContentLength(U)}catch{}}else if(de.isBlob(a))a.size&&S.setContentType(a.type||"application/octet-stream"),S.setContentLength(a.size||0),a=Fh.default.Readable.from(V3(a));else if(a&&!de.isStream(a)){if(!Buffer.isBuffer(a))if(de.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(de.isString(a))a=Buffer.from(a,"utf-8");else return s(new Ze("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Ze.ERR_BAD_REQUEST,e));if(S.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Ze("Request body larger than maxBodyLength limit",Ze.ERR_BAD_REQUEST,e))}let B=de.toFiniteNumber(S.getContentLength());de.isArray(w)?(N=w[0],k=w[1]):N=k=w,a&&(R||N)&&(de.isStream(a)||(a=Fh.default.Readable.from(a,{objectMode:!1})),a=Fh.default.pipeline([a,new gG({length:B,maxRate:de.toFiniteNumber(N)})],de.noop),R&&a.on("progress",U=>{R(Object.assign(U,{upload:!0}))}));let M;if(e.auth){let U=e.auth.username||"",z=e.auth.password||"";M=U+":"+z}if(!M&&x.username){let U=x.username,z=x.password;M=U+":"+z}M&&S.delete("authorization");let D;try{D=Bh(x.pathname+x.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(U){let z=new Error(U.message);return z.config=e,z.url=e.url,z.exists=!0,s(z)}S.set("Accept-Encoding","gzip, compress, deflate"+(VPe?", br":""),!1);let L={path:D,method:d,headers:S.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:A,family:c,beforeRedirect:FYt,beforeRedirects:{}};!de.isUndefined(o)&&(L.lookup=o),e.socketPath?L.socketPath=e.socketPath:(L.hostname=x.hostname,L.port=x.port,s3e(L,e.proxy,A+"//"+x.hostname+(x.port?":"+x.port:"")+L.path));let Z,W=UYt.test(L.protocol);if(L.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?e3e.default:ZPe.default:(e.maxRedirects&&(L.maxRedirects=e.maxRedirects),e.beforeRedirect&&(L.beforeRedirects.config=e.beforeRedirect),Z=W?$Yt:WYt),e.maxBodyLength>-1?L.maxBodyLength=e.maxBodyLength:L.maxBodyLength=1/0,e.insecureHTTPParser&&(L.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(L,function(z){if(m.destroyed)return;let j=[z],J=+z.headers["content-length"];if(I){let Ne=new gG({length:de.toFiniteNumber(J),maxRate:de.toFiniteNumber(k)});I&&Ne.on("progress",je=>{I(Object.assign(je,{download:!0}))}),j.push(Ne)}let se=z,oe=z.req||m;if(e.decompress!==!1&&z.headers["content-encoding"])switch((d==="HEAD"||z.statusCode===204)&&delete z.headers["content-encoding"],(z.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(rf.default.createUnzip(KPe)),delete z.headers["content-encoding"];break;case"deflate":j.push(new GPe),j.push(rf.default.createUnzip(KPe)),delete z.headers["content-encoding"];break;case"br":VPe&&(j.push(rf.default.createBrotliDecompress(MYt)),delete z.headers["content-encoding"])}se=j.length>1?Fh.default.pipeline(j,de.noop):j[0];let ue=Fh.default.finished(se,()=>{ue(),y()}),Te={status:z.statusCode,statusText:z.statusMessage,headers:new ks(z.headers),config:e,request:oe};if(u==="stream")Te.data=se,g0(n,s,Te);else{let Ne=[],je=0;se.on("data",function(ve){Ne.push(ve),je+=ve.length,e.maxContentLength>-1&&je>e.maxContentLength&&(p=!0,se.destroy(),s(new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let ve=new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe);se.destroy(ve),s(ve)}),se.on("error",function(ve){m.destroyed||s(Ze.from(ve,null,e,oe))}),se.on("end",function(){try{let ve=Ne.length===1?Ne[0]:Buffer.concat(Ne);u!=="arraybuffer"&&(ve=ve.toString(l),(!l||l==="utf8")&&(ve=de.stripBOM(ve))),Te.data=ve}catch(ve){return s(Ze.from(ve,null,e,Te.request,Te))}g0(n,s,Te)})}h.once("abort",Ne=>{se.destroyed||(se.emit("error",Ne),se.destroy())})}),h.once("abort",U=>{s(U),m.destroy(U)}),m.on("error",function(z){s(Ze.from(z,null,e,m))}),m.on("socket",function(z){z.setKeepAlive(!0,1e3*60)}),e.timeout){let U=parseInt(e.timeout,10);if(Number.isNaN(U)){s(new Ze("error trying to parse `config.timeout` to int",Ze.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(U,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||Hx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Ze(j,J.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,e,m)),g()})}if(de.isStream(a)){let U=!1,z=!1;a.on("end",()=>{U=!0}),a.once("error",j=>{z=!0,m.destroy(j)}),a.on("close",()=>{!U&&!z&&g(new mu("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var a3e=Os.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];de.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),de.isString(n)&&a.push("path="+n),de.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var o3e=Os.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=de.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function c3e(t,e){let r=0,n=z3(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[e?"download":"upload"]=!0,t(l)}}var HYt=typeof XMLHttpRequest<"u",u3e=HYt&&function(t){return new Promise(function(r,n){let s=t.data,i=ks.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(de.isFormData(s)){if(Os.hasStandardBrowserEnv||Os.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...y]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...y].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",y=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+y))}let f=Lh(t.baseURL,t.url);d.open(t.method.toUpperCase(),Bh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=ks.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};g0(function(x){r(x),u()},function(x){n(x),u()},g),d=null}if("onloadend"in d?d.onloadend=p:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(p)},d.onabort=function(){d&&(n(new Ze("Request aborted",Ze.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Ze("Network Error",Ze.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let y=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||Hx;t.timeoutErrorMessage&&(y=t.timeoutErrorMessage),n(new Ze(y,g.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,t,d)),d=null},Os.hasStandardBrowserEnv&&(o&&de.isFunction(o)&&(o=o(t)),o||o!==!1&&o3e(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&a3e.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&de.forEach(i.toJSON(),function(y,g){d.setRequestHeader(g,y)}),de.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",c3e(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",c3e(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new mu(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=JS(f);if(m&&Os.protocols.indexOf(m)===-1){n(new Ze("Unsupported protocol "+m+":",Ze.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var xG={http:i3e,xhr:u3e};de.forEach(xG,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var l3e=t=>`- ${t}`,GYt=t=>de.isFunction(t)||t===null||t===!1,Y3={getAdapter:t=>{t=de.isArray(t)?t:[t];let{length:e}=t,r,n,s={};for(let i=0;i<e;i++){r=t[i];let a;if(n=r,!GYt(r)&&(n=xG[(a=String(r)).toLowerCase()],n===void 0))throw new Ze(`Unknown adapter '${a}'`);if(n)break;s[a||"#"+i]=n}if(!n){let i=Object.entries(s).map(([o,c])=>`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=e?i.length>1?`since :
|
|
`+i.map(l3e).join(`
|
|
`):" "+l3e(i[0]):"as no adapter specified";throw new Ze("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:xG};function bG(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new mu(null,t)}function J3(t){return bG(t),t.headers=ks.from(t.headers),t.data=HS.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Y3.getAdapter(t.adapter||Gx.adapter)(t).then(function(n){return bG(t),n.data=HS.call(t,t.transformResponse,n),n.headers=ks.from(n.headers),n},function(n){return GS(n)||(bG(t),n&&n.response&&(n.response.data=HS.call(t,t.transformResponse,n.response),n.response.headers=ks.from(n.response.headers))),Promise.reject(n)})}var d3e=t=>t instanceof ks?t.toJSON():t;function nf(t,e){e=e||{};let r={};function n(u,l,d){return de.isPlainObject(u)&&de.isPlainObject(l)?de.merge.call({caseless:d},u,l):de.isPlainObject(l)?de.merge({},l):de.isArray(l)?l.slice():l}function s(u,l,d){if(de.isUndefined(l)){if(!de.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!de.isUndefined(l))return n(void 0,l)}function a(u,l){if(de.isUndefined(l)){if(!de.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(d3e(u),d3e(l),!0)};return de.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);de.isUndefined(f)&&d!==o||(r[l]=f)}),r}var _G={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{_G[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var f3e={};_G.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Uh+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Ze(s(a," has been removed"+(r?" in "+r:"")),Ze.ERR_DEPRECATED);return r&&!f3e[a]&&(f3e[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function zYt(t,e,r){if(typeof t!="object")throw new Ze("options must be an object",Ze.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Ze("option "+i+" must be "+c,Ze.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Ze("Unknown option "+i,Ze.ERR_BAD_OPTION)}}var X3={assertOptions:zYt,validators:_G};var x0=X3.validators,Xx=class{constructor(e){this.defaults=e,this.interceptors={request:new HH,response:new HH}}async request(e,r){try{return await this._request(e,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
|
|
`+i):n.stack=i}throw n}}_request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=nf(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&X3.assertOptions(n,{silentJSONParsing:x0.transitional(x0.boolean),forcedJSONParsing:x0.transitional(x0.boolean),clarifyTimeoutError:x0.transitional(x0.boolean)},!1),s!=null&&(de.isFunction(s)?r.paramsSerializer={serialize:s}:X3.assertOptions(s,{encode:x0.function,serialize:x0.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&de.merge(i.common,i[r.method]);i&&de.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=ks.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[J3.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d<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(y){h.call(this,y);break}}try{l=J3.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=nf(this.defaults,e);let r=Lh(e.baseURL,e.url);return Bh(r,e.params,e.paramsSerializer)}};de.forEach(["delete","get","head","options"],function(e){Xx.prototype[e]=function(r,n){return this.request(nf(n||{},{method:e,url:r,data:(n||{}).data}))}});de.forEach(["post","put","patch"],function(e){function r(n){return function(i,a,o){return this.request(nf(o||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}Xx.prototype[e]=r(),Xx.prototype[e+"Form"]=r(!0)});var ZS=Xx;var EG=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 mu(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},p3e=EG;function vG(t){return function(r){return t.apply(null,r)}}function SG(t){return de.isObject(t)&&t.isAxiosError===!0}var IG={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(IG).forEach(([t,e])=>{IG[e]=t});var m3e=IG;function h3e(t){let e=new ZS(t),r=LS(ZS.prototype.request,e);return de.extend(r,ZS.prototype,e,{allOwnKeys:!0}),de.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return h3e(nf(t,s))},r}var Es=h3e(Gx);Es.Axios=ZS;Es.CanceledError=mu;Es.CancelToken=p3e;Es.isCancel=GS;Es.VERSION=Uh;Es.toFormData=h0;Es.AxiosError=Ze;Es.Cancel=Es.CanceledError;Es.all=function(e){return Promise.all(e)};Es.spread=vG;Es.isAxiosError=SG;Es.mergeConfig=nf;Es.AxiosHeaders=ks;Es.formToJSON=t=>F3(de.isHTMLForm(t)?new FormData(t):t);Es.getAdapter=Y3.getAdapter;Es.HttpStatusCode=m3e;Es.default=Es;var he=Es;var{Axios:gGr,AxiosError:yGr,CanceledError:AGr,isCancel:xGr,CancelToken:bGr,VERSION:_Gr,all:EGr,Cancel:vGr,isAxiosError:SGr,spread:IGr,toFormData:CGr,AxiosHeaders:TGr,HttpStatusCode:wGr,formToJSON:RGr,getAdapter:NGr,mergeConfig:OGr}=he;var g3e=Ce(require("https"),1),y3e=Ce(require("http"),1),KYt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,VYt=he.create({timeout:KYt,httpsAgent:new g3e.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new y3e.default.Agent({keepAlive:!1}),proxy:!1}),fe=VYt;var JD={};os(JD,{contains:()=>prr,default:()=>frr,html:()=>WG,load:()=>De,merge:()=>mrr,parseHTML:()=>hrr,root:()=>grr,text:()=>cf,xml:()=>$G});var YYt={xml:!1,decodeEntities:!0},eI=YYt,A3e={_useHtmlParser2:!0,xmlMode:!0};function tI(t){return t?.xml?typeof t.xml=="boolean"?A3e:{...A3e,...t.xml}:t??void 0}var v0={};os(v0,{contains:()=>UG,html:()=>WG,merge:()=>FJt,parseHTML:()=>$Jt,root:()=>UJt,text:()=>cf,xml:()=>$G});var E0={};os(E0,{DocumentPosition:()=>Sc,append:()=>_Jt,appendChild:()=>bJt,compareDocumentPosition:()=>G3e,existsOne:()=>Q3e,filter:()=>nb,find:()=>dD,findAll:()=>IJt,findOne:()=>fD,findOneChild:()=>SJt,getAttributeValue:()=>gJt,getChildren:()=>rb,getElementById:()=>RJt,getElements:()=>wJt,getElementsByClassName:()=>NJt,getElementsByTagName:()=>Gh,getElementsByTagType:()=>OJt,getFeed:()=>MG,getInnerHTML:()=>hJt,getName:()=>AJt,getOuterHTML:()=>q3e,getParent:()=>j3e,getSiblings:()=>BG,getText:()=>cD,hasAttrib:()=>yJt,hasChildren:()=>tn,innerText:()=>cI,isCDATA:()=>Zx,isComment:()=>Hh,isDocument:()=>hu,isTag:()=>it,isText:()=>no,nextElementSibling:()=>uD,prepend:()=>vJt,prependChild:()=>EJt,prevElementSibling:()=>lD,removeElement:()=>of,removeSubsets:()=>kJt,replaceElement:()=>xJt,testElement:()=>TJt,textContent:()=>af,uniqueSort:()=>b0});var Pr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(Pr||(Pr={}));function x3e(t){return t.type===Pr.Tag||t.type===Pr.Script||t.type===Pr.Style}var b3e=Pr.Root,_3e=Pr.Text,E3e=Pr.Directive,v3e=Pr.Comment,S3e=Pr.Script,I3e=Pr.Style,C3e=Pr.Tag,T3e=Pr.CDATA,w3e=Pr.Doctype;var Z3=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return iI(this,e)}},rI=class extends Z3{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},vl=class extends rI{constructor(){super(...arguments),this.type=Pr.Text}get nodeType(){return 3}},qh=class extends rI{constructor(){super(...arguments),this.type=Pr.Comment}get nodeType(){return 8}},jh=class extends rI{constructor(e,r){super(r),this.name=e,this.type=Pr.Directive}get nodeType(){return 1}},nI=class extends Z3{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},sI=class extends nI{constructor(){super(...arguments),this.type=Pr.CDATA}get nodeType(){return 4}},Oo=class extends nI{constructor(){super(...arguments),this.type=Pr.Root}get nodeType(){return 9}},Qh=class extends nI{constructor(e,r,n=[],s=e==="script"?Pr.Script:e==="style"?Pr.Style:Pr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function it(t){return x3e(t)}function Zx(t){return t.type===Pr.CDATA}function no(t){return t.type===Pr.Text}function Hh(t){return t.type===Pr.Comment}function eD(t){return t.type===Pr.Directive}function hu(t){return t.type===Pr.Root}function tn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function iI(t,e=!1){let r;if(no(t))r=new vl(t.data);else if(Hh(t))r=new qh(t.data);else if(it(t)){let n=e?CG(t.children):[],s=new Qh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(Zx(t)){let n=e?CG(t.children):[],s=new sI(n);n.forEach(i=>i.parent=s),r=s}else if(hu(t)){let n=e?CG(t.children):[],s=new Oo(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(eD(t)){let n=new jh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function CG(t){let e=t.map(r=>iI(r,!0));for(let r=1;r<e.length;r++)e[r].prev=e[r-1],e[r-1].next=e[r];return e}var N3e={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},eb=class{constructor(e,r,n){this.dom=[],this.root=new Oo(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,typeof r=="function"&&(n=r,r=N3e),typeof e=="object"&&(r=e,e=void 0),this.callback=e??null,this.options=r??N3e,this.elementCB=n??null}onparserinit(e){this.parser=e}onreset(){this.dom=[],this.root=new Oo(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?Pr.Tag:void 0,s=new Qh(e,r,void 0,n);this.addNode(s),this.tagStack.push(s)}ontext(e){let{lastNode:r}=this;if(r&&r.type===Pr.Text)r.data+=e,this.options.withEndIndices&&(r.endIndex=this.parser.endIndex);else{let n=new vl(e);this.addNode(n),this.lastNode=n}}oncomment(e){if(this.lastNode&&this.lastNode.type===Pr.Comment){this.lastNode.data+=e;return}let r=new qh(e);this.addNode(r),this.lastNode=r}oncommentend(){this.lastNode=null}oncdatastart(){let e=new vl(""),r=new sI([e]);this.addNode(r),e.parent=r,this.lastNode=e}oncdataend(){this.lastNode=null}onprocessinginstruction(e,r){let n=new jh(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 tD=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 rD=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var TG,JYt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),tb=(TG=String.fromCodePoint)!==null&&TG!==void 0?TG:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function aI(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=JYt.get(t))!==null&&e!==void 0?e:t}var Zs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Zs||(Zs={}));var XYt=32,vc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(vc||(vc={}));function wG(t){return t>=Zs.ZERO&&t<=Zs.NINE}function ZYt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_F||t>=Zs.LOWER_A&&t<=Zs.LOWER_F}function eJt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_Z||t>=Zs.LOWER_A&&t<=Zs.LOWER_Z||wG(t)}function tJt(t){return t===Zs.EQUALS||eJt(t)}var Xs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Xs||(Xs={}));var sf;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(sf||(sf={}));var nD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Xs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=sf.Strict}startEntity(e){this.decodeMode=e,this.state=Xs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Xs.EntityStart:return e.charCodeAt(r)===Zs.NUM?(this.state=Xs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Xs.NamedEntity,this.stateNamedEntity(e,r));case Xs.NumericStart:return this.stateNumericStart(e,r);case Xs.NumericDecimal:return this.stateNumericDecimal(e,r);case Xs.NumericHex:return this.stateNumericHex(e,r);case Xs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|XYt)===Zs.LOWER_X?(this.state=Xs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Xs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(wG(s)||ZYt(s))r+=1;else return this.addToNumericResult(e,n,r,16),this.emitNumericEntity(s,3)}return this.addToNumericResult(e,n,r,16),-1}stateNumericDecimal(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(wG(s))r+=1;else return this.addToNumericResult(e,n,r,10),this.emitNumericEntity(s,2)}return this.addToNumericResult(e,n,r,10),-1}emitNumericEntity(e,r){var n;if(this.consumed<=r)return(n=this.errors)===null||n===void 0||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===Zs.SEMI)this.consumed+=1;else if(this.decodeMode===sf.Strict)return 0;return this.emitCodePoint(aI(this.result),this.consumed),this.errors&&(e!==Zs.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,r){let{decodeTree:n}=this,s=n[this.treeIndex],i=(s&vc.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=RG(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===sf.Attribute&&(i===0||tJt(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&vc.VALUE_LENGTH)>>14,i!==0){if(a===Zs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==sf.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&vc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~vc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Xs.NamedEntity:return this.result!==0&&(this.decodeMode!==sf.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Xs.NumericDecimal:return this.emitNumericEntity(0,2);case Xs.NumericHex:return this.emitNumericEntity(0,3);case Xs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Xs.EntityStart:return 0}}};function O3e(t){let e="",r=new nD(t,n=>e+=tb(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=e+s.slice(a);return e="",c}}function RG(t,e,r,n){let s=(e&vc.BRANCH_LENGTH)>>7,i=e&vc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var VGr=O3e(tD),YGr=O3e(rD);function sD(t){for(let e=1;e<t.length;e++)t[e][0]+=t[e-1][0]+1;return t}var rJt=new Map(sD([[9,"	"],[0,"
"],[22,"!"],[0,"""],[0,"#"],[0,"$"],[0,"%"],[0,"&"],[0,"'"],[0,"("],[0,")"],[0,"*"],[0,"+"],[0,","],[1,"."],[0,"/"],[10,":"],[0,";"],[0,{v:"<",n:8402,o:"<⃒"}],[0,{v:"=",n:8421,o:"=⃥"}],[0,{v:">",n:8402,o:">⃒"}],[0,"?"],[0,"@"],[26,"["],[0,"\"],[0,"]"],[0,"^"],[0,"_"],[0,"`"],[5,{n:106,o:"fj"}],[20,"{"],[0,"|"],[0,"}"],[34," "],[0,"¡"],[0,"¢"],[0,"£"],[0,"¤"],[0,"¥"],[0,"¦"],[0,"§"],[0,"¨"],[0,"©"],[0,"ª"],[0,"«"],[0,"¬"],[0,"­"],[0,"®"],[0,"¯"],[0,"°"],[0,"±"],[0,"²"],[0,"³"],[0,"´"],[0,"µ"],[0,"¶"],[0,"·"],[0,"¸"],[0,"¹"],[0,"º"],[0,"»"],[0,"¼"],[0,"½"],[0,"¾"],[0,"¿"],[0,"À"],[0,"Á"],[0,"Â"],[0,"Ã"],[0,"Ä"],[0,"Å"],[0,"Æ"],[0,"Ç"],[0,"È"],[0,"É"],[0,"Ê"],[0,"Ë"],[0,"Ì"],[0,"Í"],[0,"Î"],[0,"Ï"],[0,"Ð"],[0,"Ñ"],[0,"Ò"],[0,"Ó"],[0,"Ô"],[0,"Õ"],[0,"Ö"],[0,"×"],[0,"Ø"],[0,"Ù"],[0,"Ú"],[0,"Û"],[0,"Ü"],[0,"Ý"],[0,"Þ"],[0,"ß"],[0,"à"],[0,"á"],[0,"â"],[0,"ã"],[0,"ä"],[0,"å"],[0,"æ"],[0,"ç"],[0,"è"],[0,"é"],[0,"ê"],[0,"ë"],[0,"ì"],[0,"í"],[0,"î"],[0,"ï"],[0,"ð"],[0,"ñ"],[0,"ò"],[0,"ó"],[0,"ô"],[0,"õ"],[0,"ö"],[0,"÷"],[0,"ø"],[0,"ù"],[0,"ú"],[0,"û"],[0,"ü"],[0,"ý"],[0,"þ"],[0,"ÿ"],[0,"Ā"],[0,"ā"],[0,"Ă"],[0,"ă"],[0,"Ą"],[0,"ą"],[0,"Ć"],[0,"ć"],[0,"Ĉ"],[0,"ĉ"],[0,"Ċ"],[0,"ċ"],[0,"Č"],[0,"č"],[0,"Ď"],[0,"ď"],[0,"Đ"],[0,"đ"],[0,"Ē"],[0,"ē"],[2,"Ė"],[0,"ė"],[0,"Ę"],[0,"ę"],[0,"Ě"],[0,"ě"],[0,"Ĝ"],[0,"ĝ"],[0,"Ğ"],[0,"ğ"],[0,"Ġ"],[0,"ġ"],[0,"Ģ"],[1,"Ĥ"],[0,"ĥ"],[0,"Ħ"],[0,"ħ"],[0,"Ĩ"],[0,"ĩ"],[0,"Ī"],[0,"ī"],[2,"Į"],[0,"į"],[0,"İ"],[0,"ı"],[0,"IJ"],[0,"ij"],[0,"Ĵ"],[0,"ĵ"],[0,"Ķ"],[0,"ķ"],[0,"ĸ"],[0,"Ĺ"],[0,"ĺ"],[0,"Ļ"],[0,"ļ"],[0,"Ľ"],[0,"ľ"],[0,"Ŀ"],[0,"ŀ"],[0,"Ł"],[0,"ł"],[0,"Ń"],[0,"ń"],[0,"Ņ"],[0,"ņ"],[0,"Ň"],[0,"ň"],[0,"ʼn"],[0,"Ŋ"],[0,"ŋ"],[0,"Ō"],[0,"ō"],[2,"Ő"],[0,"ő"],[0,"Œ"],[0,"œ"],[0,"Ŕ"],[0,"ŕ"],[0,"Ŗ"],[0,"ŗ"],[0,"Ř"],[0,"ř"],[0,"Ś"],[0,"ś"],[0,"Ŝ"],[0,"ŝ"],[0,"Ş"],[0,"ş"],[0,"Š"],[0,"š"],[0,"Ţ"],[0,"ţ"],[0,"Ť"],[0,"ť"],[0,"Ŧ"],[0,"ŧ"],[0,"Ũ"],[0,"ũ"],[0,"Ū"],[0,"ū"],[0,"Ŭ"],[0,"ŭ"],[0,"Ů"],[0,"ů"],[0,"Ű"],[0,"ű"],[0,"Ų"],[0,"ų"],[0,"Ŵ"],[0,"ŵ"],[0,"Ŷ"],[0,"ŷ"],[0,"Ÿ"],[0,"Ź"],[0,"ź"],[0,"Ż"],[0,"ż"],[0,"Ž"],[0,"ž"],[19,"ƒ"],[34,"Ƶ"],[63,"ǵ"],[65,"ȷ"],[142,"ˆ"],[0,"ˇ"],[16,"˘"],[0,"˙"],[0,"˚"],[0,"˛"],[0,"˜"],[0,"˝"],[51,"̑"],[127,"Α"],[0,"Β"],[0,"Γ"],[0,"Δ"],[0,"Ε"],[0,"Ζ"],[0,"Η"],[0,"Θ"],[0,"Ι"],[0,"Κ"],[0,"Λ"],[0,"Μ"],[0,"Ν"],[0,"Ξ"],[0,"Ο"],[0,"Π"],[0,"Ρ"],[1,"Σ"],[0,"Τ"],[0,"Υ"],[0,"Φ"],[0,"Χ"],[0,"Ψ"],[0,"Ω"],[7,"α"],[0,"β"],[0,"γ"],[0,"δ"],[0,"ε"],[0,"ζ"],[0,"η"],[0,"θ"],[0,"ι"],[0,"κ"],[0,"λ"],[0,"μ"],[0,"ν"],[0,"ξ"],[0,"ο"],[0,"π"],[0,"ρ"],[0,"ς"],[0,"σ"],[0,"τ"],[0,"υ"],[0,"φ"],[0,"χ"],[0,"ψ"],[0,"ω"],[7,"ϑ"],[0,"ϒ"],[2,"ϕ"],[0,"ϖ"],[5,"Ϝ"],[0,"ϝ"],[18,"ϰ"],[0,"ϱ"],[3,"ϵ"],[0,"϶"],[10,"Ё"],[0,"Ђ"],[0,"Ѓ"],[0,"Є"],[0,"Ѕ"],[0,"І"],[0,"Ї"],[0,"Ј"],[0,"Љ"],[0,"Њ"],[0,"Ћ"],[0,"Ќ"],[1,"Ў"],[0,"Џ"],[0,"А"],[0,"Б"],[0,"В"],[0,"Г"],[0,"Д"],[0,"Е"],[0,"Ж"],[0,"З"],[0,"И"],[0,"Й"],[0,"К"],[0,"Л"],[0,"М"],[0,"Н"],[0,"О"],[0,"П"],[0,"Р"],[0,"С"],[0,"Т"],[0,"У"],[0,"Ф"],[0,"Х"],[0,"Ц"],[0,"Ч"],[0,"Ш"],[0,"Щ"],[0,"Ъ"],[0,"Ы"],[0,"Ь"],[0,"Э"],[0,"Ю"],[0,"Я"],[0,"а"],[0,"б"],[0,"в"],[0,"г"],[0,"д"],[0,"е"],[0,"ж"],[0,"з"],[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,"і"],[0,"ї"],[0,"ј"],[0,"љ"],[0,"њ"],[0,"ћ"],[0,"ќ"],[1,"ў"],[0,"џ"],[7074," "],[0," "],[0," "],[0," "],[1," "],[0," "],[0," "],[0," "],[0,"​"],[0,"‌"],[0,"‍"],[0,"‎"],[0,"‏"],[0,"‐"],[2,"–"],[0,"—"],[0,"―"],[0,"‖"],[1,"‘"],[0,"’"],[0,"‚"],[1,"“"],[0,"”"],[0,"„"],[1,"†"],[0,"‡"],[0,"•"],[2,"‥"],[0,"…"],[9,"‰"],[0,"‱"],[0,"′"],[0,"″"],[0,"‴"],[0,"‵"],[3,"‹"],[0,"›"],[3,"‾"],[2,"⁁"],[1,"⁃"],[0,"⁄"],[10,"⁏"],[7,"⁗"],[7,{v:" ",n:8202,o:"  "}],[0,"⁠"],[0,"⁡"],[0,"⁢"],[0,"⁣"],[72,"€"],[46,"⃛"],[0,"⃜"],[37,"ℂ"],[2,"℅"],[4,"ℊ"],[0,"ℋ"],[0,"ℌ"],[0,"ℍ"],[0,"ℎ"],[0,"ℏ"],[0,"ℐ"],[0,"ℑ"],[0,"ℒ"],[0,"ℓ"],[1,"ℕ"],[0,"№"],[0,"℗"],[0,"℘"],[0,"ℙ"],[0,"ℚ"],[0,"ℛ"],[0,"ℜ"],[0,"ℝ"],[0,"℞"],[3,"™"],[1,"ℤ"],[2,"℧"],[0,"ℨ"],[0,"℩"],[2,"ℬ"],[0,"ℭ"],[1,"ℯ"],[0,"ℰ"],[0,"ℱ"],[1,"ℳ"],[0,"ℴ"],[0,"ℵ"],[0,"ℶ"],[0,"ℷ"],[0,"ℸ"],[12,"ⅅ"],[0,"ⅆ"],[0,"ⅇ"],[0,"ⅈ"],[10,"⅓"],[0,"⅔"],[0,"⅕"],[0,"⅖"],[0,"⅗"],[0,"⅘"],[0,"⅙"],[0,"⅚"],[0,"⅛"],[0,"⅜"],[0,"⅝"],[0,"⅞"],[49,"←"],[0,"↑"],[0,"→"],[0,"↓"],[0,"↔"],[0,"↕"],[0,"↖"],[0,"↗"],[0,"↘"],[0,"↙"],[0,"↚"],[0,"↛"],[1,{v:"↝",n:824,o:"↝̸"}],[0,"↞"],[0,"↟"],[0,"↠"],[0,"↡"],[0,"↢"],[0,"↣"],[0,"↤"],[0,"↥"],[0,"↦"],[0,"↧"],[1,"↩"],[0,"↪"],[0,"↫"],[0,"↬"],[0,"↭"],[0,"↮"],[1,"↰"],[0,"↱"],[0,"↲"],[0,"↳"],[1,"↵"],[0,"↶"],[0,"↷"],[2,"↺"],[0,"↻"],[0,"↼"],[0,"↽"],[0,"↾"],[0,"↿"],[0,"⇀"],[0,"⇁"],[0,"⇂"],[0,"⇃"],[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,"⇝"],[6,"⇤"],[0,"⇥"],[15,"⇵"],[7,"⇽"],[0,"⇾"],[0,"⇿"],[0,"∀"],[0,"∁"],[0,{v:"∂",n:824,o:"∂̸"}],[0,"∃"],[0,"∄"],[0,"∅"],[1,"∇"],[0,"∈"],[0,"∉"],[1,"∋"],[0,"∌"],[2,"∏"],[0,"∐"],[0,"∑"],[0,"−"],[0,"∓"],[0,"∔"],[1,"∖"],[0,"∗"],[0,"∘"],[1,"√"],[2,"∝"],[0,"∞"],[0,"∟"],[0,{v:"∠",n:8402,o:"∠⃒"}],[0,"∡"],[0,"∢"],[0,"∣"],[0,"∤"],[0,"∥"],[0,"∦"],[0,"∧"],[0,"∨"],[0,{v:"∩",n:65024,o:"∩︀"}],[0,{v:"∪",n:65024,o:"∪︀"}],[0,"∫"],[0,"∬"],[0,"∭"],[0,"∮"],[0,"∯"],[0,"∰"],[0,"∱"],[0,"∲"],[0,"∳"],[0,"∴"],[0,"∵"],[0,"∶"],[0,"∷"],[0,"∸"],[1,"∺"],[0,"∻"],[0,{v:"∼",n:8402,o:"∼⃒"}],[0,{v:"∽",n:817,o:"∽̱"}],[0,{v:"∾",n:819,o:"∾̳"}],[0,"∿"],[0,"≀"],[0,"≁"],[0,{v:"≂",n:824,o:"≂̸"}],[0,"≃"],[0,"≄"],[0,"≅"],[0,"≆"],[0,"≇"],[0,"≈"],[0,"≉"],[0,"≊"],[0,{v:"≋",n:824,o:"≋̸"}],[0,"≌"],[0,{v:"≍",n:8402,o:"≍⃒"}],[0,{v:"≎",n:824,o:"≎̸"}],[0,{v:"≏",n:824,o:"≏̸"}],[0,{v:"≐",n:824,o:"≐̸"}],[0,"≑"],[0,"≒"],[0,"≓"],[0,"≔"],[0,"≕"],[0,"≖"],[0,"≗"],[1,"≙"],[0,"≚"],[1,"≜"],[2,"≟"],[0,"≠"],[0,{v:"≡",n:8421,o:"≡⃥"}],[0,"≢"],[1,{v:"≤",n:8402,o:"≤⃒"}],[0,{v:"≥",n:8402,o:"≥⃒"}],[0,{v:"≦",n:824,o:"≦̸"}],[0,{v:"≧",n:824,o:"≧̸"}],[0,{v:"≨",n:65024,o:"≨︀"}],[0,{v:"≩",n:65024,o:"≩︀"}],[0,{v:"≪",n:new Map(sD([[824,"≪̸"],[7577,"≪⃒"]]))}],[0,{v:"≫",n:new Map(sD([[824,"≫̸"],[7577,"≫⃒"]]))}],[0,"≬"],[0,"≭"],[0,"≮"],[0,"≯"],[0,"≰"],[0,"≱"],[0,"≲"],[0,"≳"],[0,"≴"],[0,"≵"],[0,"≶"],[0,"≷"],[0,"≸"],[0,"≹"],[0,"≺"],[0,"≻"],[0,"≼"],[0,"≽"],[0,"≾"],[0,{v:"≿",n:824,o:"≿̸"}],[0,"⊀"],[0,"⊁"],[0,{v:"⊂",n:8402,o:"⊂⃒"}],[0,{v:"⊃",n:8402,o:"⊃⃒"}],[0,"⊄"],[0,"⊅"],[0,"⊆"],[0,"⊇"],[0,"⊈"],[0,"⊉"],[0,{v:"⊊",n:65024,o:"⊊︀"}],[0,{v:"⊋",n:65024,o:"⊋︀"}],[1,"⊍"],[0,"⊎"],[0,{v:"⊏",n:824,o:"⊏̸"}],[0,{v:"⊐",n:824,o:"⊐̸"}],[0,"⊑"],[0,"⊒"],[0,{v:"⊓",n:65024,o:"⊓︀"}],[0,{v:"⊔",n:65024,o:"⊔︀"}],[0,"⊕"],[0,"⊖"],[0,"⊗"],[0,"⊘"],[0,"⊙"],[0,"⊚"],[0,"⊛"],[1,"⊝"],[0,"⊞"],[0,"⊟"],[0,"⊠"],[0,"⊡"],[0,"⊢"],[0,"⊣"],[0,"⊤"],[0,"⊥"],[1,"⊧"],[0,"⊨"],[0,"⊩"],[0,"⊪"],[0,"⊫"],[0,"⊬"],[0,"⊭"],[0,"⊮"],[0,"⊯"],[0,"⊰"],[1,"⊲"],[0,"⊳"],[0,{v:"⊴",n:8402,o:"⊴⃒"}],[0,{v:"⊵",n:8402,o:"⊵⃒"}],[0,"⊶"],[0,"⊷"],[0,"⊸"],[0,"⊹"],[0,"⊺"],[0,"⊻"],[1,"⊽"],[0,"⊾"],[0,"⊿"],[0,"⋀"],[0,"⋁"],[0,"⋂"],[0,"⋃"],[0,"⋄"],[0,"⋅"],[0,"⋆"],[0,"⋇"],[0,"⋈"],[0,"⋉"],[0,"⋊"],[0,"⋋"],[0,"⋌"],[0,"⋍"],[0,"⋎"],[0,"⋏"],[0,"⋐"],[0,"⋑"],[0,"⋒"],[0,"⋓"],[0,"⋔"],[0,"⋕"],[0,"⋖"],[0,"⋗"],[0,{v:"⋘",n:824,o:"⋘̸"}],[0,{v:"⋙",n:824,o:"⋙̸"}],[0,{v:"⋚",n:65024,o:"⋚︀"}],[0,{v:"⋛",n:65024,o:"⋛︀"}],[2,"⋞"],[0,"⋟"],[0,"⋠"],[0,"⋡"],[0,"⋢"],[0,"⋣"],[2,"⋦"],[0,"⋧"],[0,"⋨"],[0,"⋩"],[0,"⋪"],[0,"⋫"],[0,"⋬"],[0,"⋭"],[0,"⋮"],[0,"⋯"],[0,"⋰"],[0,"⋱"],[0,"⋲"],[0,"⋳"],[0,"⋴"],[0,{v:"⋵",n:824,o:"⋵̸"}],[0,"⋶"],[0,"⋷"],[1,{v:"⋹",n:824,o:"⋹̸"}],[0,"⋺"],[0,"⋻"],[0,"⋼"],[0,"⋽"],[0,"⋾"],[6,"⌅"],[0,"⌆"],[1,"⌈"],[0,"⌉"],[0,"⌊"],[0,"⌋"],[0,"⌌"],[0,"⌍"],[0,"⌎"],[0,"⌏"],[0,"⌐"],[1,"⌒"],[0,"⌓"],[1,"⌕"],[0,"⌖"],[5,"⌜"],[0,"⌝"],[0,"⌞"],[0,"⌟"],[2,"⌢"],[0,"⌣"],[9,"⌭"],[0,"⌮"],[7,"⌶"],[6,"⌽"],[1,"⌿"],[60,"⍼"],[51,"⎰"],[0,"⎱"],[2,"⎴"],[0,"⎵"],[0,"⎶"],[37,"⏜"],[0,"⏝"],[0,"⏞"],[0,"⏟"],[2,"⏢"],[4,"⏧"],[59,"␣"],[164,"Ⓢ"],[55,"─"],[1,"│"],[9,"┌"],[3,"┐"],[3,"└"],[3,"┘"],[3,"├"],[7,"┤"],[7,"┬"],[7,"┴"],[7,"┼"],[19,"═"],[0,"║"],[0,"╒"],[0,"╓"],[0,"╔"],[0,"╕"],[0,"╖"],[0,"╗"],[0,"╘"],[0,"╙"],[0,"╚"],[0,"╛"],[0,"╜"],[0,"╝"],[0,"╞"],[0,"╟"],[0,"╠"],[0,"╡"],[0,"╢"],[0,"╣"],[0,"╤"],[0,"╥"],[0,"╦"],[0,"╧"],[0,"╨"],[0,"╩"],[0,"╪"],[0,"╫"],[0,"╬"],[19,"▀"],[3,"▄"],[3,"█"],[8,"░"],[0,"▒"],[0,"▓"],[13,"□"],[8,"▪"],[0,"▫"],[1,"▭"],[0,"▮"],[2,"▱"],[1,"△"],[0,"▴"],[0,"▵"],[2,"▸"],[0,"▹"],[3,"▽"],[0,"▾"],[0,"▿"],[2,"◂"],[0,"◃"],[6,"◊"],[0,"○"],[32,"◬"],[2,"◯"],[8,"◸"],[0,"◹"],[0,"◺"],[0,"◻"],[0,"◼"],[8,"★"],[0,"☆"],[7,"☎"],[49,"♀"],[1,"♂"],[29,"♠"],[2,"♣"],[1,"♥"],[0,"♦"],[3,"♪"],[2,"♭"],[0,"♮"],[0,"♯"],[163,"✓"],[3,"✗"],[8,"✠"],[21,"✶"],[33,"❘"],[25,"❲"],[0,"❳"],[84,"⟈"],[0,"⟉"],[28,"⟦"],[0,"⟧"],[0,"⟨"],[0,"⟩"],[0,"⟪"],[0,"⟫"],[0,"⟬"],[0,"⟭"],[7,"⟵"],[0,"⟶"],[0,"⟷"],[0,"⟸"],[0,"⟹"],[0,"⟺"],[1,"⟼"],[2,"⟿"],[258,"⤂"],[0,"⤃"],[0,"⤄"],[0,"⤅"],[6,"⤌"],[0,"⤍"],[0,"⤎"],[0,"⤏"],[0,"⤐"],[0,"⤑"],[0,"⤒"],[0,"⤓"],[2,"⤖"],[2,"⤙"],[0,"⤚"],[0,"⤛"],[0,"⤜"],[0,"⤝"],[0,"⤞"],[0,"⤟"],[0,"⤠"],[2,"⤣"],[0,"⤤"],[0,"⤥"],[0,"⤦"],[0,"⤧"],[0,"⤨"],[0,"⤩"],[0,"⤪"],[8,{v:"⤳",n:824,o:"⤳̸"}],[1,"⤵"],[0,"⤶"],[0,"⤷"],[0,"⤸"],[0,"⤹"],[2,"⤼"],[0,"⤽"],[7,"⥅"],[2,"⥈"],[0,"⥉"],[0,"⥊"],[0,"⥋"],[2,"⥎"],[0,"⥏"],[0,"⥐"],[0,"⥑"],[0,"⥒"],[0,"⥓"],[0,"⥔"],[0,"⥕"],[0,"⥖"],[0,"⥗"],[0,"⥘"],[0,"⥙"],[0,"⥚"],[0,"⥛"],[0,"⥜"],[0,"⥝"],[0,"⥞"],[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,"⥹"],[1,"⥻"],[0,"⥼"],[0,"⥽"],[0,"⥾"],[0,"⥿"],[5,"⦅"],[0,"⦆"],[4,"⦋"],[0,"⦌"],[0,"⦍"],[0,"⦎"],[0,"⦏"],[0,"⦐"],[0,"⦑"],[0,"⦒"],[0,"⦓"],[0,"⦔"],[0,"⦕"],[0,"⦖"],[3,"⦚"],[1,"⦜"],[0,"⦝"],[6,"⦤"],[0,"⦥"],[0,"⦦"],[0,"⦧"],[0,"⦨"],[0,"⦩"],[0,"⦪"],[0,"⦫"],[0,"⦬"],[0,"⦭"],[0,"⦮"],[0,"⦯"],[0,"⦰"],[0,"⦱"],[0,"⦲"],[0,"⦳"],[0,"⦴"],[0,"⦵"],[0,"⦶"],[0,"⦷"],[1,"⦹"],[1,"⦻"],[0,"⦼"],[1,"⦾"],[0,"⦿"],[0,"⧀"],[0,"⧁"],[0,"⧂"],[0,"⧃"],[0,"⧄"],[0,"⧅"],[3,"⧉"],[3,"⧍"],[0,"⧎"],[0,{v:"⧏",n:824,o:"⧏̸"}],[0,{v:"⧐",n:824,o:"⧐̸"}],[11,"⧜"],[0,"⧝"],[0,"⧞"],[4,"⧣"],[0,"⧤"],[0,"⧥"],[5,"⧫"],[8,"⧴"],[1,"⧶"],[9,"⨀"],[0,"⨁"],[0,"⨂"],[1,"⨄"],[1,"⨆"],[5,"⨌"],[0,"⨍"],[2,"⨐"],[0,"⨑"],[0,"⨒"],[0,"⨓"],[0,"⨔"],[0,"⨕"],[0,"⨖"],[0,"⨗"],[10,"⨢"],[0,"⨣"],[0,"⨤"],[0,"⨥"],[0,"⨦"],[0,"⨧"],[1,"⨩"],[0,"⨪"],[2,"⨭"],[0,"⨮"],[0,"⨯"],[0,"⨰"],[0,"⨱"],[1,"⨳"],[0,"⨴"],[0,"⨵"],[0,"⨶"],[0,"⨷"],[0,"⨸"],[0,"⨹"],[0,"⨺"],[0,"⨻"],[0,"⨼"],[2,"⨿"],[0,"⩀"],[1,"⩂"],[0,"⩃"],[0,"⩄"],[0,"⩅"],[0,"⩆"],[0,"⩇"],[0,"⩈"],[0,"⩉"],[0,"⩊"],[0,"⩋"],[0,"⩌"],[0,"⩍"],[2,"⩐"],[2,"⩓"],[0,"⩔"],[0,"⩕"],[0,"⩖"],[0,"⩗"],[0,"⩘"],[1,"⩚"],[0,"⩛"],[0,"⩜"],[0,"⩝"],[1,"⩟"],[6,"⩦"],[3,"⩪"],[2,{v:"⩭",n:824,o:"⩭̸"}],[0,"⩮"],[0,"⩯"],[0,{v:"⩰",n:824,o:"⩰̸"}],[0,"⩱"],[0,"⩲"],[0,"⩳"],[0,"⩴"],[0,"⩵"],[1,"⩷"],[0,"⩸"],[0,"⩹"],[0,"⩺"],[0,"⩻"],[0,"⩼"],[0,{v:"⩽",n:824,o:"⩽̸"}],[0,{v:"⩾",n:824,o:"⩾̸"}],[0,"⩿"],[0,"⪀"],[0,"⪁"],[0,"⪂"],[0,"⪃"],[0,"⪄"],[0,"⪅"],[0,"⪆"],[0,"⪇"],[0,"⪈"],[0,"⪉"],[0,"⪊"],[0,"⪋"],[0,"⪌"],[0,"⪍"],[0,"⪎"],[0,"⪏"],[0,"⪐"],[0,"⪑"],[0,"⪒"],[0,"⪓"],[0,"⪔"],[0,"⪕"],[0,"⪖"],[0,"⪗"],[0,"⪘"],[0,"⪙"],[0,"⪚"],[2,"⪝"],[0,"⪞"],[0,"⪟"],[0,"⪠"],[0,{v:"⪡",n:824,o:"⪡̸"}],[0,{v:"⪢",n:824,o:"⪢̸"}],[1,"⪤"],[0,"⪥"],[0,"⪦"],[0,"⪧"],[0,"⪨"],[0,"⪩"],[0,"⪪"],[0,"⪫"],[0,{v:"⪬",n:65024,o:"⪬︀"}],[0,{v:"⪭",n:65024,o:"⪭︀"}],[0,"⪮"],[0,{v:"⪯",n:824,o:"⪯̸"}],[0,{v:"⪰",n:824,o:"⪰̸"}],[2,"⪳"],[0,"⪴"],[0,"⪵"],[0,"⪶"],[0,"⪷"],[0,"⪸"],[0,"⪹"],[0,"⪺"],[0,"⪻"],[0,"⪼"],[0,"⪽"],[0,"⪾"],[0,"⪿"],[0,"⫀"],[0,"⫁"],[0,"⫂"],[0,"⫃"],[0,"⫄"],[0,{v:"⫅",n:824,o:"⫅̸"}],[0,{v:"⫆",n:824,o:"⫆̸"}],[0,"⫇"],[0,"⫈"],[2,{v:"⫋",n:65024,o:"⫋︀"}],[0,{v:"⫌",n:65024,o:"⫌︀"}],[2,"⫏"],[0,"⫐"],[0,"⫑"],[0,"⫒"],[0,"⫓"],[0,"⫔"],[0,"⫕"],[0,"⫖"],[0,"⫗"],[0,"⫘"],[0,"⫙"],[0,"⫚"],[0,"⫛"],[8,"⫤"],[1,"⫦"],[0,"⫧"],[0,"⫨"],[0,"⫩"],[1,"⫫"],[0,"⫬"],[0,"⫭"],[0,"⫮"],[0,"⫯"],[0,"⫰"],[0,"⫱"],[0,"⫲"],[0,"⫳"],[9,{v:"⫽",n:8421,o:"⫽⃥"}],[44343,{n:new Map(sD([[56476,"𝒜"],[1,"𝒞"],[0,"𝒟"],[2,"𝒢"],[2,"𝒥"],[0,"𝒦"],[2,"𝒩"],[0,"𝒪"],[0,"𝒫"],[0,"𝒬"],[1,"𝒮"],[0,"𝒯"],[0,"𝒰"],[0,"𝒱"],[0,"𝒲"],[0,"𝒳"],[0,"𝒴"],[0,"𝒵"],[0,"𝒶"],[0,"𝒷"],[0,"𝒸"],[0,"𝒹"],[1,"𝒻"],[1,"𝒽"],[0,"𝒾"],[0,"𝒿"],[0,"𝓀"],[0,"𝓁"],[0,"𝓂"],[0,"𝓃"],[1,"𝓅"],[0,"𝓆"],[0,"𝓇"],[0,"𝓈"],[0,"𝓉"],[0,"𝓊"],[0,"𝓋"],[0,"𝓌"],[0,"𝓍"],[0,"𝓎"],[0,"𝓏"],[52,"𝔄"],[0,"𝔅"],[1,"𝔇"],[0,"𝔈"],[0,"𝔉"],[0,"𝔊"],[2,"𝔍"],[0,"𝔎"],[0,"𝔏"],[0,"𝔐"],[0,"𝔑"],[0,"𝔒"],[0,"𝔓"],[0,"𝔔"],[1,"𝔖"],[0,"𝔗"],[0,"𝔘"],[0,"𝔙"],[0,"𝔚"],[0,"𝔛"],[0,"𝔜"],[1,"𝔞"],[0,"𝔟"],[0,"𝔠"],[0,"𝔡"],[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,"𝔾"],[1,"𝕀"],[0,"𝕁"],[0,"𝕂"],[0,"𝕃"],[0,"𝕄"],[1,"𝕆"],[3,"𝕊"],[0,"𝕋"],[0,"𝕌"],[0,"𝕍"],[0,"𝕎"],[0,"𝕏"],[0,"𝕐"],[1,"𝕒"],[0,"𝕓"],[0,"𝕔"],[0,"𝕕"],[0,"𝕖"],[0,"𝕗"],[0,"𝕘"],[0,"𝕙"],[0,"𝕚"],[0,"𝕛"],[0,"𝕜"],[0,"𝕝"],[0,"𝕞"],[0,"𝕟"],[0,"𝕠"],[0,"𝕡"],[0,"𝕢"],[0,"𝕣"],[0,"𝕤"],[0,"𝕥"],[0,"𝕦"],[0,"𝕧"],[0,"𝕨"],[0,"𝕩"],[0,"𝕪"],[0,"𝕫"]]))}],[8906,"ff"],[0,"fi"],[0,"fl"],[0,"ffi"],[0,"ffl"]]));var NG=/["&'<>$\x80-\uFFFF]/g,k3e=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),P3e=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function oI(t){let e="",r=0,n;for(;(n=NG.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=k3e.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${P3e(t,s).toString(16)};`,r=NG.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function OG(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var D3e=OG(/[&<>'"]/g,k3e),iD=OG(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),aD=OG(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var B3e;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(B3e||(B3e={}));var L3e;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(L3e||(L3e={}));var $3e=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),U3e=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t]));var sJt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function iJt(t){return t.replace(/"/g,""")}function aJt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?iJt:e.xmlMode||e.encodeEntities!=="utf8"?oI:iD;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=U3e.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var F3e=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function DG(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s<r.length;s++)n+=oJt(r[s],e);return n}var oD=DG;function oJt(t,e){switch(t.type){case b3e:return DG(t.children,e);case w3e:case E3e:return dJt(t);case v3e:return mJt(t);case T3e:return pJt(t);case S3e:case I3e:case C3e:return lJt(t,e);case _3e:return fJt(t,e)}}var cJt=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),uJt=new Set(["svg","math"]);function lJt(t,e){var r;e.xmlMode==="foreign"&&(t.name=(r=$3e.get(t.name))!==null&&r!==void 0?r:t.name,t.parent&&cJt.has(t.parent.name)&&(e={...e,xmlMode:!1})),!e.xmlMode&&uJt.has(t.name)&&(e={...e,xmlMode:"foreign"});let n=`<${t.name}`,s=aJt(t.attribs,e);return s&&(n+=` ${s}`),t.children.length===0&&(e.xmlMode?e.selfClosingTags!==!1:e.selfClosingTags&&F3e.has(t.name))?(e.xmlMode||(n+=" "),n+="/>"):(n+=">",t.children.length>0&&(n+=DG(t.children,e)),(e.xmlMode||!F3e.has(t.name))&&(n+=`</${t.name}>`)),n}function dJt(t){return`<${t.data}>`}function fJt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&sJt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?oI(n):aD(n)),n}function pJt(t){return`<![CDATA[${t.children[0].data}]]>`}function mJt(t){return`<!--${t.data}-->`}function q3e(t,e){return oD(t,e)}function hJt(t,e){return tn(t)?t.children.map(r=>q3e(r,e)).join(""):""}function cD(t){return Array.isArray(t)?t.map(cD).join(""):it(t)?t.name==="br"?`
|
|
`:cD(t.children):Zx(t)?cD(t.children):no(t)?t.data:""}function af(t){return Array.isArray(t)?t.map(af).join(""):tn(t)&&!Hh(t)?af(t.children):no(t)?t.data:""}function cI(t){return Array.isArray(t)?t.map(cI).join(""):tn(t)&&(t.type===Pr.Tag||Zx(t))?cI(t.children):no(t)?t.data:""}function rb(t){return tn(t)?t.children:[]}function j3e(t){return t.parent||null}function BG(t){let e=j3e(t);if(e!=null)return rb(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function gJt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function yJt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function AJt(t){return t.name}function uD(t){let{next:e}=t;for(;e!==null&&!it(e);)({next:e}=e);return e}function lD(t){let{prev:e}=t;for(;e!==null&&!it(e);)({prev:e}=e);return e}function of(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function xJt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function bJt(t,e){if(of(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function _Jt(t,e){of(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function EJt(t,e){if(of(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function vJt(t,e){of(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function nb(t,e,r=!0,n=1/0){return dD(t,Array.isArray(e)?e:[e],r,n)}function dD(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(t(o)&&(s.push(o),--n<=0))return s;r&&tn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function SJt(t,e){return e.find(t)}function fD(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s<n.length;s++){let i=n[s];if(it(i)&&t(i))return i;if(r&&tn(i)&&i.children.length>0){let a=fD(t,i.children,!0);if(a)return a}}return null}function Q3e(t,e){return(Array.isArray(e)?e:[e]).some(r=>it(r)&&t(r)||tn(r)&&Q3e(t,r.children))}function IJt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];it(i)&&t(i)&&r.push(i),tn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var pD={tag_name(t){return typeof t=="function"?e=>it(e)&&t(e.name):t==="*"?it:e=>it(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>no(e)&&t(e.data):e=>no(e)&&e.data===t}};function LG(t,e){return typeof e=="function"?r=>it(r)&&e(r.attribs[t]):r=>it(r)&&r.attribs[t]===e}function CJt(t,e){return r=>t(r)||e(r)}function H3e(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(pD,r)?pD[r](n):LG(r,n)});return e.length===0?null:e.reduce(CJt)}function TJt(t,e){let r=H3e(t);return r?r(e):!0}function wJt(t,e,r,n=1/0){let s=H3e(t);return s?nb(s,e,r,n):[]}function RJt(t,e,r=!0){return Array.isArray(e)||(e=[e]),fD(LG("id",t),e,r)}function Gh(t,e,r=!0,n=1/0){return nb(pD.tag_name(t),e,r,n)}function NJt(t,e,r=!0,n=1/0){return nb(LG("class",t),e,r,n)}function OJt(t,e,r=!0,n=1/0){return nb(pD.tag_type(t),e,r,n)}function kJt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var Sc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(Sc||(Sc={}));function G3e(t,e){let r=[],n=[];if(t===e)return 0;let s=tn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=tn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;a<i&&r[a]===n[a];)a++;if(a===0)return Sc.DISCONNECTED;let o=r[a-1],c=o.children,u=r[a],l=n[a];return c.indexOf(u)>c.indexOf(l)?o===e?Sc.FOLLOWING|Sc.CONTAINED_BY:Sc.FOLLOWING:o===t?Sc.PRECEDING|Sc.CONTAINS:Sc.PRECEDING}function b0(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=G3e(e,r);return n&Sc.PRECEDING?-1:n&Sc.FOLLOWING?1:0}),t}function MG(t){let e=mD(MJt,t);return e?e.name==="feed"?PJt(e):DJt(e):null}function PJt(t){var e;let r=t.children,n={type:"atom",items:Gh("entry",r).map(a=>{var o;let{children:c}=a,u={media:z3e(c)};so(u,"id","id",c),so(u,"title","title",c);let l=(o=mD("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=_0("summary",c)||_0("content",c);d&&(u.description=d);let f=_0("updated",c);return f&&(u.pubDate=new Date(f)),u})};so(n,"id","id",r),so(n,"title","title",r);let s=(e=mD("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),so(n,"description","subtitle",r);let i=_0("updated",r);return i&&(n.updated=new Date(i)),so(n,"author","email",r,!0),n}function DJt(t){var e,r;let n=(r=(e=mD("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Gh("item",t.children).map(a=>{let{children:o}=a,c={media:z3e(o)};so(c,"id","guid",o),so(c,"title","title",o),so(c,"link","link",o),so(c,"description","description",o);let u=_0("pubDate",o)||_0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};so(s,"title","title",n),so(s,"link","link",n),so(s,"description","description",n);let i=_0("lastBuildDate",n);return i&&(s.updated=new Date(i)),so(s,"author","managingEditor",n,!0),s}var BJt=["url","type","lang"],LJt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function z3e(t){return Gh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of BJt)r[s]&&(n[s]=r[s]);for(let s of LJt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function mD(t,e){return Gh(t,e,!0,1)[0]}function _0(t,e,r=!1){return af(Gh(t,e,r,1)).trim()}function so(t,e,r,n,s=!1){let i=_0(r,n,s);i&&(t[e]=i)}function MJt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function V3e(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function WJt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function WG(t,e){let r=WJt(t)?(e=t,void 0):t,n={...eI,...this===null||this===void 0?void 0:this._options,...tI(e??{})};return V3e(this,r,n)}function $G(t){let e={...this._options,xmlMode:!0};return V3e(this,t,e)}function cf(t){let e=t||(this?this.root():[]),r="";for(let n=0;n<e.length;n++)r+=af(e[n]);return r}function $Jt(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,eI,!1);return r||n("script").remove(),n.root()[0].children.slice()}function UJt(){return this(this._root)}function UG(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 FJt(t,e){if(!K3e(t)||!K3e(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 K3e(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 QG={};os(QG,{addClass:()=>nDe,attr:()=>jJt,data:()=>HJt,hasClass:()=>KJt,prop:()=>QJt,removeAttr:()=>zJt,removeClass:()=>sDe,toggleClass:()=>iDe,val:()=>GJt});function ko(t){return t.cheerio!=null}function Y3e(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function J3e(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function pn(t,e){let r=t.length;for(let n=0;n<r;n++)e(t[n],n);return t}function hD(t){let e="length"in t?Array.prototype.map.call(t,n=>iI(n,!0)):[iI(t,!0)],r=new Oo(e);return e.forEach(n=>{n.parent=r}),e}var zh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(zh||(zh={}));function uI(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=zh.LowerA&&r<=zh.LowerZ||r>=zh.UpperA&&r<=zh.UpperZ||r===zh.Exclamation)&&t.includes(">",e+2)}var sb=Object.prototype.hasOwnProperty,lI=/\s+/,FG="data-",X3e={null:null,true:!0,false:!1},jG=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,qJt=/^{[^]*}$|^\[[^]*]$/;function gD(t,e,r){var n;if(!(!t||!it(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(sb.call(t.attribs,e))return!r&&jG.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return cf(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function ib(t,e,r){r===null?rDe(t,e):t.attribs[e]=`${r}`}function jJt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return pn(this,(r,n)=>{it(r)&&ib(r,t,e.call(r,n,r.attribs[t]))})}return pn(this,r=>{it(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];ib(r,n,s)}):ib(r,t,e))})}return arguments.length>1?this:gD(this[0],t,this.options.xmlMode)}function Z3e(t,e,r){return e in t?t[e]:!r&&jG.test(e)?gD(t,e,!1)!==void 0:gD(t,e,r)}function qG(t,e,r,n){e in t?t[e]=r:ib(t,e,!n&&jG.test(e)?r?"":null:`${r}`)}function QJt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!it(n))return;switch(t){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return cI(n);case"textContent":return af(n);case"outerHTML":return this.clone().wrap("<container />").parent().html();case"innerHTML":return this.html();default:return Z3e(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return pn(this,(n,s)=>{it(n)&&qG(n,t,e.call(n,s,Z3e(n,t,this.options.xmlMode)),this.options.xmlMode)})}return pn(this,n=>{it(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];qG(n,s,i,this.options.xmlMode)}):qG(n,t,e,this.options.xmlMode))})}}function eDe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function tDe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith(FG)),n=r.map(i=>Y3e(i.slice(FG.length)))):(r=[FG+J3e(e)],n=[e]);for(let i=0;i<r.length;++i){let a=r[i],o=n[i];if(sb.call(t.attribs,a)&&!sb.call(t.data,o)){if(s=t.attribs[a],sb.call(X3e,s))s=X3e[s];else if(s===String(Number(s)))s=Number(s);else if(qJt.test(s))try{s=JSON.parse(s)}catch{}t.data[o]=s}}return e==null?t.data:s}function HJt(t,e){var r;let n=this[0];if(!n||!it(n))return;let s=n;return(r=s.data)!==null&&r!==void 0||(s.data={}),t?typeof t=="object"||e!==void 0?(pn(this,i=>{it(i)&&(typeof t=="object"?eDe(i,t):eDe(i,t,e))}),this):sb.call(s.data,t)?s.data[t]:tDe(s,t):tDe(s)}function GJt(t){let e=arguments.length===0,r=this[0];if(!r||!it(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;i<s.length;i++)this.find(`option[value="${s[i]}"]`).attr("selected","");return this}return this.attr("multiple")?n.toArray().map(s=>cf(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function rDe(t,e){!t.attribs||!sb.call(t.attribs,e)||delete t.attribs[e]}function yD(t){return t?t.trim().split(lI):[]}function zJt(t){let e=yD(t);for(let r=0;r<e.length;r++)pn(this,n=>{it(n)&&rDe(n,e[r])});return this}function KJt(t){return this.toArray().some(e=>{let r=it(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||lI.test(r[n-1]))&&(s===r.length||lI.test(r[s])))return!0}return!1})}function nDe(t){if(typeof t=="function")return pn(this,(n,s)=>{if(it(n)){let i=n.attribs.class||"";nDe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(lI),r=this.length;for(let n=0;n<r;n++){let s=this[n];if(!it(s))continue;let i=gD(s,"class",!1);if(!i)ib(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)}ib(s,"class",a.trim())}}return this}function sDe(t){if(typeof t=="function")return pn(this,(s,i)=>{it(s)&&sDe.call([s],t.call(s,i,s.attribs.class||""))});let e=yD(t),r=e.length,n=arguments.length===0;return pn(this,s=>{if(it(s))if(n)s.attribs.class="";else{let i=yD(s.attribs.class),a=!1;for(let o=0;o<r;o++){let c=i.indexOf(e[o]);c>=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function iDe(t,e){if(typeof t=="function")return pn(this,(a,o)=>{it(a)&&iDe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(lI),n=r.length,s=typeof e=="boolean"?e?1:-1:0,i=this.length;for(let a=0;a<i;a++){let o=this[a];if(!it(o))continue;let c=yD(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 pz={};os(pz,{add:()=>rZt,addBack:()=>nZt,children:()=>UXt,closest:()=>kXt,contents:()=>FXt,each:()=>qXt,end:()=>tZt,eq:()=>YXt,filter:()=>QXt,filterArray:()=>fz,find:()=>wXt,first:()=>KXt,get:()=>JXt,has:()=>zXt,index:()=>ZXt,is:()=>HXt,last:()=>VXt,map:()=>jXt,next:()=>PXt,nextAll:()=>DXt,nextUntil:()=>BXt,not:()=>GXt,parent:()=>RXt,parents:()=>NXt,parentsUntil:()=>OXt,prev:()=>LXt,prevAll:()=>MXt,prevUntil:()=>WXt,siblings:()=>$Xt,slice:()=>eZt,toArray:()=>XXt});var ao=Ce(ub(),1);var rz=Ce(S0(),1);var gu=Ce(ub(),1),lf=Ce(S0(),1);var Aa=Ce(ub(),1),bDe=new Map([[Aa.SelectorType.Universal,50],[Aa.SelectorType.Tag,30],[Aa.SelectorType.Attribute,1],[Aa.SelectorType.Pseudo,0]]);function fI(t){return!bDe.has(t.type)}var uXt=new Map([[Aa.AttributeAction.Exists,10],[Aa.AttributeAction.Equals,8],[Aa.AttributeAction.Not,7],[Aa.AttributeAction.Start,6],[Aa.AttributeAction.End,6],[Aa.AttributeAction.Any,5]]);function GG(t){let e=t.map(_De);for(let r=1;r<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 _De(t){var e,r;let n=(e=bDe.get(t.type))!==null&&e!==void 0?e:-1;return t.type===Aa.SelectorType.Attribute?(n=(r=uXt.get(t.action))!==null&&r!==void 0?r:4,t.action===Aa.AttributeAction.Equals&&t.name==="id"&&(n=9),t.ignoreCase&&(n>>=1)):t.type===Aa.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(_De)))),n<0&&(n=0)):n=2:n=3),n}var pI=Ce(S0(),1),lXt=/[-[\]{}()*+?.,\\^$|#\s]/g;function EDe(t){return t.replace(lXt,"\\$&")}var dXt=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);function Kh(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&dXt.has(t.name)}var vDe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Kh(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Kh(e,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return pI.default.falseFunc;let a=new RegExp(`(?:^|\\s)${EDe(i)}(?:$|\\s)`,Kh(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?pI.default.falseFunc:Kh(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?pI.default.falseFunc:Kh(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return pI.default.falseFunc;if(Kh(e,r)){let a=new RegExp(EDe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Kh(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var TDe=Ce(ub(),1);var fXt=new Set([9,10,12,13,32]),SDe=48,pXt=57;function IDe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e<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)>=SDe&&t.charCodeAt(e)<=pXt;)u=u*10+(t.charCodeAt(e)-SDe),e++;return e===c?null:u}function o(){for(;e<t.length&&fXt.has(t.charCodeAt(e));)e++}}var zG=Ce(S0(),1);function CDe(t){let e=t[0],r=t[1]-1;if(r<0&&e<=0)return zG.default.falseFunc;if(e===-1)return i=>i<=r;if(e===0)return i=>i===r;if(e===1)return r<0?zG.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function lb(t){return CDe(IDe(t))}var io=Ce(S0(),1);function bD(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var db={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<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=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=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=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<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=lb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?bD(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=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?db.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:KG("isHovered"),visited:KG("isVisited"),active:KG("isActive")};function KG(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?io.default.falseFunc:function(o){return i(o)&&r(o)}}}var mI={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i<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 VG(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var _D={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is(
|
|
:is(button, input, select, textarea, optgroup, option)[disabled],
|
|
optgroup[disabled] > option,
|
|
fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *)
|
|
)`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"};var Ic=Ce(S0(),1);var XG={};function ZG(t,e){return t===Ic.default.falseFunc?Ic.default.falseFunc:r=>e.isTag(r)&&t(r)}function ez(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function JG(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var YG=(t,e,r,n,s)=>{let i=s(e,JG(r),n);return i===Ic.default.trueFunc?t:i===Ic.default.falseFunc?Ic.default.falseFunc:a=>i(a)&&t(a)},ED={is:YG,matches:YG,where:YG,not(t,e,r,n,s){let i=s(e,JG(r),n);return i===Ic.default.falseFunc?t:i===Ic.default.trueFunc?Ic.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=JG(r);a.relativeSelector=!0;let o=e.some(l=>l.some(fI))?[XG]:void 0,c=s(e,a,o);if(c===Ic.default.falseFunc)return Ic.default.falseFunc;let u=ZG(c,i);if(o&&c!==Ic.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...ez(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function wDe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in ED))throw new Error(`Unknown pseudo-class :${a}(${o})`);return ED[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:_D[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,TDe.parse)(u);return ED.is(t,l,r,n,s)}if(typeof c=="function")return VG(c,a,o,1),l=>c(l,o)&&t(l);if(a in db)return db[a](t,o,r,n);if(a in mI){let l=mI[a];return VG(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var Cc=Ce(ub(),1);function tz(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function RDe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case Cc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case Cc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case Cc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),vDe[e.action](t,e,r)}case Cc.SelectorType.Pseudo:return wDe(t,e,r,n,s);case Cc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case Cc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=tz(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=tz(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=tz(u,i));return!1};case Cc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case Cc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case Cc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;l<u.length;l++){let d=u[l];if(a(c,d))break;if(i.isTag(d)&&t(d))return!0}return!1};case Cc.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 Cc.SelectorType.Universal:{if(e.namespace!=null&&e.namespace!=="*")throw new Error("Namespaced universal selectors are not yet supported by css-select");return t}}}function NDe(t,e,r){let n=vD(t,e,r);return ZG(n,e.adapter)}function vD(t,e,r){let n=typeof t=="string"?(0,gu.parse)(t):t;return SD(n,e,r)}function ODe(t){return t.type===gu.SelectorType.Pseudo&&(t.name==="scope"||Array.isArray(t.data)&&t.data.some(e=>e.some(ODe)))}var mXt={type:gu.SelectorType.Descendant},hXt={type:"_flexibleDescendant"},gXt={type:gu.SelectorType.Pseudo,name:"scope",data:null};function yXt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===XG||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&fI(s[0])&&s[0].type!==gu.SelectorType.Descendant))if(n&&!s.some(ODe))s.unshift(mXt);else continue;s.unshift(gXt)}}function SD(t,e,r){var n;t.forEach(GG),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)yXt(t,e,i);else if(t.some(c=>c.length>0&&fI(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==gu.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===gu.SelectorType.Descendant?c[1]=hXt:(l.type===gu.SelectorType.Adjacent||l.type===gu.SelectorType.Sibling)&&(a=!0))}return AXt(c,e,i)}).reduce(xXt,lf.default.falseFunc);return o.shouldTestNextSiblings=a,o}function AXt(t,e,r){var n;return t.reduce((s,i)=>s===lf.default.falseFunc?lf.default.falseFunc:RDe(s,i,e,r,SD),(n=e.rootFunc)!==null&&n!==void 0?n:lf.default.trueFunc)}function xXt(t,e){return e===lf.default.falseFunc||t===lf.default.trueFunc?t:t===lf.default.falseFunc||e===lf.default.trueFunc?e:function(n){return t(n)||e(n)}}var kDe=(t,e)=>t===e,bXt={adapter:E0,equals:kDe};function PDe(t){var e,r,n,s;let i=t??bXt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=E0),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:kDe),i}function nz(t){return function(r,n,s){let i=PDe(n);return t(r,i,s)}}var RKr=nz(NDe),NKr=nz(vD),ID=nz(SD);function DDe(t){return function(r,n,s){let i=PDe(s);typeof r!="function"&&(r=vD(r,i,n));let a=CD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function CD(t,e,r=!1){return r&&(t=_Xt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function _Xt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;s<n;s++){let i=ez(r[s],e);r.push(...i)}return r}var OKr=DDe((t,e,r)=>t===rz.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),kKr=DDe((t,e,r)=>t===rz.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var wD=Ce(S0(),1);var EXt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function fb(t){return t.type!=="pseudo"?!1:EXt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(fb)):!1}function BDe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}function LDe(t){for(;t.parent;)t=t.parent;return t}function TD(t){let e=[],r=[];for(let n of t)n.some(fb)?e.push(n):r.push(n);return[r,e]}var vXt={type:ao.SelectorType.Universal,namespace:null},SXt={type:ao.SelectorType.Pseudo,name:"scope",data:null};function az(t,e,r={}){return oz([t],e,r)}function oz(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=TD((0,ao.parse)(e));return n.length>0&&t.some(ID(n,r))||s.some(i=>WDe(i,t,r).length>0)}function IXt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)<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(MDe(r,e,n));return e.filter(a=>!i.has(a))}}}function cz(t,e,r={}){return MDe((0,ao.parse)(t),e,r)}function MDe(t,e,r){if(e.length===0)return[];let[n,s]=TD(t),i;if(n.length){let a=iz(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;a<s.length&&i?.size!==e.length;a++){let o=s[a];if((i?e.filter(l=>it(l)&&!i.has(l)):e).length===0)break;let u=WDe(o,e,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===e.length?e:e.filter(a=>i.has(a)):[]}function WDe(t,e,r){var n;if(t.some(ao.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:LDe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(SXt),RD(s,t,i,!0,e.length)}return RD(e,t,r,!1,e.length)}function $De(t,e,r={},n=1/0){if(typeof t=="function")return UDe(e,t);let[s,i]=TD((0,ao.parse)(t)),a=i.map(o=>RD(e,o,r,!0,n));return s.length&&a.push(sz(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:b0(a.reduce((o,c)=>[...o,...c]))}function RD(t,e,r,n,s){let i=e.findIndex(fb),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=BDe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?rb(t).filter(it):a.length===0?(Array.isArray(t)?t:[t]).filter(it):n||a.some(ao.isTraversal)?sz(t,[a],r,u):iz(t,[a],r)).slice(0,u),f=IXt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(ao.isTraversal);if(m){if((0,ao.isTraversal)(p[0])){let{type:h}=p[0];(h===ao.SelectorType.Sibling||h===ao.SelectorType.Adjacent)&&(f=CD(f,E0,!0)),p.unshift(vXt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==wD.trueFunc&&(r={...r,rootFunc:wD.trueFunc});return p.some(fb)?RD(f,p,r,!1,s):m?sz(f,[p],r,s):iz(f,[p],r)}function sz(t,e,r,n){let s=ID(e,r,t);return UDe(t,s,n)}function UDe(t,e,r=1/0){let n=CD(t,E0,e.shouldTestNextSiblings);return dD(s=>it(s)&&e(s),n,!0,r)}function iz(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(it);if(n.length===0)return n;let s=ID(e,r);return s===wD.trueFunc?n:n.filter(s)}var TXt=/^\s*[~+]/;function wXt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=ko(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>UG(o,a))))}let n=TXt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make($De(t,n,s))}function uz(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=fz(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}var hI=uz((t,e)=>{let r=[];for(let n=0;n<e.length;n++){let s=t(e[n]);r.push(s)}return new Array().concat(...r)}),lz=uz((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 dz(t,...e){let r=null,n=uz((s,i)=>{let a=[];return pn(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(t,...e);return function(s,i){r=typeof s=="string"?o=>az(o,s,this.options):s?gI(s):null;let a=n.call(this,i);return r=null,a}}function pb(t){return Array.from(new Set(t))}var RXt=lz(({parent:t})=>t&&!hu(t)?t:null,pb),NXt=hI(t=>{let e=[];for(;t.parent&&!hu(t.parent);)e.push(t.parent),t=t.parent;return e},b0,t=>t.reverse()),OXt=dz(({parent:t})=>t&&!hu(t)?t:null,b0,t=>t.reverse());function kXt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>az(i,t,n):gI(t);return pn(this,i=>{for(;i&&it(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var PXt=lz(t=>uD(t)),DXt=hI(t=>{let e=[];for(;t.next;)t=t.next,it(t)&&e.push(t);return e},pb),BXt=dz(t=>uD(t),pb),LXt=lz(t=>lD(t)),MXt=hI(t=>{let e=[];for(;t.prev;)t=t.prev,it(t)&&e.push(t);return e},pb),WXt=dz(t=>lD(t),pb),$Xt=hI(t=>BG(t).filter(e=>it(e)&&e!==t),b0),UXt=hI(t=>rb(t).filter(it),pb);function FXt(){let t=this.toArray().reduce((e,r)=>tn(r)?e.concat(r.children):e,[]);return this._make(t)}function qXt(t){let e=0,r=this.length;for(;e<r&&t.call(this[e],e,this[e])!==!1;)++e;return this}function jXt(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 gI(t){return typeof t=="function"?(e,r)=>t.call(e,r,e):ko(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function QXt(t){var e;return this._make(fz(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function fz(t,e,r,n){return typeof e=="string"?cz(e,t,{xmlMode:r,root:n}):t.filter(gI(e))}function HXt(t){let e=this.toArray();return typeof t=="string"?oz(e.filter(it),t,this.options):t?e.some(gI(t)):!1}function GXt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(cz(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=gI(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function zXt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function KXt(){return this.length>1?this._make(this[0]):this}function VXt(){return this.length>0?this._make(this[this.length-1]):this}function YXt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function JXt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function XXt(){return Array.prototype.slice.call(this)}function ZXt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=ko(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function eZt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function tZt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function rZt(t,e){let r=this._make(t,e),n=b0([...this.get(),...r.get()]);return this._make(n)}function nZt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var mz={};os(mz,{_makeDomArray:()=>sZt,after:()=>pZt,append:()=>oZt,appendTo:()=>iZt,before:()=>hZt,clone:()=>vZt,empty:()=>xZt,html:()=>bZt,insertAfter:()=>mZt,insertBefore:()=>gZt,prepend:()=>cZt,prependTo:()=>aZt,remove:()=>yZt,replaceWith:()=>AZt,text:()=>EZt,toString:()=>_Zt,unwrap:()=>dZt,wrap:()=>uZt,wrapAll:()=>fZt,wrapInner:()=>lZt});function FDe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&hu(a))return a;let o=new Oo([]);return I0(a,o),o}}function I0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;n<r.length;n++){let s=r[n];s.parent&&s.parent.children!==r&&of(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 sZt(t,e){return t==null?[]:ko(t)?e?hD(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?hD([t]):[t]}function qDe(t){return function(...e){let r=this.length-1;return pn(this,(n,s)=>{if(!tn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s<r);t(a,n.children,n)})}}function C0(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 iZt(t){return(ko(t)?t:this._make(t)).append(this),this}function aZt(t){return(ko(t)?t:this._make(t)).prepend(this),this}var oZt=qDe((t,e,r)=>{C0(e,e.length,0,t,r)}),cZt=qDe((t,e,r)=>{C0(e,0,0,t,r)});function jDe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s<this.length;s++){let i=this[s],a=typeof e=="function"?e.call(i,s,i):typeof e=="string"&&!uI(e)?n.find(e).clone():e,[o]=this._makeDomArray(a,s<r);if(!o||!tn(o))continue;let c=o,u=0;for(;u<c.children.length;){let l=c.children[u];it(l)?(c=l,u=0):u++}t(i,c,[o])}return this}}var uZt=jDe((t,e,r)=>{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);I0([t],e),C0(s,i,0,r,n)}),lZt=jDe((t,e,r)=>{tn(t)&&(I0(t.children,e),I0(r,t))});function dZt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function fZt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i<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 pZt(...t){let e=this.length-1;return pn(this,(r,n)=>{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);C0(i,a+1,0,c,s)})}function mZt(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||(C0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function hZt(...t){let e=this.length-1;return pn(this,(r,n)=>{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);C0(i,a,0,c,s)})}function gZt(t){let e=this._make(t);this.remove();let r=[];return pn(e,n=>{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(C0(a,o,0,s,i),r.push(...s))}),this._make(r)}function yZt(t){let e=t?this.filter(t):this;return pn(e,r=>{of(r),r.prev=r.next=r.parent=null}),this}function AZt(t){return pn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);I0(a,null);let o=s.indexOf(e);C0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function xZt(){return pn(this,t=>{tn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function bZt(t){if(t===void 0){let e=this[0];return!e||!tn(e)?null:this._render(e.children)}return pn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=ko(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;I0(r,e)})}function _Zt(){return this._render(this)}function EZt(t){return t===void 0?cf(this):typeof t=="function"?pn(this,(e,r)=>this._make(e).text(t.call(e,r,cf([e])))):pn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new vl(`${t}`);I0(r,e)})}function vZt(){return this._make(hD(this.get()))}var hz={};os(hz,{css:()=>SZt});function SZt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return pn(this,(r,n)=>{it(r)&&QDe(r,t,e,n)});if(this.length!==0)return HDe(this[0],t)}function QDe(t,e,r,n){if(typeof e=="string"){let s=HDe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=IZt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{QDe(t,s,e[s],i)})}function HDe(t,e){if(!t||!it(t))return;let r=CZt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function IZt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function CZt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var gz={};os(gz,{serialize:()=>wZt,serializeArray:()=>RZt});var GDe="input,select,textarea,keygen",TZt=/%20/g,zDe=/\r?\n/g;function wZt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(TZt,"+")}function RZt(){return this.map((t,e)=>{let r=this._make(e);return it(e)&&e.name==="form"?r.find(GDe).toArray():r.filter(GDe).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(zDe,`\r
|
|
`)})):{name:s,value:i.replace(zDe,`\r
|
|
`)}}).toArray()}var T0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s<e.length;s++)this[s]=e[s];this.length=e.length}}};T0.prototype.cheerio="[cheerio object]";T0.prototype.splice=Array.prototype.splice;T0.prototype[Symbol.iterator]=Array.prototype[Symbol.iterator];Object.assign(T0.prototype,QG,pz,mz,hz,gz);function KDe(t,e){return function r(n,s,i=!0){if(n==null)throw new Error("cheerio.load() expects a string");let a={...eI,...tI(s)},o=t(n,a,i,null);class c extends T0{_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&&ko(l))return l;let m={...a,...tI(p)},h=typeof f=="string"?[t(f,m,!1,null)]:"length"in f?f:[f],y=ko(h)?h:new c(h,null,m);if(y._root=y,!l)return new c(void 0,y,m);let g=typeof l=="string"&&uI(l)?t(l,m,!1,null).children:NZt(l)?[l]:Array.isArray(l)?l:void 0,b=new c(g,y,m);if(g)return b;if(typeof l!="string")throw new Error("Unexpected type of selector");let x=l,A=d?typeof d=="string"?uI(d)?new c([t(d,m,!1,null)],y,m):(x=`${d} ${x}`,y):ko(d)?d:new c(Array.isArray(d)?d:[d],y,m):y;return A?A.find(x):b}return Object.assign(u,v0,{load:r,_root:o,_options:a,fn:c.prototype,prototype:c.prototype}),u}}function NZt(t){return!!t.name||t.type==="root"||t.type==="text"||t.type==="comment"}var OZt=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]),En="\uFFFD",H;(function(t){t[t.EOF=-1]="EOF",t[t.NULL=0]="NULL",t[t.TABULATION=9]="TABULATION",t[t.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",t[t.LINE_FEED=10]="LINE_FEED",t[t.FORM_FEED=12]="FORM_FEED",t[t.SPACE=32]="SPACE",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.QUOTATION_MARK=34]="QUOTATION_MARK",t[t.AMPERSAND=38]="AMPERSAND",t[t.APOSTROPHE=39]="APOSTROPHE",t[t.HYPHEN_MINUS=45]="HYPHEN_MINUS",t[t.SOLIDUS=47]="SOLIDUS",t[t.DIGIT_0=48]="DIGIT_0",t[t.DIGIT_9=57]="DIGIT_9",t[t.SEMICOLON=59]="SEMICOLON",t[t.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",t[t.EQUALS_SIGN=61]="EQUALS_SIGN",t[t.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",t[t.QUESTION_MARK=63]="QUESTION_MARK",t[t.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",t[t.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",t[t.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",t[t.GRAVE_ACCENT=96]="GRAVE_ACCENT",t[t.LATIN_SMALL_A=97]="LATIN_SMALL_A",t[t.LATIN_SMALL_Z=122]="LATIN_SMALL_Z"})(H||(H={}));var xa={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"};function ND(t){return t>=55296&&t<=57343}function VDe(t){return t>=56320&&t<=57343}function YDe(t,e){return(t-55296)*1024+9216+e}function OD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function kD(t){return t>=64976&&t<=65007||OZt.has(t)}var ye;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(ye||(ye={}));var PZt=65536,PD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=PZt,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(VDe(r))return this.pos++,this._addGap(),YDe(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,H.EOF;return this._err(ye.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n<e.length;n++)if((this.html.charCodeAt(this.pos+n)|32)!==e.charCodeAt(n))return!1;return!0}peek(e){let r=this.pos+e;if(r>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let n=this.html.charCodeAt(r);return n===H.CARRIAGE_RETURN?H.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let e=this.html.charCodeAt(this.pos);return e===H.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,H.LINE_FEED):e===H.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,ND(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===H.LINE_FEED||e===H.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){OD(e)?this._err(ye.controlCharacterInInputStream):kD(e)&&this._err(ye.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}};var Ir;(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"})(Ir||(Ir={}));function DD(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 BD=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var yz,BZt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),JDe=(yz=String.fromCodePoint)!==null&&yz!==void 0?yz:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function Az(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=BZt.get(t))!==null&&e!==void 0?e:t}var ti;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(ti||(ti={}));var MZt=32,w0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(w0||(w0={}));function xz(t){return t>=ti.ZERO&&t<=ti.NINE}function WZt(t){return t>=ti.UPPER_A&&t<=ti.UPPER_F||t>=ti.LOWER_A&&t<=ti.LOWER_F}function $Zt(t){return t>=ti.UPPER_A&&t<=ti.UPPER_Z||t>=ti.LOWER_A&&t<=ti.LOWER_Z||xz(t)}function UZt(t){return t===ti.EQUALS||$Zt(t)}var ei;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(ei||(ei={}));var Il;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Il||(Il={}));var LD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=ei.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Il.Strict}startEntity(e){this.decodeMode=e,this.state=ei.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case ei.EntityStart:return e.charCodeAt(r)===ti.NUM?(this.state=ei.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=ei.NamedEntity,this.stateNamedEntity(e,r));case ei.NumericStart:return this.stateNumericStart(e,r);case ei.NumericDecimal:return this.stateNumericDecimal(e,r);case ei.NumericHex:return this.stateNumericHex(e,r);case ei.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|MZt)===ti.LOWER_X?(this.state=ei.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=ei.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(xz(s)||WZt(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(xz(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===ti.SEMI)this.consumed+=1;else if(this.decodeMode===Il.Strict)return 0;return this.emitCodePoint(Az(this.result),this.consumed),this.errors&&(e!==ti.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,r){let{decodeTree:n}=this,s=n[this.treeIndex],i=(s&w0.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=FZt(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===Il.Attribute&&(i===0||UZt(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&w0.VALUE_LENGTH)>>14,i!==0){if(a===ti.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Il.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&w0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~w0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case ei.NamedEntity:return this.result!==0&&(this.decodeMode!==Il.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case ei.NumericDecimal:return this.emitNumericEntity(0,2);case ei.NumericHex:return this.emitNumericEntity(0,3);case ei.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case ei.EntityStart:return 0}}};function FZt(t,e,r,n){let s=(e&w0.BRANCH_LENGTH)>>7,i=e&w0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var MD={};os(MD,{ATTRS:()=>Cl,DOCUMENT_MODE:()=>Vi,NS:()=>Ee,NUMBERED_HEADERS:()=>mb,SPECIAL_ELEMENTS:()=>bz,TAG_ID:()=>C,TAG_NAMES:()=>pe,getTagID:()=>R0,hasUnescapedText:()=>_z});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var Cl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(Cl||(Cl={}));var Vi;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Vi||(Vi={}));var pe;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(pe||(pe={}));var C;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(C||(C={}));var qZt=new Map([[pe.A,C.A],[pe.ADDRESS,C.ADDRESS],[pe.ANNOTATION_XML,C.ANNOTATION_XML],[pe.APPLET,C.APPLET],[pe.AREA,C.AREA],[pe.ARTICLE,C.ARTICLE],[pe.ASIDE,C.ASIDE],[pe.B,C.B],[pe.BASE,C.BASE],[pe.BASEFONT,C.BASEFONT],[pe.BGSOUND,C.BGSOUND],[pe.BIG,C.BIG],[pe.BLOCKQUOTE,C.BLOCKQUOTE],[pe.BODY,C.BODY],[pe.BR,C.BR],[pe.BUTTON,C.BUTTON],[pe.CAPTION,C.CAPTION],[pe.CENTER,C.CENTER],[pe.CODE,C.CODE],[pe.COL,C.COL],[pe.COLGROUP,C.COLGROUP],[pe.DD,C.DD],[pe.DESC,C.DESC],[pe.DETAILS,C.DETAILS],[pe.DIALOG,C.DIALOG],[pe.DIR,C.DIR],[pe.DIV,C.DIV],[pe.DL,C.DL],[pe.DT,C.DT],[pe.EM,C.EM],[pe.EMBED,C.EMBED],[pe.FIELDSET,C.FIELDSET],[pe.FIGCAPTION,C.FIGCAPTION],[pe.FIGURE,C.FIGURE],[pe.FONT,C.FONT],[pe.FOOTER,C.FOOTER],[pe.FOREIGN_OBJECT,C.FOREIGN_OBJECT],[pe.FORM,C.FORM],[pe.FRAME,C.FRAME],[pe.FRAMESET,C.FRAMESET],[pe.H1,C.H1],[pe.H2,C.H2],[pe.H3,C.H3],[pe.H4,C.H4],[pe.H5,C.H5],[pe.H6,C.H6],[pe.HEAD,C.HEAD],[pe.HEADER,C.HEADER],[pe.HGROUP,C.HGROUP],[pe.HR,C.HR],[pe.HTML,C.HTML],[pe.I,C.I],[pe.IMG,C.IMG],[pe.IMAGE,C.IMAGE],[pe.INPUT,C.INPUT],[pe.IFRAME,C.IFRAME],[pe.KEYGEN,C.KEYGEN],[pe.LABEL,C.LABEL],[pe.LI,C.LI],[pe.LINK,C.LINK],[pe.LISTING,C.LISTING],[pe.MAIN,C.MAIN],[pe.MALIGNMARK,C.MALIGNMARK],[pe.MARQUEE,C.MARQUEE],[pe.MATH,C.MATH],[pe.MENU,C.MENU],[pe.META,C.META],[pe.MGLYPH,C.MGLYPH],[pe.MI,C.MI],[pe.MO,C.MO],[pe.MN,C.MN],[pe.MS,C.MS],[pe.MTEXT,C.MTEXT],[pe.NAV,C.NAV],[pe.NOBR,C.NOBR],[pe.NOFRAMES,C.NOFRAMES],[pe.NOEMBED,C.NOEMBED],[pe.NOSCRIPT,C.NOSCRIPT],[pe.OBJECT,C.OBJECT],[pe.OL,C.OL],[pe.OPTGROUP,C.OPTGROUP],[pe.OPTION,C.OPTION],[pe.P,C.P],[pe.PARAM,C.PARAM],[pe.PLAINTEXT,C.PLAINTEXT],[pe.PRE,C.PRE],[pe.RB,C.RB],[pe.RP,C.RP],[pe.RT,C.RT],[pe.RTC,C.RTC],[pe.RUBY,C.RUBY],[pe.S,C.S],[pe.SCRIPT,C.SCRIPT],[pe.SEARCH,C.SEARCH],[pe.SECTION,C.SECTION],[pe.SELECT,C.SELECT],[pe.SOURCE,C.SOURCE],[pe.SMALL,C.SMALL],[pe.SPAN,C.SPAN],[pe.STRIKE,C.STRIKE],[pe.STRONG,C.STRONG],[pe.STYLE,C.STYLE],[pe.SUB,C.SUB],[pe.SUMMARY,C.SUMMARY],[pe.SUP,C.SUP],[pe.TABLE,C.TABLE],[pe.TBODY,C.TBODY],[pe.TEMPLATE,C.TEMPLATE],[pe.TEXTAREA,C.TEXTAREA],[pe.TFOOT,C.TFOOT],[pe.TD,C.TD],[pe.TH,C.TH],[pe.THEAD,C.THEAD],[pe.TITLE,C.TITLE],[pe.TR,C.TR],[pe.TRACK,C.TRACK],[pe.TT,C.TT],[pe.U,C.U],[pe.UL,C.UL],[pe.SVG,C.SVG],[pe.VAR,C.VAR],[pe.WBR,C.WBR],[pe.XMP,C.XMP]]);function R0(t){var e;return(e=qZt.get(t))!==null&&e!==void 0?e:C.UNKNOWN}var ke=C,bz={[Ee.HTML]:new Set([ke.ADDRESS,ke.APPLET,ke.AREA,ke.ARTICLE,ke.ASIDE,ke.BASE,ke.BASEFONT,ke.BGSOUND,ke.BLOCKQUOTE,ke.BODY,ke.BR,ke.BUTTON,ke.CAPTION,ke.CENTER,ke.COL,ke.COLGROUP,ke.DD,ke.DETAILS,ke.DIR,ke.DIV,ke.DL,ke.DT,ke.EMBED,ke.FIELDSET,ke.FIGCAPTION,ke.FIGURE,ke.FOOTER,ke.FORM,ke.FRAME,ke.FRAMESET,ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6,ke.HEAD,ke.HEADER,ke.HGROUP,ke.HR,ke.HTML,ke.IFRAME,ke.IMG,ke.INPUT,ke.LI,ke.LINK,ke.LISTING,ke.MAIN,ke.MARQUEE,ke.MENU,ke.META,ke.NAV,ke.NOEMBED,ke.NOFRAMES,ke.NOSCRIPT,ke.OBJECT,ke.OL,ke.P,ke.PARAM,ke.PLAINTEXT,ke.PRE,ke.SCRIPT,ke.SECTION,ke.SELECT,ke.SOURCE,ke.STYLE,ke.SUMMARY,ke.TABLE,ke.TBODY,ke.TD,ke.TEMPLATE,ke.TEXTAREA,ke.TFOOT,ke.TH,ke.THEAD,ke.TITLE,ke.TR,ke.TRACK,ke.UL,ke.WBR,ke.XMP]),[Ee.MATHML]:new Set([ke.MI,ke.MO,ke.MN,ke.MS,ke.MTEXT,ke.ANNOTATION_XML]),[Ee.SVG]:new Set([ke.TITLE,ke.FOREIGN_OBJECT,ke.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},mb=new Set([ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6]),jZt=new Set([pe.STYLE,pe.SCRIPT,pe.XMP,pe.IFRAME,pe.NOEMBED,pe.NOFRAMES,pe.PLAINTEXT]);function _z(t,e){return jZt.has(t)||e&&t===pe.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var Yi={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function QZt(t){return t>=H.DIGIT_0&&t<=H.DIGIT_9}function yI(t){return t>=H.LATIN_CAPITAL_A&&t<=H.LATIN_CAPITAL_Z}function HZt(t){return t>=H.LATIN_SMALL_A&&t<=H.LATIN_SMALL_Z}function N0(t){return HZt(t)||yI(t)}function XDe(t){return N0(t)||QZt(t)}function WD(t){return t+32}function e4e(t){return t===H.SPACE||t===H.LINE_FEED||t===H.TABULATION||t===H.FORM_FEED}function ZDe(t){return e4e(t)||t===H.SOLIDUS||t===H.GREATER_THAN_SIGN}function GZt(t){return t===H.NULL?ye.nullCharacterReference:t>1114111?ye.characterReferenceOutsideUnicodeRange:ND(t)?ye.surrogateCharacterReference:kD(t)?ye.noncharacterCharacterReference:OD(t)||t===H.CARRIAGE_RETURN?ye.controlCharacterReference:null}var AI=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new PD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new LD(BD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(ye.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(ye.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=GZt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let r=0;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:Ir.START_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:Ir.END_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(e){this.currentToken={type:Ir.COMMENT,data:"",location:this.getCurrentLocation(e)}}_createDoctypeToken(e){this.currentToken={type:Ir.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(DD(n,this.currentAttr.name)===null){if(n.attrs.push(this.currentAttr),n.location&&this.currentLocation){let s=(e=(r=n.location).attrs)!==null&&e!==void 0?e:r.attrs=Object.create(null);s[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue()}}else this._err(ye.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(e){this._emitCurrentCharacterToken(e.location),this.currentToken=null,e.location&&(e.location.endLine=this.preprocessor.line,e.location.endCol=this.preprocessor.col+1,e.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){let e=this.currentToken;this.prepareToken(e),e.tagID=R0(e.tagName),e.type===Ir.START_TAG?(this.lastStartTagName=e.tagName,this.handler.onStartTag(e)):(e.attrs.length>0&&this._err(ye.endTagWithAttributes),e.selfClosing&&this._err(ye.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case Ir.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case Ir.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case Ir.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:Ir.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=e4e(e)?Ir.WHITESPACE_CHARACTER:e===H.NULL?Ir.NULL_CHARACTER:Ir.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(Ir.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Il.Attribute:Il.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitCodePoint(e);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case H.AMPERSAND:{this._startCharacterReference();break}case H.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(N0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case H.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case H.QUESTION_MARK:{this._err(ye.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(ye.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(N0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.GREATER_THAN_SIGN:{this._err(ye.missingEndTagName),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break}default:this._err(ye.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e)}}_stateTagName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.tagName+=En;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:r.tagName+=String.fromCodePoint(yI(e)?WD(e):e)}}_stateRcdataLessThanSign(e){e===H.SOLIDUS?this.state=Y.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RCDATA,this._stateRcdata(e))}_stateRcdataEndTagOpen(e){N0(e)?(this.state=Y.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(e)):(this._emitChars("</"),this.state=Y.RCDATA,this._stateRcdata(e))}handleSpecialEndTag(e){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();this._createEndTagToken();let r=this.currentToken;switch(r.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=Y.BEFORE_ATTRIBUTE_NAME,!1;case H.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=Y.SELF_CLOSING_START_TAG,!1;case H.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=Y.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.RCDATA,this._stateRcdata(e))}_stateRawtextLessThanSign(e){e===H.SOLIDUS?this.state=Y.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagOpen(e){N0(e)?(this.state=Y.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(e)):(this._emitChars("</"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateScriptDataLessThanSign(e){switch(e){case H.SOLIDUS:{this.state=Y.SCRIPT_DATA_END_TAG_OPEN;break}case H.EXCLAMATION_MARK:{this.state=Y.SCRIPT_DATA_ESCAPE_START,this._emitChars("<!");break}default:this._emitChars("<"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e)}}_stateScriptDataEndTagOpen(e){N0(e)?(this.state=Y.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(e)):(this._emitChars("</"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStart(e){e===H.HYPHEN_MINUS?(this.state=Y.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStartDash(e){e===H.HYPHEN_MINUS?(this.state=Y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-")):(this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscaped(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataEscapedDash(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:{this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===H.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:N0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){N0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("</"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscapeStart(e){if(this.preprocessor.startsWith(xa.SCRIPT,!1)&&ZDe(this.preprocessor.peek(xa.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<xa.SCRIPT.length;r++)this._emitCodePoint(this._consume());this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscaped(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDash(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:{this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(En);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===H.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(xa.SCRIPT,!1)&&ZDe(this.preprocessor.peek(xa.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<xa.SCRIPT.length;r++)this._emitCodePoint(this._consume());this.state=Y.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateBeforeAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:{this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case H.EQUALS_SIGN:{this._err(ye.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=Y.ATTRIBUTE_NAME;break}default:this._createAttr(""),this.state=Y.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:{this._leaveAttrName(),this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case H.EQUALS_SIGN:{this._leaveAttrName(),this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:{this._err(ye.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.name+=En;break}default:this.currentAttr.name+=String.fromCodePoint(yI(e)?WD(e):e)}}_stateAfterAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case H.EQUALS_SIGN:{this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._createAttr(""),this.state=Y.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{this.state=Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this.state=Y.ATTRIBUTE_VALUE_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingAttributeValue),this.state=Y.DATA,this.emitCurrentTagToken();break}default:this.state=Y.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=En;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=En;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=En;break}case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:case H.EQUALS_SIGN:case H.GRAVE_ACCENT:{this._err(ye.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.SOLIDUS:{this._leaveAttrValue(),this.state=Y.SELF_CLOSING_START_TAG;break}case H.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._err(ye.missingWhitespaceBetweenAttributes),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case H.GREATER_THAN_SIGN:{let r=this.currentToken;r.selfClosing=!0,this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._err(ye.unexpectedSolidusInTag),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this.emitCurrentComment(r),this._emitEOFToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.data+=En;break}default:r.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch(xa.DASH_DASH,!0)?(this._createCommentToken(xa.DASH_DASH.length+1),this.state=Y.COMMENT_START):this._consumeSequenceIfMatch(xa.DOCTYPE,!1)?(this.currentLocation=this.getCurrentLocation(xa.DOCTYPE.length+1),this.state=Y.DOCTYPE):this._consumeSequenceIfMatch(xa.CDATA_START,!0)?this.inForeignNode?this.state=Y.CDATA_SECTION:(this._err(ye.cdataInHtmlContent),this._createCommentToken(xa.CDATA_START.length+1),this.currentToken.data="[CDATA[",this.state=Y.BOGUS_COMMENT):this._ensureHibernation()||(this._err(ye.incorrectlyOpenedComment),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_START_DASH;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptClosingOfEmptyComment),this.state=Y.DATA;let r=this.currentToken;this.emitCurrentComment(r);break}default:this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentStartDash(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptClosingOfEmptyComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="-",this.state=Y.COMMENT,this._stateComment(e)}}_stateComment(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END_DASH;break}case H.LESS_THAN_SIGN:{r.data+="<",this.state=Y.COMMENT_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.data+=En;break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){let r=this.currentToken;switch(e){case H.EXCLAMATION_MARK:{r.data+="!",this.state=Y.COMMENT_LESS_THAN_SIGN_BANG;break}case H.LESS_THAN_SIGN:{r.data+="<";break}default:this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===H.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=Y.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===H.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=Y.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==H.GREATER_THAN_SIGN&&e!==H.EOF&&this._err(ye.nestedComment),this.state=Y.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="-",this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentEnd(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EXCLAMATION_MARK:{this.state=Y.COMMENT_END_BANG;break}case H.HYPHEN_MINUS:{r.data+="-";break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="--",this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentEndBang(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{r.data+="--!",this.state=Y.COMMENT_END_DASH;break}case H.GREATER_THAN_SIGN:{this._err(ye.incorrectlyClosedComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="--!",this.state=Y.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break}case H.EOF:{this._err(ye.eofInDoctype),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingWhitespaceBeforeDoctypeName),this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(yI(e))this._createDoctypeToken(String.fromCharCode(WD(e))),this.state=Y.DOCTYPE_NAME;else switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.NULL:{this._err(ye.unexpectedNullCharacter),this._createDoctypeToken(En),this.state=Y.DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeName),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(e)),this.state=Y.DOCTYPE_NAME}}_stateDoctypeName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.AFTER_DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.name+=En;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.name+=String.fromCodePoint(yI(e)?WD(e):e)}}_stateAfterDoctypeName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._consumeSequenceIfMatch(xa.PUBLIC,!1)?this.state=Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch(xa.SYSTEM,!1)?this.state=Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(ye.invalidCharacterSequenceAfterDoctypeName),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.publicId+=En;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.publicId+=String.fromCodePoint(e)}}_stateDoctypePublicIdentifierSingleQuoted(e){let r=this.currentToken;switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.publicId+=En;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.publicId+=String.fromCodePoint(e)}}_stateAfterDoctypePublicIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.systemId+=En;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.systemId+=String.fromCodePoint(e)}}_stateDoctypeSystemIdentifierSingleQuoted(e){let r=this.currentToken;switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.systemId+=En;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.systemId+=String.fromCodePoint(e)}}_stateAfterDoctypeSystemIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.NULL:{this._err(ye.unexpectedNullCharacter);break}case H.EOF:{this.emitCurrentDoctype(r),this._emitEOFToken();break}default:}}_stateCdataSection(e){switch(e){case H.RIGHT_SQUARE_BRACKET:{this.state=Y.CDATA_SECTION_BRACKET;break}case H.EOF:{this._err(ye.eofInCdata),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===H.RIGHT_SQUARE_BRACKET?this.state=Y.CDATA_SECTION_END:(this._emitChars("]"),this.state=Y.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA;break}case H.RIGHT_SQUARE_BRACKET:{this._emitChars("]");break}default:this._emitChars("]]"),this.state=Y.CDATA_SECTION,this._stateCdataSection(e)}}_stateCharacterReference(){let e=this.entityDecoder.write(this.preprocessor.html,this.preprocessor.pos);if(e<0)if(this.preprocessor.lastChunkWritten)e=this.entityDecoder.end();else{this.active=!1,this.preprocessor.pos=this.preprocessor.html.length-1,this.consumedAfterSnapshot=0,this.preprocessor.endOfChunkHit=!0;return}e===0?(this.preprocessor.pos=this.entityStartPos,this._flushCodePointConsumedAsCharacterReference(H.AMPERSAND),this.state=!this._isCharacterReferenceInAttribute()&&XDe(this.preprocessor.peek(1))?Y.AMBIGUOUS_AMPERSAND:this.returnState):this.state=this.returnState}_stateAmbiguousAmpersand(e){XDe(e)?this._flushCodePointConsumedAsCharacterReference(e):(e===H.SEMICOLON&&this._err(ye.unknownNamedCharacterReference),this.state=this.returnState,this._callState(e))}};var s4e=new Set([C.DD,C.DT,C.LI,C.OPTGROUP,C.OPTION,C.P,C.RB,C.RP,C.RT,C.RTC]),t4e=new Set([...s4e,C.CAPTION,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]),$D=new Set([C.APPLET,C.CAPTION,C.HTML,C.MARQUEE,C.OBJECT,C.TABLE,C.TD,C.TEMPLATE,C.TH]),zZt=new Set([...$D,C.OL,C.UL]),KZt=new Set([...$D,C.BUTTON]),r4e=new Set([C.ANNOTATION_XML,C.MI,C.MN,C.MO,C.MS,C.MTEXT]),n4e=new Set([C.DESC,C.FOREIGN_OBJECT,C.TITLE]),VZt=new Set([C.TR,C.TEMPLATE,C.HTML]),YZt=new Set([C.TBODY,C.TFOOT,C.THEAD,C.TEMPLATE,C.HTML]),JZt=new Set([C.TABLE,C.TEMPLATE,C.HTML]),XZt=new Set([C.TD,C.TH]),UD=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(mb,Ee.HTML)}popUntilTableCellPopped(){this.popUntilPopped(XZt,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(JZt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo(YZt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(VZt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===C.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===C.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(n4e.has(s))return!1;break}case Ee.MATHML:{if(r4e.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,$D)}hasInListItemScope(e){return this.hasInDynamicScope(e,zZt)}hasInButtonScope(e){return this.hasInDynamicScope(e,KZt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(mb.has(r))return!0;if($D.has(r))return!1;break}case Ee.SVG:{if(n4e.has(r))return!1;break}case Ee.MATHML:{if(r4e.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case C.TBODY:case C.THEAD:case C.TFOOT:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.OPTION:case C.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&s4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&t4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&t4e.has(this.currentTagId);)this.pop()}};var yu;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(yu||(yu={}));var i4e={type:yu.Marker},FD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let o=0;o<this.entries.length;o++){let c=this.entries[o];if(c.type===yu.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(i4e)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:yu.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:yu.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(i4e);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===yu.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===yu.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===yu.Element&&r.element===e)}};var Tc={createDocument(){return{nodeName:"#document",mode:Vi.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};Tc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(Tc.isTextNode(r)){r.value+=e;return}}Tc.appendChild(t,Tc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&Tc.isTextNode(n)?n.value+=e:Tc.insertBefore(t,Tc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;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 o4e="html",ZZt="about:legacy-compat",eer="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",c4e=["+//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//"],ter=[...c4e,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],rer=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),u4e=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],ner=[...u4e,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function a4e(t,e){return e.some(r=>t.startsWith(r))}function l4e(t){return t.name===o4e&&t.publicId===null&&(t.systemId===null||t.systemId===ZZt)}function d4e(t){if(t.name!==o4e)return Vi.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===eer)return Vi.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),rer.has(r))return Vi.QUIRKS;let n=e===null?ter:c4e;if(a4e(r,n))return Vi.QUIRKS;if(n=e===null?u4e:ner,a4e(r,n))return Vi.LIMITED_QUIRKS}return Vi.NO_QUIRKS}var f4e={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},ier="definitionurl",aer="definitionURL",oer=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t])),cer=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),uer=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),ler=new Set([C.B,C.BIG,C.BLOCKQUOTE,C.BODY,C.BR,C.CENTER,C.CODE,C.DD,C.DIV,C.DL,C.DT,C.EM,C.EMBED,C.H1,C.H2,C.H3,C.H4,C.H5,C.H6,C.HEAD,C.HR,C.I,C.IMG,C.LI,C.LISTING,C.MENU,C.META,C.NOBR,C.OL,C.P,C.PRE,C.RUBY,C.S,C.SMALL,C.SPAN,C.STRONG,C.STRIKE,C.SUB,C.SUP,C.TABLE,C.TT,C.U,C.UL,C.VAR]);function p4e(t){let e=t.tagID;return e===C.FONT&&t.attrs.some(({name:n})=>n===Cl.COLOR||n===Cl.SIZE||n===Cl.FACE)||ler.has(e)}function Ez(t){for(let e=0;e<t.attrs.length;e++)if(t.attrs[e].name===ier){t.attrs[e].name=aer;break}}function vz(t){for(let e=0;e<t.attrs.length;e++){let r=oer.get(t.attrs[e].name);r!=null&&(t.attrs[e].name=r)}}function qD(t){for(let e=0;e<t.attrs.length;e++){let r=cer.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 m4e(t){let e=uer.get(t.tagName);e!=null&&(t.tagName=e,t.tagID=R0(t.tagName))}function der(t,e){return e===Ee.MATHML&&(t===C.MI||t===C.MO||t===C.MN||t===C.MS||t===C.MTEXT)}function fer(t,e,r){if(e===Ee.MATHML&&t===C.ANNOTATION_XML){for(let n=0;n<r.length;n++)if(r[n].name===Cl.ENCODING){let s=r[n].value.toLowerCase();return s===f4e.TEXT_HTML||s===f4e.APPLICATION_XML}}return e===Ee.SVG&&(t===C.FOREIGN_OBJECT||t===C.DESC||t===C.TITLE)}function h4e(t,e,r,n){return(!n||n===Ee.HTML)&&fer(t,e,r)||(!n||n===Ee.MATHML)&&der(t,e)}var per="hidden",mer=8,her=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 ger={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},b4e=new Set([C.TABLE,C.TBODY,C.TFOOT,C.THEAD,C.TR]),y4e={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:Tc,onParseError:null},hb=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={...y4e,...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 AI(this.options,this),this.activeFormattingElements=new FD(this.treeAdapter),this.fragmentContextID=n?R0(this.treeAdapter.getTagName(n)):C.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new UD(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={...y4e,...r};e??(e=n.treeAdapter.createElement(pe.TEMPLATE,Ee.HTML,[]));let s=n.treeAdapter.createElement("documentmock",Ee.HTML,[]),i=new this(n,s,e);return i.fragmentContextID===C.TEMPLATE&&i.tmplInsertionModeStack.unshift(te.IN_TEMPLATE),i._initTokenizerForFragmentParsing(),i._insertFakeRootElement(),i._resetInsertionMode(),i._findFormInFragmentContext(),i}getFragment(){let e=this.treeAdapter.getFirstChild(this.document),r=this.treeAdapter.createDocumentFragment();return this._adoptNodes(e,r),r}_err(e,r,n){var s;if(!this.onParseError)return;let i=(s=e.location)!==null&&s!==void 0?s:ger,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=Yi.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===pe.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case C.TITLE:case C.TEXTAREA:{this.tokenizer.state=Yi.RCDATA;break}case C.STYLE:case C.XMP:case C.IFRAME:case C.NOEMBED:case C.NOFRAMES:case C.NOSCRIPT:{this.tokenizer.state=Yi.RAWTEXT;break}case C.SCRIPT:{this.tokenizer.state=Yi.SCRIPT_DATA;break}case C.PLAINTEXT:{this.tokenizer.state=Yi.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(pe.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,C.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===Ir.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,e.tagID===C.SVG&&this.treeAdapter.getTagName(r)===pe.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===C.MGLYPH||e.tagID===C.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case Ir.CHARACTER:{this.onCharacter(e);break}case Ir.NULL_CHARACTER:{this.onNullCharacter(e);break}case Ir.COMMENT:{this.onComment(e);break}case Ir.DOCTYPE:{this.onDoctype(e);break}case Ir.START_TAG:{this._processStartTag(e);break}case Ir.END_TAG:{this.onEndTag(e);break}case Ir.EOF:{this.onEof(e);break}case Ir.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return h4e(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===yu.Marker||this.openElements.contains(s.element)),n=r===-1?e-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(C.P),this.openElements.popUntilTagNamePopped(C.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case C.TR:{this.insertionMode=te.IN_ROW;return}case C.TBODY:case C.THEAD:case C.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case C.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case C.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case C.TABLE:{this.insertionMode=te.IN_TABLE;return}case C.BODY:{this.insertionMode=te.IN_BODY;return}case C.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case C.SELECT:{this._resetInsertionModeForSelect(e);return}case C.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case C.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case C.TD:case C.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case C.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===C.TEMPLATE)break;if(n===C.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return b4e.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case C.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case C.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return bz[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){Gtr(this,e);return}switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{E4e(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_TABLE_TEXT:{w4e(this,e);break}case te.IN_COLUMN_GROUP:{QD(this,e);break}case te.AFTER_BODY:{HD(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){Htr(this,e);return}switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_COLUMN_GROUP:{QD(this,e);break}case te.AFTER_BODY:{HD(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){Iz(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{Iz(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.AFTER_BODY:{ver(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{Ser(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{Ier(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,ye.misplacedDoctype);break}case te.IN_TABLE_TEXT:{bI(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,ye.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?ztr(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{Cer(this,e);break}case te.BEFORE_HEAD:{wer(this,e);break}case te.IN_HEAD:{Au(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Oer(this,e);break}case te.AFTER_HEAD:{Per(this,e);break}case te.IN_BODY:{Ji(this,e);break}case te.IN_TABLE:{gb(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_CAPTION:{Rtr(this,e);break}case te.IN_COLUMN_GROUP:{Rz(this,e);break}case te.IN_TABLE_BODY:{KD(this,e);break}case te.IN_ROW:{VD(this,e);break}case te.IN_CELL:{ktr(this,e);break}case te.IN_SELECT:{O4e(this,e);break}case te.IN_SELECT_IN_TABLE:{Dtr(this,e);break}case te.IN_TEMPLATE:{Ltr(this,e);break}case te.AFTER_BODY:{Wtr(this,e);break}case te.IN_FRAMESET:{$tr(this,e);break}case te.AFTER_FRAMESET:{Ftr(this,e);break}case te.AFTER_AFTER_BODY:{jtr(this,e);break}case te.AFTER_AFTER_FRAMESET:{Qtr(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?Ktr(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{Ter(this,e);break}case te.BEFORE_HEAD:{Rer(this,e);break}case te.IN_HEAD:{Ner(this,e);break}case te.IN_HEAD_NO_SCRIPT:{ker(this,e);break}case te.AFTER_HEAD:{Der(this,e);break}case te.IN_BODY:{zD(this,e);break}case te.TEXT:{xtr(this,e);break}case te.IN_TABLE:{CI(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_CAPTION:{Ntr(this,e);break}case te.IN_COLUMN_GROUP:{Otr(this,e);break}case te.IN_TABLE_BODY:{Cz(this,e);break}case te.IN_ROW:{N4e(this,e);break}case te.IN_CELL:{Ptr(this,e);break}case te.IN_SELECT:{k4e(this,e);break}case te.IN_SELECT_IN_TABLE:{Btr(this,e);break}case te.IN_TEMPLATE:{Mtr(this,e);break}case te.AFTER_BODY:{D4e(this,e);break}case te.IN_FRAMESET:{Utr(this,e);break}case te.AFTER_FRAMESET:{qtr(this,e);break}case te.AFTER_AFTER_BODY:{jD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{xI(this,e);break}case te.BEFORE_HTML:{_I(this,e);break}case te.BEFORE_HEAD:{EI(this,e);break}case te.IN_HEAD:{vI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SI(this,e);break}case te.AFTER_HEAD:{II(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{C4e(this,e);break}case te.TEXT:{btr(this,e);break}case te.IN_TABLE_TEXT:{bI(this,e);break}case te.IN_TEMPLATE:{P4e(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{wz(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===H.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{_4e(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{Sz(this,e);break}case te.IN_TABLE_TEXT:{T4e(this,e);break}default:}}};function yer(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):I4e(t,e),r}function Aer(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function xer(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=her;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=ber(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function ber(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function _er(t,e,r){let n=t.treeAdapter.getTagName(e),s=R0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===C.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function Eer(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function Tz(t,e){for(let r=0;r<mer;r++){let n=yer(t,e);if(!n)break;let s=Aer(t,n);if(!s)break;t.activeFormattingElements.bookmark=n;let i=xer(t,s,n.element),a=t.openElements.getCommonAncestor(n.element);t.treeAdapter.detachNode(i),a&&_er(t,a,i),Eer(t,s,n)}}function Iz(t,e){t._appendCommentNode(e,t.openElements.currentTmplContentOrNode)}function ver(t,e){t._appendCommentNode(e,t.openElements.items[0])}function Ser(t,e){t._appendCommentNode(e,t.document)}function wz(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 Ier(t,e){t._setDocumentType(e);let r=e.forceQuirks?Vi.QUIRKS:d4e(e);l4e(e)||t._err(e,ye.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function xI(t,e){t._err(e,ye.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Vi.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function Cer(t,e){e.tagID===C.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):_I(t,e)}function Ter(t,e){let r=e.tagID;(r===C.HTML||r===C.HEAD||r===C.BODY||r===C.BR)&&_I(t,e)}function _I(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function wer(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:EI(t,e)}}function Rer(t,e){let r=e.tagID;r===C.HEAD||r===C.BODY||r===C.HTML||r===C.BR?EI(t,e):t._err(e,ye.endTagWithoutMatchingOpenElement)}function EI(t,e){t._insertFakeElement(pe.HEAD,C.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function Au(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TITLE:{t._switchToTextParsing(e,Yi.RCDATA);break}case C.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,Yi.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case C.NOFRAMES:case C.STYLE:{t._switchToTextParsing(e,Yi.RAWTEXT);break}case C.SCRIPT:{t._switchToTextParsing(e,Yi.SCRIPT_DATA);break}case C.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:vI(t,e)}}function Ner(t,e){switch(e.tagID){case C.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case C.BODY:case C.BR:case C.HTML:{vI(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function Vh(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==C.TEMPLATE&&t._err(e,ye.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,ye.endTagWithoutMatchingOpenElement)}function vI(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function Oer(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BASEFONT:case C.BGSOUND:case C.HEAD:case C.LINK:case C.META:case C.NOFRAMES:case C.STYLE:{Au(t,e);break}case C.NOSCRIPT:{t._err(e,ye.nestedNoscriptInHead);break}default:SI(t,e)}}function ker(t,e){switch(e.tagID){case C.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case C.BR:{SI(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function SI(t,e){let r=e.type===Ir.EOF?ye.openElementsLeftAfterEof:ye.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function Per(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case C.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{t._err(e,ye.abandonedHeadElementChild),t.openElements.push(t.headElement,C.HEAD),Au(t,e),t.openElements.remove(t.headElement);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:II(t,e)}}function Der(t,e){switch(e.tagID){case C.BODY:case C.HTML:case C.BR:{II(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function II(t,e){t._insertFakeElement(pe.BODY,C.BODY),t.insertionMode=te.IN_BODY,GD(t,e)}function GD(t,e){switch(e.type){case Ir.CHARACTER:{E4e(t,e);break}case Ir.WHITESPACE_CHARACTER:{_4e(t,e);break}case Ir.COMMENT:{Iz(t,e);break}case Ir.START_TAG:{Ji(t,e);break}case Ir.END_TAG:{zD(t,e);break}case Ir.EOF:{C4e(t,e);break}default:}}function _4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function E4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function Ber(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function Ler(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function Mer(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function Wer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function $er(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&mb.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function Uer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function Fer(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function qer(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===C.LI&&s===C.LI||(r===C.DD||r===C.DT)&&(s===C.DD||s===C.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==C.ADDRESS&&s!==C.DIV&&s!==C.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function jer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=Yi.PLAINTEXT}function Qer(t,e){t.openElements.hasInScope(C.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function Her(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(pe.A);r&&(Tz(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Ger(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function zer(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(C.NOBR)&&(Tz(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Ker(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function Ver(t,e){t.treeAdapter.getDocumentMode(t.document)!==Vi.QUIRKS&&t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function v4e(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function S4e(t){let e=DD(t,Cl.TYPE);return e!=null&&e.toLowerCase()===per}function Yer(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),S4e(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function Jer(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function Xer(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function Zer(t,e){e.tagName=pe.IMG,e.tagID=C.IMG,v4e(t,e)}function etr(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=Yi.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function ttr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,Yi.RAWTEXT)}function rtr(t,e){t.framesetOk=!1,t._switchToTextParsing(e,Yi.RAWTEXT)}function A4e(t,e){t._switchToTextParsing(e,Yi.RAWTEXT)}function ntr(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function str(t,e){t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function itr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function atr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(C.RTC),t._insertElement(e,Ee.HTML)}function otr(t,e){t._reconstructActiveFormattingElements(),Ez(e),qD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function ctr(t,e){t._reconstructActiveFormattingElements(),vz(e),qD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function x4e(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Ji(t,e){switch(e.tagID){case C.I:case C.S:case C.B:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.SMALL:case C.STRIKE:case C.STRONG:{Ger(t,e);break}case C.A:{Her(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{$er(t,e);break}case C.P:case C.DL:case C.OL:case C.UL:case C.DIV:case C.DIR:case C.NAV:case C.MAIN:case C.MENU:case C.ASIDE:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.DETAILS:case C.ADDRESS:case C.ARTICLE:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{Wer(t,e);break}case C.LI:case C.DD:case C.DT:{qer(t,e);break}case C.BR:case C.IMG:case C.WBR:case C.AREA:case C.EMBED:case C.KEYGEN:{v4e(t,e);break}case C.HR:{Xer(t,e);break}case C.RB:case C.RTC:{itr(t,e);break}case C.RT:case C.RP:{atr(t,e);break}case C.PRE:case C.LISTING:{Uer(t,e);break}case C.XMP:{ttr(t,e);break}case C.SVG:{ctr(t,e);break}case C.HTML:{Ber(t,e);break}case C.BASE:case C.LINK:case C.META:case C.STYLE:case C.TITLE:case C.SCRIPT:case C.BGSOUND:case C.BASEFONT:case C.TEMPLATE:{Au(t,e);break}case C.BODY:{Ler(t,e);break}case C.FORM:{Fer(t,e);break}case C.NOBR:{zer(t,e);break}case C.MATH:{otr(t,e);break}case C.TABLE:{Ver(t,e);break}case C.INPUT:{Yer(t,e);break}case C.PARAM:case C.TRACK:case C.SOURCE:{Jer(t,e);break}case C.IMAGE:{Zer(t,e);break}case C.BUTTON:{Qer(t,e);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{Ker(t,e);break}case C.IFRAME:{rtr(t,e);break}case C.SELECT:{ntr(t,e);break}case C.OPTION:case C.OPTGROUP:{str(t,e);break}case C.NOEMBED:case C.NOFRAMES:{A4e(t,e);break}case C.FRAMESET:{Mer(t,e);break}case C.TEXTAREA:{etr(t,e);break}case C.NOSCRIPT:{t.options.scriptingEnabled?A4e(t,e):x4e(t,e);break}case C.PLAINTEXT:{jer(t,e);break}case C.COL:case C.TH:case C.TD:case C.TR:case C.HEAD:case C.FRAME:case C.TBODY:case C.TFOOT:case C.THEAD:case C.CAPTION:case C.COLGROUP:break;default:x4e(t,e)}}function utr(t,e){if(t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function ltr(t,e){t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,D4e(t,e))}function dtr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function ftr(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(C.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(C.FORM):r&&t.openElements.remove(r))}function ptr(t){t.openElements.hasInButtonScope(C.P)||t._insertFakeElement(pe.P,C.P),t._closePElement()}function mtr(t){t.openElements.hasInListItemScope(C.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(C.LI),t.openElements.popUntilTagNamePopped(C.LI))}function htr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function gtr(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function ytr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function Atr(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(pe.BR,C.BR),t.openElements.pop(),t.framesetOk=!1}function I4e(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==C.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function zD(t,e){switch(e.tagID){case C.A:case C.B:case C.I:case C.S:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.NOBR:case C.SMALL:case C.STRIKE:case C.STRONG:{Tz(t,e);break}case C.P:{ptr(t);break}case C.DL:case C.UL:case C.OL:case C.DIR:case C.DIV:case C.NAV:case C.PRE:case C.MAIN:case C.MENU:case C.ASIDE:case C.BUTTON:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.ADDRESS:case C.ARTICLE:case C.DETAILS:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.LISTING:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{dtr(t,e);break}case C.LI:{mtr(t);break}case C.DD:case C.DT:{htr(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{gtr(t);break}case C.BR:{Atr(t);break}case C.BODY:{utr(t,e);break}case C.HTML:{ltr(t,e);break}case C.FORM:{ftr(t);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{ytr(t,e);break}case C.TEMPLATE:{Vh(t,e);break}default:I4e(t,e)}}function C4e(t,e){t.tmplInsertionModeStack.length>0?P4e(t,e):wz(t,e)}function xtr(t,e){var r;e.tagID===C.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function btr(t,e){t._err(e,ye.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function Sz(t,e){if(t.openElements.currentTagId!==void 0&&b4e.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case Ir.CHARACTER:{w4e(t,e);break}case Ir.WHITESPACE_CHARACTER:{T4e(t,e);break}}else TI(t,e)}function _tr(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function Etr(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function vtr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.COLGROUP,C.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,Rz(t,e)}function Str(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function Itr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.TBODY,C.TBODY),t.insertionMode=te.IN_TABLE_BODY,KD(t,e)}function Ctr(t,e){t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function Ttr(t,e){S4e(e)?t._appendElement(e,Ee.HTML):TI(t,e),e.ackSelfClosing=!0}function wtr(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function gb(t,e){switch(e.tagID){case C.TD:case C.TH:case C.TR:{Itr(t,e);break}case C.STYLE:case C.SCRIPT:case C.TEMPLATE:{Au(t,e);break}case C.COL:{vtr(t,e);break}case C.FORM:{wtr(t,e);break}case C.TABLE:{Ctr(t,e);break}case C.TBODY:case C.TFOOT:case C.THEAD:{Str(t,e);break}case C.INPUT:{Ttr(t,e);break}case C.CAPTION:{_tr(t,e);break}case C.COLGROUP:{Etr(t,e);break}default:TI(t,e)}}function CI(t,e){switch(e.tagID){case C.TABLE:{t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode());break}case C.TEMPLATE:{Vh(t,e);break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TBODY:case C.TD:case C.TFOOT:case C.TH:case C.THEAD:case C.TR:break;default:TI(t,e)}}function TI(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,GD(t,e),t.fosterParentingEnabled=r}function T4e(t,e){t.pendingCharacterTokens.push(e)}function w4e(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function bI(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r<t.pendingCharacterTokens.length;r++)TI(t,t.pendingCharacterTokens[r]);else for(;r<t.pendingCharacterTokens.length;r++)t._insertCharacters(t.pendingCharacterTokens[r]);t.insertionMode=t.originalInsertionMode,t._processToken(e)}var R4e=new Set([C.CAPTION,C.COL,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]);function Rtr(t,e){let r=e.tagID;R4e.has(r)?t.openElements.hasInTableScope(C.CAPTION)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.CAPTION),t.activeFormattingElements.clearToLastMarker(),t.insertionMode=te.IN_TABLE,gb(t,e)):Ji(t,e)}function Ntr(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&&CI(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:zD(t,e)}}function Rz(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:{Au(t,e);break}default:QD(t,e)}}function Otr(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:{Vh(t,e);break}case C.COL:break;default:QD(t,e)}}function QD(t,e){t.openElements.currentTagId===C.COLGROUP&&(t.openElements.pop(),t.insertionMode=te.IN_TABLE,t._processToken(e))}function KD(t,e){switch(e.tagID){case C.TR:{t.openElements.clearBackToTableBodyContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_ROW;break}case C.TH:case C.TD:{t.openElements.clearBackToTableBodyContext(),t._insertFakeElement(pe.TR,C.TR),t.insertionMode=te.IN_ROW,VD(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,gb(t,e));break}default:gb(t,e)}}function Cz(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,CI(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:CI(t,e)}}function VD(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,KD(t,e));break}default:gb(t,e)}}function N4e(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,Cz(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,Cz(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:CI(t,e)}}function ktr(t,e){let r=e.tagID;R4e.has(r)?(t.openElements.hasInTableScope(C.TD)||t.openElements.hasInTableScope(C.TH))&&(t._closeTableCell(),VD(t,e)):Ji(t,e)}function Ptr(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(),N4e(t,e));break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:break;default:zD(t,e)}}function O4e(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:{Au(t,e);break}default:}}function k4e(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:{Vh(t,e);break}default:}}function Dtr(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t._processStartTag(e)):O4e(t,e)}function Btr(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t.onEndTag(e)):k4e(t,e)}function Ltr(t,e){switch(e.tagID){case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{Au(t,e);break}case C.CAPTION:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,gb(t,e);break}case C.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,Rz(t,e);break}case C.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,KD(t,e);break}case C.TD:case C.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,VD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,Ji(t,e)}}function Mtr(t,e){e.tagID===C.TEMPLATE&&Vh(t,e)}function P4e(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):wz(t,e)}function Wtr(t,e){e.tagID===C.HTML?Ji(t,e):HD(t,e)}function D4e(t,e){var r;if(e.tagID===C.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===C.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else HD(t,e)}function HD(t,e){t.insertionMode=te.IN_BODY,GD(t,e)}function $tr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.FRAMESET:{t._insertElement(e,Ee.HTML);break}case C.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.NOFRAMES:{Au(t,e);break}default:}}function Utr(t,e){e.tagID===C.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==C.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function Ftr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.NOFRAMES:{Au(t,e);break}default:}}function qtr(t,e){e.tagID===C.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function jtr(t,e){e.tagID===C.HTML?Ji(t,e):jD(t,e)}function jD(t,e){t.insertionMode=te.IN_BODY,GD(t,e)}function Qtr(t,e){switch(e.tagID){case C.HTML:{Ji(t,e);break}case C.NOFRAMES:{Au(t,e);break}default:}}function Htr(t,e){e.chars=En,t._insertCharacters(e)}function Gtr(t,e){t._insertCharacters(e),t.framesetOk=!1}function B4e(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function ztr(t,e){if(p4e(e))B4e(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?Ez(e):n===Ee.SVG&&(m4e(e),vz(e)),qD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function Ktr(t,e){if(e.tagID===C.P||e.tagID===C.BR){B4e(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var QVr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function L4e(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var M4e=L4e(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),W4e=L4e(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var Vtr=new Set([pe.AREA,pe.BASE,pe.BASEFONT,pe.BGSOUND,pe.BR,pe.COL,pe.EMBED,pe.FRAME,pe.HR,pe.IMG,pe.INPUT,pe.KEYGEN,pe.LINK,pe.META,pe.PARAM,pe.SOURCE,pe.TRACK,pe.WBR]);function Ytr(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&Vtr.has(e.treeAdapter.getTagName(t))}var Jtr={treeAdapter:Tc,scriptingEnabled:!0};function Nz(t,e){let r={...Jtr,...e};return $4e(t,r)}function Xtr(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===pe.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=$4e(i,e);return r}function $4e(t,e){return e.treeAdapter.isElementNode(t)?Ztr(t,e):e.treeAdapter.isTextNode(t)?trr(t,e):e.treeAdapter.isCommentNode(t)?rrr(t,e):e.treeAdapter.isDocumentTypeNode(t)?nrr(t,e):""}function Ztr(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${err(t,e)}>${Ytr(t,e)?"":`${Xtr(t,e)}</${r}>`}`}function err(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${M4e(n.value)}"`}return r}function trr(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&_z(i,e.scriptingEnabled)?n:W4e(n)}function rrr(t,{treeAdapter:e}){return`<!--${e.getCommentNodeContent(t)}-->`}function nrr(t,{treeAdapter:e}){return`<!DOCTYPE ${e.getDocumentTypeNodeName(t)}>`}function U4e(t,e){return hb.parse(t,e)}function F4e(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=hb.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function q4e(t){let e=t.includes('"')?"'":'"';return e+t+e}function srr(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${q4e(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${q4e(r)}`),n}var df={isCommentNode:Hh,isElementNode:it,isTextNode:no,createDocument(){let t=new Oo([]);return t["x-mode"]=MD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new Oo([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;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 Qh(t,n,[]);return a.namespace=e,a["x-attribsNamespace"]=s,a["x-attribsPrefix"]=i,a},createCommentNode(t){return new qh(t)},createTextNode(t){return new vl(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){df.appendChild(t,e)},getTemplateContent(t){return t.children[0]},setDocumentType(t,e,r,n){let s=srr(e,r,n),i=t.children.find(a=>eD(a)&&a.name==="!doctype");i?i.data=s??null:(i=new jh("!doctype",s),df.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&no(r)?r.data+=e:df.appendChild(t,df.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&no(n)?n.data+=e:df.insertBefore(t,df.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r<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 eD(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 j4e(t,e,r,n){let s={scriptingEnabled:typeof e.scriptingEnabled=="boolean"?e.scriptingEnabled:!0,treeAdapter:df,sourceCodeLocationInfo:e.sourceCodeLocationInfo};return r?U4e(t,s):F4e(n,t,s)}var irr={treeAdapter:df};function Q4e(t){let e="length"in t?t:[t];for(let n=0;n<e.length;n+=1){let s=e[n];hu(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+=Nz(s,irr)}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 Ie;(function(t){t[t.Text=1]="Text",t[t.BeforeTagName=2]="BeforeTagName",t[t.InTagName=3]="InTagName",t[t.InSelfClosingTag=4]="InSelfClosingTag",t[t.BeforeClosingTagName=5]="BeforeClosingTagName",t[t.InClosingTagName=6]="InClosingTagName",t[t.AfterClosingTagName=7]="AfterClosingTagName",t[t.BeforeAttributeName=8]="BeforeAttributeName",t[t.InAttributeName=9]="InAttributeName",t[t.AfterAttributeName=10]="AfterAttributeName",t[t.BeforeAttributeValue=11]="BeforeAttributeValue",t[t.InAttributeValueDq=12]="InAttributeValueDq",t[t.InAttributeValueSq=13]="InAttributeValueSq",t[t.InAttributeValueNq=14]="InAttributeValueNq",t[t.BeforeDeclaration=15]="BeforeDeclaration",t[t.InDeclaration=16]="InDeclaration",t[t.InProcessingInstruction=17]="InProcessingInstruction",t[t.BeforeComment=18]="BeforeComment",t[t.CDATASequence=19]="CDATASequence",t[t.InSpecialComment=20]="InSpecialComment",t[t.InCommentLike=21]="InCommentLike",t[t.BeforeSpecialS=22]="BeforeSpecialS",t[t.SpecialStartSequence=23]="SpecialStartSequence",t[t.InSpecialTag=24]="InSpecialTag",t[t.BeforeEntity=25]="BeforeEntity",t[t.BeforeNumericEntity=26]="BeforeNumericEntity",t[t.InNamedEntity=27]="InNamedEntity",t[t.InNumericEntity=28]="InNumericEntity",t[t.InHexEntity=29]="InHexEntity"})(Ie||(Ie={}));function ff(t){return t===Ve.Space||t===Ve.NewLine||t===Ve.Tab||t===Ve.FormFeed||t===Ve.CarriageReturn}function YD(t){return t===Ve.Slash||t===Ve.Gt||ff(t)}function H4e(t){return t>=Ve.Zero&&t<=Ve.Nine}function arr(t){return t>=Ve.LowerA&&t<=Ve.LowerZ||t>=Ve.UpperA&&t<=Ve.UpperZ}function orr(t){return t>=Ve.UpperA&&t<=Ve.UpperF||t>=Ve.LowerA&&t<=Ve.LowerF}var xu;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(xu||(xu={}));var oo={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},yb=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=r,this.entityTrie=e?rD:tD}reset(){this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.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=Ie.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Ve.Amp&&(this.state=Ie.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?YD(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=Ie.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Ve.Gt||ff(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart<r){let n=this.index;this.index=r,this.cbs.ontext(this.sectionStart,r),this.index=n}this.isSpecial=!1,this.sectionStart=r+2,this.stateInClosingTagName(e);return}this.sequenceIndex=0}(e|32)===this.currentSequence[this.sequenceIndex]?this.sequenceIndex+=1:this.sequenceIndex===0?this.currentSequence===oo.TitleEnd?this.decodeEntities&&e===Ve.Amp&&(this.state=Ie.BeforeEntity):this.fastForwardTo(Ve.Lt)&&(this.sequenceIndex=1):this.sequenceIndex=+(e===Ve.Lt)}stateCDATASequence(e){e===oo.Cdata[this.sequenceIndex]?++this.sequenceIndex===oo.Cdata.length&&(this.state=Ie.InCommentLike,this.currentSequence=oo.CdataEnd,this.sequenceIndex=0,this.sectionStart=this.index+1):(this.sequenceIndex=0,this.state=Ie.InDeclaration,this.stateInDeclaration(e))}fastForwardTo(e){for(;++this.index<this.buffer.length+this.offset;)if(this.buffer.charCodeAt(this.index-this.offset)===e)return!0;return this.index=this.buffer.length+this.offset-1,!1}stateInCommentLike(e){e===this.currentSequence[this.sequenceIndex]?++this.sequenceIndex===this.currentSequence.length&&(this.currentSequence===oo.CdataEnd?this.cbs.oncdata(this.sectionStart,this.index,2):this.cbs.oncomment(this.sectionStart,this.index,2),this.sequenceIndex=0,this.sectionStart=this.index+1,this.state=Ie.Text):this.sequenceIndex===0?this.fastForwardTo(this.currentSequence[0])&&(this.sequenceIndex=1):e!==this.currentSequence[this.sequenceIndex-1]&&(this.sequenceIndex=0)}isTagStartChar(e){return this.xmlMode?!YD(e):arr(e)}startSpecial(e,r){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=r,this.state=Ie.SpecialStartSequence}stateBeforeTagName(e){if(e===Ve.ExclamationMark)this.state=Ie.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===Ve.Questionmark)this.state=Ie.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){let r=e|32;this.sectionStart=this.index,!this.xmlMode&&r===oo.TitleEnd[2]?this.startSpecial(oo.TitleEnd,3):this.state=!this.xmlMode&&r===oo.ScriptEnd[2]?Ie.BeforeSpecialS:Ie.InTagName}else e===Ve.Slash?this.state=Ie.BeforeClosingTagName:(this.state=Ie.Text,this.stateText(e))}stateInTagName(e){YD(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateBeforeClosingTagName(e){ff(e)||(e===Ve.Gt?this.state=Ie.Text:(this.state=this.isTagStartChar(e)?Ie.InClosingTagName:Ie.InSpecialComment,this.sectionStart=this.index))}stateInClosingTagName(e){(e===Ve.Gt||ff(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.AfterClosingTagName,this.stateAfterClosingTagName(e))}stateAfterClosingTagName(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.state=Ie.Text,this.baseState=Ie.Text,this.sectionStart=this.index+1)}stateBeforeAttributeName(e){e===Ve.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=Ie.InSpecialTag,this.sequenceIndex=0):this.state=Ie.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===Ve.Slash?this.state=Ie.InSelfClosingTag:ff(e)||(this.state=Ie.InAttributeName,this.sectionStart=this.index)}stateInSelfClosingTag(e){e===Ve.Gt?(this.cbs.onselfclosingtag(this.index),this.state=Ie.Text,this.baseState=Ie.Text,this.sectionStart=this.index+1,this.isSpecial=!1):ff(e)||(this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateInAttributeName(e){(e===Ve.Eq||YD(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.AfterAttributeName,this.stateAfterAttributeName(e))}stateAfterAttributeName(e){e===Ve.Eq?this.state=Ie.BeforeAttributeValue:e===Ve.Slash||e===Ve.Gt?(this.cbs.onattribend(xu.NoValue,this.index),this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e)):ff(e)||(this.cbs.onattribend(xu.NoValue,this.index),this.state=Ie.InAttributeName,this.sectionStart=this.index)}stateBeforeAttributeValue(e){e===Ve.DoubleQuote?(this.state=Ie.InAttributeValueDq,this.sectionStart=this.index+1):e===Ve.SingleQuote?(this.state=Ie.InAttributeValueSq,this.sectionStart=this.index+1):ff(e)||(this.sectionStart=this.index,this.state=Ie.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))}handleInAttributeValue(e,r){e===r||!this.decodeEntities&&this.fastForwardTo(r)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(r===Ve.DoubleQuote?xu.Double:xu.Single,this.index),this.state=Ie.BeforeAttributeName):this.decodeEntities&&e===Ve.Amp&&(this.baseState=this.state,this.state=Ie.BeforeEntity)}stateInAttributeValueDoubleQuotes(e){this.handleInAttributeValue(e,Ve.DoubleQuote)}stateInAttributeValueSingleQuotes(e){this.handleInAttributeValue(e,Ve.SingleQuote)}stateInAttributeValueNoQuotes(e){ff(e)||e===Ve.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(xu.Unquoted,this.index),this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===Ve.Amp&&(this.baseState=this.state,this.state=Ie.BeforeEntity)}stateBeforeDeclaration(e){e===Ve.OpeningSquareBracket?(this.state=Ie.CDATASequence,this.sequenceIndex=0):this.state=e===Ve.Dash?Ie.BeforeComment:Ie.InDeclaration}stateInDeclaration(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=Ie.Text,this.sectionStart=this.index+1)}stateInProcessingInstruction(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=Ie.Text,this.sectionStart=this.index+1)}stateBeforeComment(e){e===Ve.Dash?(this.state=Ie.InCommentLike,this.currentSequence=oo.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=Ie.InDeclaration}stateInSpecialComment(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=Ie.Text,this.sectionStart=this.index+1)}stateBeforeSpecialS(e){let r=e|32;r===oo.ScriptEnd[3]?this.startSpecial(oo.ScriptEnd,4):r===oo.StyleEnd[3]?this.startSpecial(oo.StyleEnd,4):(this.state=Ie.InTagName,this.stateInTagName(e))}stateBeforeEntity(e){this.entityExcess=1,this.entityResult=0,e===Ve.Number?this.state=Ie.BeforeNumericEntity:e===Ve.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=Ie.InNamedEntity,this.stateInNamedEntity(e))}stateInNamedEntity(e){if(this.entityExcess+=1,this.trieIndex=RG(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&vc.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]&vc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~vc.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(e|32)===Ve.LowerX?(this.entityExcess++,this.state=Ie.InHexEntity):(this.state=Ie.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===Ie.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(aI(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):H4e(e)?(this.entityResult=this.entityResult*10+(e-Ve.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):H4e(e)?(this.entityResult=this.entityResult*16+(e-Ve.Zero),this.entityExcess++):orr(e)?(this.entityResult=this.entityResult*16+((e|32)-Ve.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===Ie.Text||this.baseState===Ie.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===Ie.Text||this.state===Ie.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===Ie.InAttributeValueDq||this.state===Ie.InAttributeValueSq||this.state===Ie.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index<this.buffer.length+this.offset&&this.running}parse(){for(;this.shouldContinue();){let e=this.buffer.charCodeAt(this.index-this.offset);switch(this.state){case Ie.Text:{this.stateText(e);break}case Ie.SpecialStartSequence:{this.stateSpecialStartSequence(e);break}case Ie.InSpecialTag:{this.stateInSpecialTag(e);break}case Ie.CDATASequence:{this.stateCDATASequence(e);break}case Ie.InAttributeValueDq:{this.stateInAttributeValueDoubleQuotes(e);break}case Ie.InAttributeName:{this.stateInAttributeName(e);break}case Ie.InCommentLike:{this.stateInCommentLike(e);break}case Ie.InSpecialComment:{this.stateInSpecialComment(e);break}case Ie.BeforeAttributeName:{this.stateBeforeAttributeName(e);break}case Ie.InTagName:{this.stateInTagName(e);break}case Ie.InClosingTagName:{this.stateInClosingTagName(e);break}case Ie.BeforeTagName:{this.stateBeforeTagName(e);break}case Ie.AfterAttributeName:{this.stateAfterAttributeName(e);break}case Ie.InAttributeValueSq:{this.stateInAttributeValueSingleQuotes(e);break}case Ie.BeforeAttributeValue:{this.stateBeforeAttributeValue(e);break}case Ie.BeforeClosingTagName:{this.stateBeforeClosingTagName(e);break}case Ie.AfterClosingTagName:{this.stateAfterClosingTagName(e);break}case Ie.BeforeSpecialS:{this.stateBeforeSpecialS(e);break}case Ie.InAttributeValueNq:{this.stateInAttributeValueNoQuotes(e);break}case Ie.InSelfClosingTag:{this.stateInSelfClosingTag(e);break}case Ie.InDeclaration:{this.stateInDeclaration(e);break}case Ie.BeforeDeclaration:{this.stateBeforeDeclaration(e);break}case Ie.BeforeComment:{this.stateBeforeComment(e);break}case Ie.InProcessingInstruction:{this.stateInProcessingInstruction(e);break}case Ie.InNamedEntity:{this.stateInNamedEntity(e);break}case Ie.BeforeEntity:{this.stateBeforeEntity(e);break}case Ie.InHexEntity:{this.stateInHexEntity(e);break}case Ie.InNumericEntity:{this.stateInNumericEntity(e);break}default:this.stateBeforeNumericEntity(e)}this.index++}this.cleanup()}finish(){this.state===Ie.InNamedEntity&&this.emitNamedEntity(),this.sectionStart<this.index&&this.handleTrailingData(),this.cbs.onend()}handleTrailingData(){let e=this.buffer.length+this.offset;this.state===Ie.InCommentLike?this.currentSequence===oo.CdataEnd?this.cbs.oncdata(this.sectionStart,e,0):this.cbs.oncomment(this.sectionStart,e,0):this.state===Ie.InNumericEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===Ie.InHexEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===Ie.InTagName||this.state===Ie.BeforeAttributeName||this.state===Ie.BeforeAttributeValue||this.state===Ie.AfterAttributeName||this.state===Ie.InAttributeName||this.state===Ie.InAttributeValueSq||this.state===Ie.InAttributeValueDq||this.state===Ie.InAttributeValueNq||this.state===Ie.InClosingTagName||this.cbs.ontext(this.sectionStart,e)}emitPartial(e,r){this.baseState!==Ie.Text&&this.baseState!==Ie.InSpecialTag?this.cbs.onattribdata(e,r):this.cbs.ontext(e,r)}emitCodePoint(e){this.baseState!==Ie.Text&&this.baseState!==Ie.InSpecialTag?this.cbs.onattribentity(e):this.cbs.ontextentity(e)}};var Ab=new Set(["input","option","optgroup","select","button","datalist","textarea"]),rn=new Set(["p"]),G4e=new Set(["thead","tbody"]),z4e=new Set(["dd","dt"]),K4e=new Set(["rt","rp"]),crr=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",rn],["h1",rn],["h2",rn],["h3",rn],["h4",rn],["h5",rn],["h6",rn],["select",Ab],["input",Ab],["output",Ab],["button",Ab],["datalist",Ab],["textarea",Ab],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",z4e],["dt",z4e],["address",rn],["article",rn],["aside",rn],["blockquote",rn],["details",rn],["div",rn],["dl",rn],["fieldset",rn],["figcaption",rn],["figure",rn],["footer",rn],["form",rn],["header",rn],["hr",rn],["main",rn],["nav",rn],["ol",rn],["pre",rn],["section",rn],["table",rn],["ul",rn],["rt",K4e],["rp",K4e],["tbody",G4e],["tfoot",G4e]]),urr=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),V4e=new Set(["math","svg"]),Y4e=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),lrr=/\s|\//,wI=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:yb)(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,tb(e)),this.startIndex=s}isVoidElement(e){return!this.options.xmlMode&&urr.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&&crr.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),V4e.has(e)?this.foreignContext.push(!0):Y4e.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(V4e.has(u)||Y4e.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=tb(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===xu.Double?'"':e===xu.Single?"'":e===xu.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(lrr),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,m),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.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 J4e(t,e){let r=new eb(void 0,e);return new wI(r,e).end(t),r.root}var drr=FDe((t,e,r,n)=>e.xmlMode||e._useHtmlParser2?J4e(t,e):j4e(t,e,r,n)),De=KDe(drr,(t,e)=>e.xmlMode||e._useHtmlParser2?oD(t,e):Q4e(t)),frr=De([]),{contains:prr}=v0,{merge:mrr}=v0,{parseHTML:hrr}=v0,{root:grr}=v0;var RI="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function X4e(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Yh(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i<t;i++){let a=r?X4e(RI.length-10,RI.length-1):X4e(0,s?RI.length-1:RI.length-11);n+=RI[a]}return n}function Oz(){return Yh(8).toLowerCase()+"-"+Yh(4).toLowerCase()+"-"+Yh(4).toLowerCase()+"-"+Yh(4).toLowerCase()+"-"+Yh(12).toLowerCase()}var O0="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 Z4e(t,e){return t.trim()==e.trim()?e:e.trim().replaceAll(t,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()}function Xi(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function kz(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.length,i=new Array(n),a=0,o=0,c=0;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 Tl(t,e){let r=[],n=0;for(let i=0;i<e.length;i++){let a=kz(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 pf(t){return new Promise(e=>setTimeout(e,t))}function XD(t,e,r){let n=String(t||""),s=String(e||"").trim();if(!s)return n;let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),a=new RegExp(`(^|;\\s*)${i}=([^;]*)`);if(!a.test(n)){let o=n.trimEnd(),c=o?o.endsWith(";")?" ":"; ":"";return`${o}${c}${s}=${String(r??"")}`}return n.replace(a,(o,c)=>`${c}${s}=${String(r??"")}`)}var wl=t=>t.map(e=>e.split(";")[0]+";");var _u=Ce(NI(),1),LI=Ce(Xn(),1);var Mz=Ce(Xn(),1),Jh=require("path"),gs=Ce(require("fs"),1),cLe=require("stream");async function yrr(t,e){let r=await fe.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}var kI={},oLe="",Xh=(process.env.NODE_PATH||".")+"/vod_cache",Arr=1024*1024*100;async function uLe(t){try{if(gs.default.existsSync(t)){let e=await gs.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await gs.default.promises.stat(n)).isDirectory()?await uLe(n):await gs.default.promises.unlink(n)})),await gs.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}uLe(Xh);function xrr(t){try{gs.default.readdir(Xh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,Jh.join)(Xh,n);gs.default.stat(s,(i,a)=>{a&&a.isDirectory()&&gs.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||gs.default.rm((0,Jh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function brr(t,e,r,n,s,i){if(n=n||Mz.default.enc.Hex.stringify(Mz.default.MD5(r)).toString(),oLe!==n&&(xrr(n),oLe=n),!kI[n]){let[k,B]=await yrr(r,s);if(!k||!B["content-length"]){e.redirect(r);return}kI[n]=B}let a=!0;await gs.default.promises.access((0,Jh.join)(Xh,n)).catch(k=>a=!1),a||await gs.default.promises.mkdir((0,Jh.join)(Xh,n),{recursive:!0});let o=parseInt(kI[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let k=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),B=k[0]!=="",M=k.length>1&&k[1]!=="";if(M){let D=parseInt(k[1],10);Number.isFinite(D)&&(f=D)}if(B){let D=parseInt(k[0],10);Number.isFinite(D)&&(d=D)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,kI[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,kI[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,y=i.timeout,g=u+d,b=u+f,x=Math.ceil(o/m),A=Math.floor(b/m),S=Math.floor(g/m),I=S,R=!1,w={};for(let k=0;k<h&&k<x;k++)new Promise(B=>{(async function M(D){if(R||S>A){B();return}if(D===void 0&&(S-I)*m>=Arr){setTimeout(M,5);return}let L=D!==void 0?D:S++,Z=`${t.id}-${L}`;try{let W=(0,Jh.join)(Xh,n,`${t.id}-${L}.p`),U=!0;if(await gs.default.promises.access(W).catch(z=>U=!1),!U){let z=L*m,j=Math.min(o-1,(L+1)*m-1),J=await fe.get(r,{responseType:"stream",timeout:y,headers:Object.assign({Range:`bytes=${z}-${j}`},s)}),se=(0,Jh.join)(Xh,n,`${t.id}-${L}.dl`),oe=gs.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},y),Te=new Promise(je=>{oe.on("finish",async()=>{R?await gs.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await gs.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),je(!0)}),oe.on("error",async Fe=>{console.error(Fe),await gs.default.promises.rm(se).catch(ve=>console.error(ve)),je(!1)})});J.data.pipe(oe);let Ne=await Te;if(clearTimeout(ue),!Ne){setTimeout(()=>{M(L)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(L)},15)}})()});e.headers(p);let N=new cLe.PassThrough;return new Promise(k=>{let B=!0;(async function M(){try{if(I>A||R){N.end(),k();return}if(!B){setTimeout(M,5);return}let D=`${t.id}-${I}`;if(!w[D]){setTimeout(M,5);return}let L=I*m,Z=Math.min(o-1,(I+1)*m-1),W=Math.max(g,L)-L,z=Math.min(b,Z)-L-W+1,j=w[D];delete w[D];let J=await gs.default.promises.open(j,"r");if(z<=0){await J.close().catch(oe=>console.error(oe)),await gs.default.promises.rm(j).catch(oe=>console.error(oe)),I++,setTimeout(M,5);return}let se=Buffer.alloc(z);await J.read(se,0,z,W),await J.close().catch(oe=>console.error(oe)),await gs.default.promises.rm(j).catch(oe=>console.error(oe)),B=N.write(se),B||N.once("drain",()=>{B=!0}),I++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(k=>{k.startsWith(t.id)&&(gs.default.rm(w[k],{recursive:!0},()=>{}),delete w[k])}),R=!0}),N}var xb=brr;var DLe=Ce(vLe(),1);var Dnr=["\u9884\u544A"],Bnr=t=>{if(!t)return!1;let e=String(t);return Dnr.some(r=>e.includes(r))};function SLe(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function ILe(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function CLe(t){return t==null?"":String(t)}function Lnr(t,e){let r=CLe(t),n=CLe(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Is(t,e){let r={};return e.length===0||(e=e.filter(n=>!Bnr(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=Lnr(n.vod_group,s.vod_group);if(i!==0)return i;let a=SLe(n.vod_name),o=SLe(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=ILe(n.vod_name),u=ILe(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=Xi(n.vod_size);return{vod_id:n.vod_id,vod_name:Z4e("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Zn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":O0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await he.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var Rl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,W4=t=>Rl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),$4=t=>Rl("quark")&&t.includes("https://pan.quark.cn"),U4=t=>Rl("uc")&&t.includes("https://drive.uc.cn"),TLe=t=>Rl("tianyi")&&/cloud\.189\.cn/.test(t),wLe=t=>Rl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),RLe=t=>Rl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),NLe=t=>Rl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),OLe=t=>Rl("baidu")&&/pan\.baidu\.com/.test(t),kLe=t=>Rl("xunlei")&&/pan\.xunlei\.com/.test(t),PLe=t=>Rl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var qt=Cs;(function(t,e){let r=Cs,n=t();for(;;)try{if(parseInt(r(921,"XV(r"))/1+parseInt(r(445,"91jT"))/2+-parseInt(r(823,"Pbkv"))/3+-parseInt(r(1052,"jA9E"))/4+-parseInt(r(956,"IP#v"))/5+-parseInt(r(591,"2a7K"))/6*(-parseInt(r(555,"[PKS"))/7)+parseInt(r(835,"WZpm"))/8*(parseInt(r(1040,"a8&$"))/9)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(F4,-865469+486221*3);function F4(){let t=["WPZdSY91W5jE","W7rhW7a9hq","zCo0uq","W7/cHJC","WQarb2W","W7RcHhxdSCovCSoCW5VcUqdcVKe","d8oDdmoW","WQ7dJtZcQCkvimobW7NcSHC","WRpcGxZdIb7cUSowW4e","WQ3dJCkzcCk7WOC","n8oOf8opnG","fmougCo7b8kVyvidbq","W7pcHI3cIvzNE8oCWR8w","WP/dICkkgSkZWOy","WO7cHMH9dW","W619W504xa","ySoEW6RdSCoe","qCobW4pdV8o4W6vcjG","jfBcSKX2","g8ocW6FdTZq","zSkxWOOFW5hdJ8oqWO8+W5O","WQOhW5pdNmodW7ZdUIO","WQ5uWRtdNLCjW7nu","WPJdMsbaW6i","d8kSW7hcVmo5meb6W4OT","bmoPW7BcOCoUdKu","W6D0W7OsFa","iSk+FmkXua","fmogcmonla","eSo0WP0BW7O","CSokWOy","W6O7W5tcKmoq","be7cLvX8WPZcPa","W4GyWQ7cV8k0EW","WOngWRtcS8oOFmkhoComWQ8","W6zfW5G6wq","W7FdLL3dVwVdRx5+W5xcMa","WQKoW53dGSos","W5rfW4mAeG","WOLADSomscCOW6PJxttcLa","tSocW4KmWRr4W5/dR8kiW47dVSkMW74","tSoaW48kWRb5WR7dLSkZW7BdLmk/","WOldSYv7W5rthmkL","W7RcL1lcUCk6mSkiW4yWEG","W4tcHLhcH8ka","WPtdNclcPSki","EmkJdCkMhG","jJaenN4","wZeCW5agaKbgW4KJ","WPhdOYv7W4Kzb8o8WQFdJW","a8kmWORcMGq","d8owfCo4","zKddU8kEFSksWO0","WQhdJ27cVf8","W4uBWQFcVmkUDSkhnCoCW7i","bSk9WPVcUq","c8o8WOaoW4LtW74xW6hcUq","WOJdMmknua","WR5ZjvSrBW","WPVdVbrwW4i","WRS6uCkNbW","cH3cSmoqmW","W691dIBdThpcNqpcQCol","WOldTfBcN8kl","cmkFWRvRW5m","WQxcNgVdJaNcSCo9W4zwxG","W7nTW4OWrCoiWPC","WQ3dNcdcPCoikCo3W77cRYu","WQpcI3/dGa","W4ldPv7dOde","vSoaW5Do","AGJdQSkiDmkuWPe","WQxdLhdcLxa","WOXuWQldP28","W6v1yqDJqM/cNW","g8oWWPW1","WPxdRJf7W5rtimkLWQpdKG","WPlcGwHIiXpcNa","WPlcGge","FIdcQCk+tq","W5uhiCkEhMyA","W6O+hcxdQhJcIWJcKSoD","W49IW7axuq","W4NdKeZdTqW","gmoSbmo/kW","a8oeW4ldJq","WRXcbxyy","lCoBWRCyW7i","WQ5UwaZdS0dcNbRcIW","WQFcN15jbG","jqCThW","WRLFWQpdGNusW6rzhgu","W7aOhH3dIG","W4myWP/cLmoiBmkXzmkKWRy","WR5iWRK","WPJdT3VcHmknsSoC","EmocW6RdOCop","yYlcO8kIkmonAcqJha","WR0qW53dH8od","W5hdUwFdMta","WRnInhyT","W5ZcOheVsG","WRTBWQldJg0t","WPpdHw7cOCkw","hmozW4C","W7hdLWxdUsNdP2HMWPtcNq","W6xdJHGpu8kz","W41aWRlcUa","WOBdVYrLW7zAhSkOWOpdKq","W75MD0z1x2hdLCo7WRK","oSo3WOaBW5i","W6tdJHKwq8kzh8kWWOlcJW","iJWnc0G","emkQWPbuW7y/","i8oSrr9Uq2JcG8oJpq","WPBdQf7cRvO","WRddGSo3W70","W5unm8ko","baJcQ8oonmk8WPfn","dCo4WOaWW5by","FZRcP8k+eSoWyW","asJcKmoqla","fqNcNmojeCk8WOTc","hSk9xmkUD8kxWOm","W5hdHZPweJdcJfhdMW","C8kkWOCiW7RdMCo/WPiVW5W","uCoCW4Lp","W7xcLI3cRG","lmkGsCkZmSk/WPlcR8oeWPm","fCobbmoHhSkRBevhbW","r2xdQmkBW4y","dmkwWP8","WPNdISohW6RcTq","WR44uCkS","W5ieW5JcMa","WPJdOJvI","W6WHEqbdpvSvWR1LodhdOq","eqtcM8oFnCkMWQbEWQBcQW","WOjhW4CMoG","WR1tWRxdMLamW6zfcM8","W5GicSkrnG","q0xdRW","hSohcmk6","W6JdNLS","W6PGWRa","c8oifCoMnq","WPJcJLNdTHy","WQNdMCoHW6tcGa","WRtcI3ddGbu","eu/cMeTgWRdcUaVdOLm","W6DTW5aWimoaWP/cGu/dHW","W69uW4KieW","hCozW4RdJr4","W5LhWQ8","fSoLW6xcUSo9iG4","W6bOW5u2DSooWOBcIsRdKG","W57cQLJcN8kr","W7e4aYxdQg7cTWRcOG","W7zHWQG","WRWAW4tdMmouW7FdVqzcwW","W6vLW4G0","W6PGWRu","W5meW50","W65bC1i","d8o2WP0L","W75QCKXFrgy","C3GHW4Wz","W5xcR1Gkwmkx","W4ZcLuCmxSkrWR4aW6ey","W4TBWOLFfa","bCoOW6hcTSoulKu","WQ0nW5/dLmoi","WOrqW50KeMBdSMJdNG","W4O8la/dLq","W7L2W7aYCa","W7bpDuxcGa","W5uwnmkkcc5gWRnyyG","WQPjWQpdHgCo","eSkXWPVcJcRdK8ouWRVdQSoT","cre3i20","W6NcMNekEG","W5/dN8kRkW","dmkDWP1pW6aBWP3dOG","W4VdGSkXoI7dHq","W6xdJGSlvCkdlmk0WQ/cIG","W4xdGCkNpq/dGSoWm8ozWO0","lSo1cWaZx2/cGW","gSodW4RdKqGpdqi","EwZdVSkSEa","W7fXWOrGnW","W59hWRi","W6KXf8kYfG","WRVdQmkfimku","emoKW6pcNmoPlurRW5Om","c8oeW4/dMG","WQJdGSkcea","WRHoWQldHg4h","gCoIW7lcNCo+kKnTW5W","W7zrW44","W7TbBulcJCol","WQ/dHCkDdCo4WPD1hSkYDq","qutdKSkBEa","W7X2D0e","eCktWPm","W6zzW4m0da","W7HSv11YrgZdLW","tCoMW4TcW4VcLW","Ed3cRCkPgq","W5LBWQ/cQa","W77cN2RcS8k7","buNcM1O","W65PqdNdTwVcMGJcKSov","W6DiW5qW","cmkTtCk1ymk7WRJcR8ofW54","ovhcM2zy","W7ziW5mW","w8k8aSk3","umoCW4ncW4RcHSo0WRpdRgK","a1tcNum","fmoUW7NcTCoIia","ivBdQmkznmkeWPhcKaX6","eu/cMeTgWRZcPa","W6SRaYpdQq","WR9iWRNdGa","WQhcIhi","b8okW4BdHG","q8kDWO40W4m","uSokWOy","qhOxW4KydLbg","W7ldL0RdRa","FZVcVmkP","W4PhWQNcVq","gCkCWPbyW5OIWO4","fSkmW546pq","WR9BWQldIMuu","WQ8KDCkfea","BCoYuCow","W4vPW4ORpq","WOnbW6O/kgNdQMtdL8oA","WRf2of8","W4NdNSkMoIFdJmodiSkxWPi","WR1GpLGg","W7VcNfBcSq","WOpdVIbGW4n/gW","mGBcI8oFCmoH","W7ldQNVdJW8","cmozWP9+zxhdN2jvW7O","wmkmWQmaW7K","W7H7CexcKq","WQFdObVcOSk2","WRjAnL0+","aSoZW74","W6BdKe/dSsVdQq","WPdcK3L2eG","lCoPvbKhx3FcG8k+iG","WONdJ3m","BCo5WOfYyG","CSkBWOapW73dJW","vSkIaSkRcW","WQOhW4BdH8odW6a","i8oSrr8","WQbyWOhdGe4","W6XHW5G8E8oYWPBcNaddKa","cmkwWOHJyW","W48lnSkFvxCgW7ewEa","cmobdSoJjmk0","WQpcG37dRWe","W5/dN8k7eHG","q8ozWP5R","WQ/dHCkDdCkjWP1+","W5utW4pcG8obD8kxzmk5WRC","bCoMWRJcSSoNlKjKW4e9","W5uGW7NcTmoa","yeXUtG5YfSoZWRddMSkBESkC","W45HWOFcS8kt","WPzuW5WJoG","vCkHgmkJkSoLW6S0bey","WRuZxM9Qz2ddTW","W5K0fZJdNG","iri0cu4","cCkNvmkQDW","fLpcGey","pSo4WOybW5XC","fSoTW74","WPLSWQddJLC","kcG8c3C","W7BdILNdSq","W5yxW4pcHSob","zCkgWPytW7ZdJ8oBWQqYW5O","W7DrWO5nfG","FJFcTCkJaSolzcOzfG","e8k9WOpcUwtdNSo1WQRdVG","eepcGa","c8oWWPy0W5j0W7PyW6xcOW","lmkgFG","WQRdLI/cPCkunSobW7NcTbe","ASo2W7jnW4K","dCkCWOPyW5OIWO4","eSoqgCo4mG","iGO8dL8","pSodh8oIca","nXCXh2uTrG","WPVcGmo7yNVcNmoEamkuWPT5jq","W6KYgbddRW","pG44fhWTtSoLW6VdNG","wCkNbCkLpmoWWRiQxqe","W79jv3Lq","W7rDqftcMSoyW48","FYBcP8k4aSok","mCo1W7xcSCoj","W4rKzftcJq","AmoYWQXKzq","d8o8WPqJW5HyW6j1W7tcUG","WQyAoNr8","W6VcNfS","pXxcGmo4lq","W7rxWOtcICkj","WPWHDSk5nG","cmoTWPrP","W49AWQlcTq","W4rbWRlcOmk0nCoDDmoxW7a","nr8PgW","CSkBWOitW7ZdJ8olWO8","cmoqhCoNnCk1wL5ycG","qCorWOzVuNFdIq","WQNdR3hcVwe","W40tW4G","WQvvfMLbtuu","W5zAW7u0lq","qhOaW48FgvbxWRGO","WRpcJhRdLX7cNCog","gCkWumkSFSk/WPpcVSoZW4q","W6TGWQLp","W59fWQRcUCkZ","WRK5v8kG","AeZdTSkFrmkjWPO","WQOlW47dLa","WRT7WRhdP1m","W75jW4i1lq","WRxdNSoHW7VdNaeKl2yV","W69NWQ9c","eCk1WPVcVq","W69hD0pcT8oqW5i","W6VcGvGzuG","nbG8d1yW","ESoUqCoBW6q","WPb0W5Wioq","rCoxWO5Z","DtpcOCkaoG","W48fB8kBf30kW7bwyG","WQRdMsu","a8o2squc","zu1Otq1YeSosWQRdPmkxwmk8","W65gyftcJCoMW4ldPSkVfa","fmoGW6pcSmoJ","DmkAlSkalW","W44NmCkyiW","WOpdOuNcHSkqrCowWQy","jmo2xrmKra","jupcU0bq","W7WPbJZdUa","rmoIxq","WOnzW4SKoG","W5ydW4lcNq","WRtcGxBdLrFcTCowW5DGra","r8onW7fcW5ZcHSo4WPFdI34","W4ldHCk2iZRcKCkZECkxWPe","W5GAmmktcxeAW4nqEq","q8kHtG","h1lcGf5QW6/dR1ddPK0","WPJdPSkeaCk+","WOtdUrjMW5rFeCk2","eSkXWPS","nqW0df8","W73dGCkmgtS","zCo2W4pdN8og","W6RdKKtdKGi","EmoODSokW7L1WRVcIG","WRS3sSk1hLu","uM/dLSkvW6q","WQqYyCkTja","W61BCK4","ehhcGufx","W5tcHdhdKGFcIJKeW6r3eCkc","WP0pjuXN","W7FdMLJdTZddVhj2WQxcNq","d8o8WOe+W4HzW6LpW5/cSq","hx4FW4K","WQjpWOtdNNi","WQbFWQNdNG","W57dGJ4oBG","B0BdUCkFAmktWQhcKW0+","rSoiWPPMzh3dJh9gW7a","eCoTW7BcTa","WPldMxFcIfxdMH0","b8kXWPZcRctdK8oPWR8","WP7dTYX3","WPzhW4S2nN8","W6eyW4pcV8ol","WR3dGX3cUmkq","rw3dS8ktW7O","e8k9WOhcUa","W6XwWR1JgW","W48hmmkwgNCm","WR7dJCkFdCkXWPTOcG","WQ/cRh/dHJe","W6xdSZ44Ca","WQZdHmoYW6ZcRbiZoKWU","W5TQBx7cJG","W6BcII/cO2TKEG","WR/dKdtcTa","W4OoW5pcUmob","W5RcQsRcT18","ze/dPSkoW6C","jSo4rry","q2hcRW","WRS5s8kG","Cmo+WO1gsa","W79QA0C","W58fW7qwnu3dPeW","mCoNW6ddKX4","WRtdGSoVW6ZcNtK1iLi4","WOldSvJcGSkwx8ojWQy","u8omWP98xa","oSkvWOVcTZO","WPrqW50/kNxdPw7dQCoA","WP9+lM0a","WRZdGmkcc8k6WPTVfW","WQSqahb8weGIoq","WQnpW6KYcG","ANpdSSkuqq","WPGGixnY","WOtdUsP3W4HPc8kOWRRdMG","W7zAW5CAda","WQ/dMSoQ","WQBdGSoOW63cLHqipW","WQ7cHxBdGa","ASoismoMW4e","rMSEW4W","W49DWRpcVSkSxmkBiCoD","jrSWcLyLvSoLWPVdMW","eCoyAquR","r8obW5DcW4RcHSoiWRpdKhy","q8obW4pdPW","vCoDWO5JF3VdJN9WW6O","WR/dHYxcRq","WR7dMYxcUa","W7hdLIJcKu/dOSkwW4flwZCmya","pG44fhWTtSoLW6VdLG","W5uwnmkkcc5gWRm","FKtdQmkjFG","WQhdGf7cKCkO","ydVcSmkPkmonDs4Oaq","WORdPgBcPM4","W6/dINBcLG7dRa","W6tdJHKjwCkfd8kW","WRxdN8oO","vCodsCoWW74","qwOrW5qdh19x","W41KvKvZ","umocW4u","W7jSW50NF8oOWPC","wg7dImkoW7G","W5KqkCkmhG","WQWznbFdMCkkWOpdOmkphCkaW6xdRG","W4bxW78","WQFdQv/cTvS","WRxdJMS","yCkDWOuFW73dMCo3WO80W58","WOddTZnHW4m","j8oHqr4Zu0tcKSo4iW","W44tW5dcKCobD8k7","WPxcL35/cqJcM0pdGSoP","W49bBK50","WRSBW4ddLmoQW7FdOd5Fxq","ha7cJSoFgCkHWO1lWQFcSW","eu/cMeS","vbNcRCkujW","gHFcK8oUaq","W67cKgG","WRldImo0W6xcKGuK","WPNdOcrBW4Hqea","ACo/qmoD","WOpdOIbMW5nf","W5VcNLC","WR7dNfBcM8kr","uSowW5rF","W5izW73cMSotymk6uSkRWQe","WRNdTCkYoSk9","wKNdT8kgW7hdQCkn","cCkWs8k1CCk7WRJcSSoi","WOP+p34E","hSkrWPHpW6a4WPK","WOXeW78KfW","paWKiMm","W5mhomkojhKiW65sCG","W5FcHwaqwq","WRJdVXvLW74","zCoCWQjWFq","qxCsW5ipnfPw","dSoGrZqy","WOJdJsJcGSkR","hSkaWOHv","W7CSaq","bmo1W6xcUSoLieHUW5C","W6ldNetdUsa","uCoAW7jbW40","f8kcWRfiW6y","r8k0lSk4ha","WRZdNCkXi8kq","W4ldKvNdKIO","BSoluSo2W7K","rCkUW7BcSmoOkfrMW5PN","W4VcGLG","W5hcNvSPBa","WQLDjf0E","rNOEW5agcKDxWRGL","rSolWPLJANa","bCkAxmkovG","WPFcK39XeqK","W7H3WQH6o8kBumkRWRhdNq","zWBcP8kudq","W7fvW6mwkW","W63dN8kWgsy","WO9bW4S9la","W4jqWR7cPmkyySktkCotW6u","vCoDWOX4Ag3dHvrBW7a","WQTVw33cPtVdMcVcGmo3WRFdSGO","WPlcGgq","pCkqWP1pW6a5","W6jtW44G","z1hdV8kxAa","W4rbWRlcOmk0","W6SVaW","WOxdSxBcKN8","WRPRWOxdP3C","F8oZrmokW75V","W6RcGfBcV8kZ","WRODeNzuCfG","WR10luiyFW","W65AC0/cHSoEW5/dR8k9","WR4GW5/dHSoK","W7FdLL3dVrRdP3u","W69QW70Teq","WPxdOHD7W4jtemkbWRJdMG","W7RcGJtcOW","W4HhWQ/cPSkI","aY4NfLq","gCkCWPjz","WQ3dG8kyha","W6vyW5q3kXVdL3icWOO","W5lcLvOex8kl","uComW5vc","W61Gz0XZxL3dHmolWRy","WQRdKt7cQCkrimkXW7VdQvu","vxOh","W7ZcHJJcOLf/Bq","W4RdR0ZdOHi","W5FcG3urwCkcWQq","hmoQWOe","WRSJkwv/","WODxW54jhG","W7vHW5eLDSoaWOFcIcRdNa","W67cKvOq","BCojW4jfW7NcLSoJWQ/cMv4","WPxdJMS","W7L9WQ5Vo8kwDG","WQJdMIJcQCkjiSobW7NcUGK","WRJdLmkFgSk3","iCkbu8kDqq","W6ddMWqTya","dmkaWP5j","ESoUB8oBW5S","gJ7cTCooka","WRypW5VdU8oH","W6dcKtdcQW","WQNdM8oHWQFcKaKS","iCo4rrqP","aGlcI8ovm8kNWPXpWPBcPa","W6LTzW","WQNdG8kadCk4","WOhdSIv+W7q","WOH0WPxdNLO","W6/dNSo2W6RdNbqKp0SV","E1xdVSkBB8kfWPRcUamH","B8koWOmuW4JdG8oeWP50W5m","WQ8vWRpdJgWmW6vDigO","gCkNvmkX","WO/cHNLGd0ddLWNdSSo9","W6SYacq","ECo1sq","W4lcI0NcISkp","W6foDLLu","uSocW4xdTSofW7HNkIK","W5LQW6OHmq","W6bOW5v1FSooWOtcGYddHW","W7r2W5a","W6FdMsaStW","fsZcQmoRba","W6hcGLRcP8kqoSkqW4zaCa","W77cH0ZcOq","WPNdS3ZcMmkR","W7K/hspdQ2/dHXVdV8kw","WPm9DCkYiq","z8oQW5rzW7i","DSkIlSk1pG","W4ZdNCkJna","W5VcIeqkwCkgWOirW5Cr","WOhdPuJcL8kswa","WPhcHeycrCkqW7i","WPxdTLpcGmkA","ewlcOMLu","W57dG8kRpG","WQJcGxRdGr7cPSor","rmoqW4TFW53cKq","W7BdMLNdRIddVa","W6XLW4G2CG","W6ddH1VdStFdQ2jmWPpcLW","WRz0iW","WQ3dNcdcPCk4lmo6","W7nHW70hvq","emoarqez","eKFcKaj/WRZcRbRcVvW","W6hcKtu","lmk6rCkUuq","WO/cHNLGd0ddLWNdVmo9","W4WilctdVG","jmoWxriEx38","W6ZdKudcTYldQ2vmWONcKq","WQNdNLNcRSkN","d8ocW4FdHJi5aa","W6DLWQpcL8kg","b1pcH0y","WQlcMYpcSmkllmoTW7NdTru","W6xcRvpcOmkLjW","FSoUu8oBW5r1WRe","FmoYvSow","uSolWO94iNNdIh9RW60","pCkkWPqpW6VcKCkiWP8PW50","WQTMluuaEdWUWQDB","WOjHohKv","AxZdJCkoDG","WPrqW48KoG","WRtcI0JdKqNcVComW5u","WP5JWOldRee","v8ohW4ddTSo0W6vC","W6tcLIRcRG","tvtdHCkmW5NdRSkfiCoGWP8","W6dcHJtcTLHSASoAWPq7","WOC5x8k5oG","fqNcMW","WP8bW7ldP8o/pSochCo1W47cNrBdQq","hCkuWO9yWRn/","BCk3uX4V","fmksWP9BW7y","lwFcUgLk","u8oxWQzLENVdN0HoW6W","W7e9WRzznCkB","dmkGWQFcNIm","naRcTq","W6VdLSkqpZO","W5/dN8kMnI/dGSoYm8ks","W7ddKuldOa","W7Haqdmec2GriwX7Ea","W65lyftcI8orW6BdQmk2ea","WRVdG8kzlCk3WPDY","WQZdKdG","W5NdRGG2xq","FeZdRmkFrmkjWPO","WQG5xmk9hue","WO5bW5OG","amkWtSkVC8k5WOi","saVcP8k6eG","WO9qW5Kpl2VdP3ldQCox","WOpcN1rOnG","WPXxh3q","x8opW4hdTG","r20F","W65NWRvjmCkQAmkJWRJdNq","CSkfc8kPdG","dSoxgCoNE8kKBerjtG","W5dcJZVcJ0e","bG7cNmoFkCkkWO9yWQZcTG","W6SfgSkUaG","WPNdOIr/W5u","WO3dNmoGW77cOG","WP/dPIr8W6bFe8k0W6xdMa","W7VcKZZcQhjKCSoAW6q1","WRZdMCkFaa","W5GfnCkifW","fmkMWORcGZ/dKSoXWR/dQq","W53dICkynH8","W690W6uBoa","W7VdUCktpsm","WQxdVcFcT8k0","WQtdUwJcR18","WP/dN2T/dG3cMvtdUCoO","pre+g04TtCoU","WPxcM3T1iXpcNa","WQBdSrTgW58","W5RcGL0vtG","FYFcPmk4hSonAYO","WOnUWQldHNa","dCo1WPSIW4K","WOtcIhNdRa4","bSkKWOpcTt8","gSodW4RdKqGpeaNdUGm","h8ofcmo0","WQ4Ij05h","gmo3W5WWW5fcW7nFW67cSq","i8osW4dcM8oM","FmkYpSk/kG","lCo0omoZoW","AZFcSG","WO9dW4SzmwhdQq","W4xcOLRcJSkx","ACo/vCoxW7L5WORcMCk0WQq","WPSSb3jP","bmo1W7BcOCo/nhzHW5OG","W6hcJtdcVG","EKRdLSkvBmkfWOZcPamM","w3OeW78Ab1jlWRGL","oaO4f0K","W7S6gYNdTq","WQG5xmkX","WQ0/vmkXoKi","W601bJi","WRpdGSoPW6W","WQjSW48MoG","W79MzvTJrvldKCowWRW","amkMWOm","l8kNASkuFW","W4tdKmkVnG","e8kUW6xcTSo6mKr7W5O7","W7VcQdFcJ0y","t0xdTq","W5XhWQNcPmkOBmkDnW","WQLdWO/dNMGbW7vz","W4Knk8kFfuSDW6vjCG","W61TW4OWrCovWOhcJbVdHG","WQJcGhvsfW","WOxdHhFcJuBdNcCgW5Dq","qCoBW5/dUW","uSoPWOa+W4vsWQvlW6ZcVa"];return F4=function(){return t},F4()}var WLe=async t=>{let e=Cs;return globalThis[e(1094,"$jU5")]?await globalThis[e(692,"URuC")](t):t};function Mnr(){let t=Cs;return(globalThis[t(735,"rlOa")]||[])[t(573,"$jU5")](r=>r[t(498,"dde[")]===t(632,"5txH"))||{}}function $Le(t){let e=Cs,r={rVZaN:function(n,s){return n(s)},gBkwB:function(n,s){return n||s}};return r[e(732,"WZpm")](String,r[e(713,"hi!E")](t,""))[e(505,"Pbkv")](",")[1986*-2+44*154+2*-1402][e(759,"Sg)5")]()}function BLe(t){let e=Cs;return{xrLgj:function(n,s){return n(s)}}[e(1090,"bAH5")]($Le,t)[e(566,"[PKS")](/^\w+:\/\//,"")[e(877,"$jU5")]("/")[721+103*-7][e(1050,"dde[")]()}function Cs(t,e){let r=F4();return Cs=function(n,s){n=n-(2981+2614*-1);let i=r[n];if(Cs.yyJTCR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};Cs.IpjRqt=l,t=arguments,Cs.yyJTCR=!0}let o=r[2781+9*-309],c=n+o,u=t[c];return u?i=u:(Cs.LQYjhG===void 0&&(Cs.LQYjhG=!0),i=Cs.IpjRqt(i,s),t[c]=i),i},Cs(t,e)}function Wnr(t){let e=Cs,r={AgRls:function(u,l){return u(l)},XZcXX:e(868,"a8&$")+e(949,"Pbkv"),gcoae:e(940,"xv$$")+e(987,"HxpU"),xIBCf:e(621,"fQ#0"),XjBSm:e(704,"Pbkv"),jqQtH:e(1051,"xQ)x")},n=r[e(1082,"1*!")]?.[e(664,"IP#v")]?.()?.[e(628,"IjC$")]||"")[e(967,")1*!")](),s=r[e(631,"8Lel")](BLe,t?.[e(643,"dde[")]?.[r[e(801,"O&ab")]]),i=s||r[e(500,"Ynsb")](BLe,t?.[e(728,"W0z*")]?.[e(1033,"fQ#0")]);if(!i)return n;let a=r[e(832,"w9z6")]($Le,t?.[e(996,"fQ#0")]?.[r[e(677,"A9(V")]]),o=n[e(811,"jA9E")](r[e(864,"Ynsb")])?r[e(1062,"(qYv")]:r[e(665,"2a7K")];return(a||r[e(883,"V)Hk")](String,t?.[e(908,"Pbkv")]||"")[e(395,"zYqv")]()||o)+e(831,"HxpU")+i}function $nr(t){let e=Cs,r={ISvYU:function(n,s){return n(s)},cgeJz:function(n,s){return n??s}};return LI.default[e(656,"rlOa")][e(533,"7Kze")][e(676,"xv$$")](LI.default[e(587,"HxpU")](r[e(497,"[PKS")](String,r[e(438,"(qYv")](t,""))))[e(549,"7Kze")]()}function LLe(t,e=15){let r=Cs,n={jHzjJ:function(i,a){return i(a)},WpNJr:function(i,a){return i||a},zOWvJ:function(i,a){return i<a},pmUzm:function(i,a){return i-a},odYyW:function(i,a,o){return i(a,o)},YgCcF:function(i){return i()}},s=n[r(422,"jA9E")](String,n[r(546,"w9z6")](t,""))[r(1091,"jsU%")](/x-oss-expires=(\d+)/i);return s?n[r(551,"P$LD")](n[r(381,"#c#!")](n[r(552,"1K)4")](parseInt,s[-6308+-128*53+-1*-13093],-71*-71+65+-392*13),n[r(1048,"IjC$")](_u.default)[r(702,"Ynsb")]()),e):!1}function ULe(t){let e=Cs,r={pAaJS:e(929,"fk%f"),vTYIn:function(s,i){return s+i},EhwqD:function(s){return s()}};if(!t?.[e(563,"HxpU")+"en"])return{};let n={...t};return n[e(1043,"W0z*")]||=(n[e(604,"xQ)x")]||r[e(509,"zYqv")])+" "+n[e(725,"8Lel")+"en"],!n[e(888,"7Kze")+"e"]&&n[e(1075,"hi!E")]&&(n[e(385,"Sg)5")+"e"]=r[e(1031,"[PKS")](r[e(988,"[PKS")](_u.default)[e(1097,"w9z6")](),n[e(539,"fQ#0")])),n}function Unr(t){let e=Cs,r={BdHzp:function(n,s){return n!==s},XkMfR:e(833,"w9z6"),JtnNV:e(824,"IP#v"),EvauG:e(490,"q@A)")};return t?r[e(670,"Oo8o")](typeof Buffer,r[e(775,"1K)4")])?JSON[e(641,"xQ)x")](Buffer[e(403,"Pbkv")](t,r[e(960,"#c#!")])[e(377,"8Lel")](r[e(962,"V)Hk")])):JSON[e(622,"HxpU")](LI.default[e(751,"8Lel")][e(416,"L#Th")][e(447,"2a7K")](t)[e(815,"(qYv")](LI.default[e(822,"L#Th")][e(973,"fk%f")])):null}function FLe(t){let e=Cs,r={qQUJw:e(382,"]xNp")},n=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/,s=n[e(654,"7Kze")](t);return s?{shareId:s[-3752+-9*330+27*249]||s[3127+-11*818+-1175*-5],folderId:s[-2543*3+3985+3647*1]||s[3847*2+-2525*-3+-15263*1]||r[e(707,"zYqv")]}:null}var Fnr=qt(797,"a8&$")+qt(970,"Pbkv")+qt(748,"IjC$"),qnr=qt(492,"Pbkv")+qt(1009,"dde[")+qt(952,"A9(V")+qt(477,"V)Hk"),D0={},jnr=[qt(1106,"Pbkv"),qt(731,"q@A)"),qt(1047,"IP#v"),qt(705,"lZs)"),qt(610,"![Jl")],MI=qt(559,"![Jl"),qLe=qt(1064,"(qYv"),jLe=qt(1013,"RufB")+qt(961,"XV(r"),MLe=qt(454,"q@A)"),nn={},B0={},Eb=null,Nl=null,rK="",rg="",q4={"User-Agent":O0,Referer:qt(448,"V)Hk")+qt(978,"lZs)")+qt(990,"8Lel")};async function WI(t){let e=qt,r={omoJG:function(a,o){return a(o)},TzVHV:function(a,o){return a(o)}};Eb=t[e(787,"A9(V")].db;let n=t[e(1022,"U3K9")][e(391,"xv$$")]?.[e(396,"(qYv")]||{},s=await Eb[e(928,"W0z*")+e(516,"91jT")](MI,{});rK=r[e(548,"A9(V")]($nr,n[e(379,"RufB")]),rg=r[e(686,"rlOa")](String,s[qLe]||"")[e(784,"w9z6")]()||r[e(945,"q@A)")](String,s[rK]||"")[e(617,"XV(r")]()||r[e(746,"hi!E")](String,n[e(1087,"hi!E")]||"")[e(390,"]xNp")]();let i=await Eb[e(1109,"xv$$")+e(711,"jA9E")](MI+"/"+jLe,{});B0=r[e(556,"WZpm")](ULe,i)}async function Qnr(t){let e=qt,r={PBEIO:function(n,s){return n(s)},cHxjj:function(n,s){return n||s}};rg=r[e(1003,"q@A)")](String,r[e(1e3,")1*!")](t,""))[e(747,"W0z*")](),rg&&(await Eb[e(818,"W0z*")](MI+"/"+qLe,rg),await Eb[e(818,"W0z*")](MI+"/"+rK,rg))}async function Hnr(t){let e=qt;B0={reARO:function(n,s){return n(s)}}[e(792,"bAH5")](ULe,t),B0[e(563,"HxpU")+"en"]&&await Eb[e(914,"5txH")](MI+"/"+jLe,B0)}async function j4(t,e,r,n){let s=qt,i={HiTwX:function(u,l){return u||l},NwoHA:s(1070,"xv$$"),OkAmB:function(u,l){return u===l},GUXQo:function(u,l){return u>l},ReOnI:function(u,l){return u(l)},gAdoC:function(u,l,d,f,p){return u(l,d,f,p)},OXlmn:function(u,l){return u-l}};r=i[s(562,"U3K9")](r,{});let a=t[s(1041,"tWQ%")](i[s(386,"]xNp")]);Object[s(1093,"zYqv")](r,q4),a&&nn[s(408,"7Kze")]&&Object[s(689,"Oo8o")](r,{Authorization:nn[s(432,"ilWv")]});let o=await fe[s(658,"RWdJ")](Fnr+"/"+t,e,{headers:r})[s(749,"ilWv")](u=>u[s(627,"U3K9")]||{status:500,data:{}}),c=i[s(669,"xQ)x")](n,-193*-40+-43*70+1*-4707);return i[s(943,"Sg)5")](o[s(708,"7Kze")],-317*25+-6897+1*15251)&&i[s(638,"[PKS")](c,0)?(await i[s(531,"]xNp")](pf,-1184*-6+-1535+-4569),i[s(951,"bAH5")](j4,t,e,r,i[s(657,"O&ab")](c,-324+-199*20+123*35))):o[s(879,")1*!")]||{}}async function wc(t,e,r,n){let s=qt,i={iuTsr:function(c,u){return c||u},ooIpM:function(c,u){return c===u},oKnIr:function(c,u){return c>u},YDlNu:function(c,u){return c(u)},jXaBZ:function(c,u,l,d,f){return c(u,l,d,f)},scUju:function(c,u){return c-u}};r=i[s(668,"rlOa")](r,{}),B0[s(387,"Ynsb")]&&Object[s(1099,"w9z6")](r,{Authorization:B0[s(674,"IP#v")]});let a=await fe[s(588,"1K)4")](qnr+"/"+t,e,{headers:r})[s(526,"xv$$")](c=>c[s(529,"O&ab")]||{status:500,data:{}}),o=i[s(560,"zYqv")](n,5488+3*-2962+3401);return i[s(485,"WZpm")](a[s(655,"xQ)x")],3159+787*-7+-2779*-1)&&i[s(906,"W0z*")](o,3769+2554*3+11431*-1)?(await i[s(629,"7Kze")](pf,-31*-6+4329+-3515),i[s(625,"[PKS")](wc,t,e,r,i[s(678,"RWdJ")](o,1333+4*-333))):a[s(493,"91jT")]||{}}async function nK(){let t=qt,e={wIdVc:function(r,n){return r<n},XojYW:function(r,n){return r-n},DEoKk:function(r){return r()},MqdwQ:t(1092,"fQ#0")+t(1021,"A9(V")+t(372,"fk%f")+t(684,"xv$$")+t(752,"fk%f"),OJFnh:t(484,"q@A)")+t(1057,"P$LD"),GlbZt:function(r,n){return r===n},kgcfs:function(r,n){return r(n)},sJSPP:function(r,n){return r(n)}};if(rg&&(!nn[t(993,"a8&$")]||e[t(1104,"HxpU")](e[t(1095,"91jT")](nn[t(923,"XV(r")+"e"],e[t(867,"[PKS")](_u.default)[t(380,"Pbkv")]()),-7650+42*-201+16212))){let r=await fe[t(1032,"IjC$")](e[t(857,"IjC$")],{refresh_token:rg,grant_type:e[t(483,"Oo8o")]},{headers:q4})[t(895,"lZs)")](n=>n[t(567,"$jU5")]||{status:500,data:{}});e[t(598,"jA9E")](r[t(480,"RufB")],5237*1+-4435+-1*602)&&(nn=r[t(586,"ilWv")],nn[t(981,"(qYv")+"e"]=e[t(826,"IP#v")](_u.default,r[t(493,"91jT")][t(913,"[PKS")+"e"])[t(367,"fk%f")](),nn[t(674,"IP#v")]=nn[t(593,"IjC$")]+" "+nn[t(640,"tWQ%")+"en"],await e[t(478,"8Lel")](Qnr,nn[t(698,"Oo8o")+t(919,"W0z*")]))}}async function QLe(){let t=qt,e={qrJUy:function(r,n){return r>=n},vvQxw:function(r,n){return r-n},GnrJo:function(r){return r()},XbBYN:function(r,n){return r<n},ZstNa:function(r,n){return r-n},kbQmN:t(541,"]xNp")+t(805,"XV(r")+t(521,"fQ#0")+t(905,"xv$$"),EJoih:t(599,"fk%f"),wxZeV:t(1071,"bAH5")+"o",xWZuO:t(504,"URuC"),Uqlzy:t(760,"a8&$")+t(881,"q@A)")+t(436,"fQ#0")+t(1030,"ilWv")+t(418,"Oo8o"),DYave:t(852,")1*!")+t(1066,"bAH5")+t(794,"]xNp")+t(1102,"ilWv"),sVHAd:t(765,"5txH"),fOmXJ:t(616,"Oo8o")+"ri",ttuvQ:t(471,"91jT"),PDdgW:t(984,"(qYv"),yagLM:t(564,"Oo8o")+t(829,"URuC"),FtbbB:t(1044,"Sg)5")+t(974,"jA9E"),drMQc:t(538,"w9z6")+t(964,"![Jl")+t(443,"xv$$")+t(758,"zYqv"),wjIVV:t(442,"dde[")+t(810,"tWQ%")+t(972,"q@A)")+t(1073,"lZs)"),fhDNu:function(r,n){return r(n)},OaHac:t(701,"IP#v"),YJere:function(r,n){return r+n},AsiXk:function(r,n){return r+n},eMqvK:function(r,n){return r(n)},riLTY:t(736,"RWdJ")+t(995,"RufB")};if(!(B0[t(1053,"L#Th")+"en"]&&e[t(769,"U3K9")](e[t(571,"XV(r")](B0[t(981,"(qYv")+"e"],e[t(1026,"q@A)")](_u.default)[t(891,"W0z*")]()),120*80+1634+-11114))&&((!nn[t(860,"fk%f")]||e[t(488,"Pbkv")](e[t(812,"jA9E")](nn[t(614,"RWdJ")+"e"],e[t(989,"zYqv")](_u.default)[t(618,"XV(r")]()),-3613+-3143*1+6816))&&await e[t(570,"dde[")](nK),!!nn[t(453,"]xNp")]))try{let r=await fe[t(464,"]xNp")](e[t(433,"zYqv")],{params:{driver:e[t(542,"fk%f")],driver_txt:e[t(863,"w9z6")],server_use:e[t(715,"Ynsb")]}}),n=new URL(r[t(1076,"bAH5")]?.[t(582,"XV(r")]),s=await fe[t(721,"fk%f")](e[t(515,"rlOa")],{authorize:1,scope:e[t(844,"RufB")]},{params:{client_id:n[t(1100,"U3K9")+"ms"][t(885,"RufB")](e[t(444,"dde[")]),redirect_uri:n[t(901,"8Lel")+"ms"][t(544,"$jU5")](e[t(609,"7Kze")]),scope:e[t(900,"2a7K")],state:n[t(836,"jsU%")+"ms"][t(838,"XV(r")](e[t(595,"Oo8o")]),response_type:e[t(623,"O&ab")]},headers:{...q4,"Content-Type":e[t(520,"RufB")],Authorization:nn[t(1023,"Pbkv")]}}),i=s[t(513,"$jU5")]?.[t(389,"RWdJ")+"i"],a=i?.[t(788,"bAH5")](/code=([a-zA-Z0-9]+)/)?.[74*-132+8147+-811*-2];if(!a)throw new Error(e[t(481,"xv$$")]);let o=await fe[t(907,"P$LD")](e[t(407,"1K)4")],{params:{code:a},headers:{Cookie:e[t(980,"IP#v")],"User-Agent":O0},maxRedirects:0,validateStatus:l=>l>=-7596+235*-8+9676&&l<-19*450+303*15+4405}),c=o[t(968,"HxpU")]?.[t(869,"91jT")]?.[t(979,"O&ab")]("#")[1],u=e[t(694,"Ynsb")](Unr,c);if(u?.[t(725,"8Lel")+"en"]){let l={...u,auth:(u[t(910,"fQ#0")]||e[t(373,"HxpU")])+" "+u[t(467,"XV(r")+"en"],expire_time:u[t(789,"A9(V")]?e[t(482,"jsU%")](e[t(682,"A9(V")](_u.default)[t(898,"lZs)")](),u[t(460,"tWQ%")]):e[t(969,"[PKS")](e[t(695,"w9z6")](_u.default)[t(1049,"1K)4")](),7200)};await e[t(706,"[PKS")](Hnr,l)}}catch(r){console[t(413,"jA9E")](e[t(935,"7$Tl")],r[t(843,"Sg)5")])}}async function Gnr(){let t=qt,e={oHdcJ:function(n,s,i){return n(s,i)},ejJkM:t(1101,"w9z6")+t(1074,"URuC"),bATWi:function(n,s){return n>s},OEbOk:function(n,s,i){return n(s,i)},lUWbQ:t(620,"91jT")+t(534,"2a7K")};if(!Nl||!nn[t(532,"lZs)")]?.[t(1007,"zYqv")+t(807,"7Kze")])return;let r=await e[t(577,"(qYv")](wc,e[t(1056,"fQ#0")],{drive_id:nn[t(872,"rlOa")][t(558,"q@A)")+t(581,"W0z*")],parent_file_id:Nl,limit:100});if(Array[t(730,"rlOa")](r[t(894,"91jT")])&&e[t(1019,"O&ab")](r[t(703,"HxpU")][t(723,"rlOa")],-24*-137+-5620+2*1166))for(let n of r[t(510,"Ynsb")])await e[t(839,"U3K9")](wc,e[t(421,"XV(r")],{drive_id:nn[t(1054,"2a7K")][t(997,"lZs)")+t(1081,"8Lel")],file_id:n[t(507,"HxpU")]})}async function znr(){let t=qt,e={TSWHm:function(o,c,u){return o(c,u)},ncXJm:t(809,"Oo8o")+t(653,"xQ)x"),xinPM:function(o,c,u){return o(c,u)},TSCnc:t(426,"ilWv")+t(918,"7Kze"),KPeGA:t(1080,"q@A)"),sDaIA:t(756,"HxpU"),FDlXf:t(847,"jA9E"),watfn:t(771,"#c#!")+t(814,"2a7K"),agpBR:t(429,"tWQ%"),wNYLD:t(371,"jsU%")};if(!nn[t(662,"Sg)5")])return null;if(Nl)return Nl;let r=await e[t(882,"xv$$")](wc,e[t(1105,"URuC")],{});if(!r[t(644,"a8&$")+t(514,"jsU%")])return null;nn[t(635,"fQ#0")]=r;let n=r[t(501,"![Jl")+t(581,"W0z*")],s=await e[t(1067,"Ynsb")](wc,e[t(798,"lZs)")],{drive_id:n,parent_file_id:e[t(803,"Pbkv")],limit:100,order_by:e[t(574,"URuC")],order_direction:e[t(580,"jsU%")]}),i=Array[t(479,"jsU%")](s[t(696,"2a7K")])?s[t(470,")1*!")][t(720,"IP#v")](o=>o[t(717,"W0z*")]===MLe):null;return i?.[t(393,"]xNp")]?(Nl=i[t(799,"ilWv")],Nl):(Nl=(await e[t(1107,"fQ#0")](wc,e[t(425,"a8&$")],{check_name_mode:e[t(605,"Ynsb")],drive_id:n,name:MLe,parent_file_id:e[t(887,"#c#!")],type:e[t(963,"91jT")]}))[t(473,"91jT")]||null,Nl)}async function sK(){let t=qt,e={SpFbo:function(r){return r()},SAXrj:function(r,n,s){return r(n,s)},IlFrd:t(511,"IjC$")+t(886,"2a7K")};if(await e[t(932,"5txH")](nK),await e[t(934,"]xNp")](QLe),!nn[t(718,"Pbkv")]?.[t(462,"RufB")+t(661,"P$LD")]){let r=await e[t(613,"ilWv")](wc,e[t(1012,"5txH")],{});r[t(557,"A9(V")+t(714,"A9(V")]&&(nn[t(1014,"hi!E")]=r)}return nn[t(1014,"hi!E")]?.[t(1025,"8Lel")+t(807,"7Kze")]||""}async function Knr(t){let e=qt,r={unyAQ:function(i){return i()},kpxAY:function(i,a){return i||a},ZALGS:function(i,a,o){return i(a,o)},qiwZr:e(859,"W0z*")+e(819,"P$LD")+e(946,"Oo8o")},n=await r[e(439,"w9z6")](sK);if(r[e(1016,"jA9E")](!n,!t))return null;let s=await r[e(827,"]xNp")](wc,r[e(475,"lZs)")],{file_id:t,drive_id:n});return s?.[e(795,"W0z*")]?s:null}async function Vnr(t){let e=qt,r={TFLAu:function(a){return a()},ytHBh:function(a,o){return a||o},RTmsc:function(a,o,c){return a(o,c)},yVaqM:e(858,"xQ)x")+e(716,"xQ)x")+e(1055,"zYqv")+"fo",vpnTV:e(647,"L#Th")+e(424,"A9(V"),eKPQB:e(405,"Oo8o")},n=await r[e(1015,"A9(V")](sK);if(r[e(830,"$jU5")](!n,!t))return null;let s=await r[e(409,"Ynsb")](wc,r[e(457,"91jT")],{file_id:t,drive_id:n,category:r[e(742,"U3K9")],url_expire_sec:r[e(770,"L#Th")]}),i=s?.[e(465,"q@A)")+e(845,"2a7K")+e(790,"jA9E")];return i?.[e(850,"URuC")+e(1029,"IP#v")]??i?.[e(624,"RufB")+e(412,"w9z6")+e(806,"#c#!")]??null}async function HLe(t,e=qt(506,"1K)4"),r=""){let n=qt,s={BrWHm:function(o,c){return o(c)},fpFGf:function(o){return o()},QHQnj:function(o,c,u){return o(c,u)},jpkTG:n(476,"91jT")+n(427,"[PKS"),CxdBL:function(o,c){return o||c},RVpcW:n(615,"5txH"),gWuoN:n(397,"7$Tl"),vXeFO:n(637,"bAH5"),hsqWW:function(o,c){return o(c)}};await s[n(903,"Sg)5")](WI,t);let i=await s[n(942,"bAH5")](sK);if(!i)return{items:[],next_marker:""};let a=await s[n(865,"w9z6")](wc,s[n(650,"L#Th")],{drive_id:i,parent_file_id:s[n(954,"Ynsb")](e,s[n(456,"zYqv")]),limit:200,order_by:s[n(554,"]xNp")],order_direction:s[n(966,"$jU5")],marker:s[n(673,"XV(r")](r,"")});return{items:Array[n(1011,"O&ab")](a?.[n(930,"a8&$")])?a[n(1063,"IjC$")]:[],next_marker:s[n(1008,"lZs)")](String,a?.[n(1045,")1*!")+"r"]||""),drive_id:i}}async function GLe(t){let e=qt,r={kwnxR:function(n,s){return n<s},sBPqr:function(n,s){return n-s},zzHju:function(n){return n()},QURwC:function(n,s,i){return n(s,i)},TXoLm:e(383,"lZs)")+e(800,"A9(V")+e(862,"$jU5"),aqZKF:function(n,s){return n(s)}};if(!D0[t[e(710,"WZpm")]]||r[e(430,"V)Hk")](r[e(1028,"91jT")](D0[t[e(502,"(qYv")]][e(614,"RWdJ")+"e"],r[e(977,"L#Th")](_u.default)[e(834,"A9(V")]()),6842+-6722*1)){delete D0[t[e(415,"xQ)x")]];let n=await r[e(603,"WZpm")](j4,r[e(547,"5txH")],{share_id:t[e(1036,"RufB")],share_pwd:t[e(1098,"IP#v")]||""});n[e(642,"ilWv")+"e"]&&(n[e(992,"xQ)x")+"e"]=r[e(681,"fk%f")](_u.default,n[e(779,"rlOa")+"e"])[e(414,"#c#!")](),D0[t[e(948,"]xNp")]]=n)}}async function Ynr(t){let e=qt,r={dYYRk:function(o,c,u,l){return o(c,u,l)},EgcwI:e(774,"lZs)")+e(983,"XV(r")+e(909,"zYqv"),fDnHB:e(904,"w9z6"),lyamF:e(466,"Sg)5"),OAdkq:function(o,c){return o||c},bTAcT:function(o,c,u,l){return o(c,u,l)},LTnAS:function(o,c){return o===c},pNImV:e(530,"ilWv"),HOUfq:function(o,c){return o===c},qddlR:e(648,"]xNp"),RlsIj:function(o,c){return o===c},obtXm:e(517,"7Kze"),jYMtn:function(o,c){return o<c},mryXY:function(o,c){return o*c},kjUDd:function(o,c){return o*c},hwMuc:function(o,c){return o===c},OPgzW:function(o,c,u){return o(c,u)},CchNM:function(o,c,u){return o(c,u)},GZuxt:function(o,c){return o===c},NJsqk:e(368,"zYqv"),gYWtm:function(o,c){return o(c)},bPELa:function(o,c){return o(c)},dmYxJ:function(o,c){return o>c}},n=r[e(985,"A9(V")](typeof t,r[e(584,"W0z*")])?r[e(813,"HxpU")](FLe,t):t;if(!n)return[];if(await r[e(1017,"rlOa")](GLe,n),!D0[n[e(1039,"Sg)5")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(660,"fk%f")](j4,r[l(472,")1*!")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(1108,"fk%f")],order_direction:r[l(931,"bAH5")],marker:r[l(596,"$jU5")](u,"")},{"X-Share-Token":D0[o][l(525,"jsU%")+"n"]}),f=d[l(856,"xQ)x")];if(!f)return[];if(d[l(697,"Pbkv")+"r"]){let m=await r[l(446,"Pbkv")](a,o,c,d[l(667,"fQ#0")+"r"]);for(let h of m)f[l(808,"7Kze")](h)}let p=[];for(let m of f)if(r[l(741,"Sg)5")](m[l(922,")1*!")],r[l(634,"P$LD")]))p[l(512,"URuC")](m);else if(r[l(468,"RWdJ")](m[l(1006,"91jT")],r[l(753,"xQ)x")])&&r[l(663,"jA9E")](m[l(576,"fk%f")],r[l(944,")1*!")])){if(r[l(745,"L#Th")](m[l(402,"RufB")],r[l(666,"91jT")](r[l(975,"xQ)x")](238*22+9359+-13571,10062+-9038*1),-13*-311+-5175+1137)))continue;m[l(568,"xQ)x")]=m[l(608,"(qYv")][l(575,"fQ#0")](/玩å¶å“¥.*ã€ç¥žç§˜çš„哥哥们】/g,""),s[l(374,"8Lel")](m)}else r[l(679,"IP#v")](m[l(986,"RWdJ")],r[l(376,"Ynsb")])&&m[l(1065,"]xNp")+l(761,"lZs)")]&&jnr[l(899,"IjC$")](h=>m[l(936,"tWQ%")+l(590,"8Lel")][l(938,"zYqv")](h))&&i[l(914,"5txH")](m);for(let m of p){let h=await r[l(851,"V)Hk")](a,m[l(671,"![Jl")],m[l(802,"7$Tl")]);for(let y of h)f[l(535,"dde[")](y)}return f};return await r[e(729,"A9(V")](a,n[e(941,"xv$$")],n[e(607,"IjC$")]),r[e(846,"a8&$")](i[e(916,"xQ)x")],-692+52*153+-7264)&&s[e(738,"URuC")](o=>{let c=e,u=r[c(398,"tWQ%")](Tl,o,i);u[c(600,"WZpm")]&&(o[c(594,"O&ab")]=u[c(1088,"2a7K")][c(406,"zYqv")])}),s}var tg={};async function zLe(t,e){let r=qt,n={hOaRD:function(i){return i()},hCRgL:function(i){return i()},WFgLE:function(i){return i()},wUPWJ:function(i,a){return i(a)},gWTJv:function(i,a,o,c){return i(a,o,c)},abpYA:r(726,"XV(r")+r(463,"$jU5")};if(await n[r(939,"xQ)x")](nK),await n[r(690,"Sg)5")](QLe),await n[r(461,"URuC")](znr),!Nl||!nn[r(452,"Sg)5")]?.[r(1027,"U3K9")+r(840,"HxpU")])return null;if(tg[e])return tg[e];await n[r(589,"Oo8o")](Gnr);for(let i of Object[r(561,"zYqv")](tg))delete tg[i];if(await n[r(417,"A9(V")](GLe,{shareId:t}),!D0[t])return null;let s=await n[r(880,"WZpm")](j4,n[r(733,"2a7K")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Nl,to_drive_id:nn[r(782,"O&ab")][r(1027,"U3K9")+r(1086,"xv$$")]},{"X-Share-Token":D0[t][r(878,"7$Tl")+"n"]});return s[r(791,"XV(r")]?(tg[e]=s[r(817,"5txH")],s[r(496,"Oo8o")]):null}async function iK(t,e,r=!0){let n=qt,s={XrEzw:function(u,l){return u===l},NfLBK:n(606,"IjC$"),KwBfg:function(u,l){return u(l)},RYtvX:function(u,l,d){return u(l,d)},RPzln:n(927,")1*!")+n(537,"RWdJ")+n(1024,"xQ)x")+"fo",JAkxo:n(911,"bAH5")+n(841,"1K)4"),fDVGM:n(1005,"U3K9"),IOBSv:function(u,l){return u&&l},WwNmE:function(u,l,d,f){return u(l,d,f)}};if(s[n(419,"tWQ%")](t,s[n(998,"bAH5")]))return await s[n(777,"V)Hk")](Vnr,e);let i=await s[n(793,"ilWv")](zLe,t,e);if(!i||!nn[n(718,"Pbkv")]?.[n(750,"L#Th")+n(870,"a8&$")])return null;let a=await s[n(889,"WZpm")](wc,s[n(719,"91jT")],{file_id:i,drive_id:nn[n(709,"#c#!")][n(722,"Ynsb")+n(982,"bAH5")],category:s[n(428,"Oo8o")],url_expire_sec:s[n(783,"]xNp")]}),o=a?.[n(854,"L#Th")+n(893,"![Jl")+n(375,"IP#v")],c=o?.[n(850,"URuC")+n(378,"RWdJ")]??o?.[n(579,"IjC$")+n(739,"XV(r")+n(1083,"rlOa")]??null;return s[n(527,"V)Hk")](!c,r)?(delete tg[e],s[n(489,"1K)4")](iK,t,e,!1)):c}async function KLe(t,e,r=!0){let n=qt,s={dPIAl:function(o,c){return o===c},CNEsZ:n(675,"lZs)"),lxbMe:function(o,c){return o(c)},czWeC:function(o,c,u){return o(c,u)},XKkXP:function(o,c,u){return o(c,u)},EzGbU:n(757,"tWQ%")+n(410,"2a7K")+n(639,"[PKS"),NWMyo:function(o,c,u,l){return o(c,u,l)}};if(s[n(1002,"jA9E")](t,s[n(754,"zYqv")]))return await s[n(583,"dde[")](Knr,e);let i=await s[n(917,"Ynsb")](zLe,t,e);if(!i||!nn[n(532,"lZs)")]?.[n(1084,"rlOa")+n(441,"fk%f")])return null;let a=await s[n(649,"RufB")](wc,s[n(601,"2a7K")],{file_id:i,drive_id:nn[n(545,"91jT")][n(597,"2a7K")+n(469,"IP#v")]});return a[n(762,"7Kze")]?a:r?(delete tg[e],s[n(766,"Ynsb")](KLe,t,e,!1)):null}async function VLe(t){let e=qt,r={mMrpT:function(i,a){return i(a)},ESsrJ:function(i,a){return i(a)},bLwHr:function(i,a,o){return i(a,o)},LLkZw:function(i,a){return i(a)},eUqcy:e(370,"Ynsb")};if(!r[e(764,"8Lel")](W4,t))return null;let n=r[e(776,"RWdJ")](FLe,t);if(!n)return null;let s=await r[e(572,"P$LD")](Ynr,n);return s=s[e(1059,"A9(V")](i=>{let a=e;return{vod_id:[i[a(1103,"7$Tl")],i[a(404,"IP#v")],i[a(630,"![Jl")]?i[a(873,"RufB")][a(473,"91jT")]:""][a(1001,"7$Tl")]("*"),vod_name:i[a(848,"5txH")],vod_size:i[a(508,"hi!E")]}}),r[e(683,"7Kze")](Is,await r[e(926,")1*!")](WLe,r[e(420,"jsU%")]),s)}var eg={},_b={};async function Q4(t,e){let r=qt,n={AoxrC:function(m,h){return m(h)},XLKps:function(m,h){return m!==h},sEqbX:r(522,"XV(r"),RgCEH:function(m,h){return m===h},TIUuN:r(1068,"7$Tl"),nIkwS:function(m,h,y){return m(h,y)},kTaXz:r(842,"2a7K"),DlbIu:r(540,"Sg)5"),sXTAF:function(m,h,y){return m(h,y)},dVhnZ:r(965,"xQ)x")+r(861,"fQ#0"),VPDfz:function(m,h,y){return m(h,y)},vArXf:r(767,"bAH5")+r(499,"WZpm"),LyvCY:function(m,h){return m===h},CBjgt:r(958,"xQ)x"),UYRAA:r(743,"IP#v"),WjEiQ:function(m){return m()},hwFnT:function(m,h,y,g,b,x,A){return m(h,y,g,b,x,A)},OrxBk:function(m,h){return m*h}};await n[r(450,"lZs)")](WI,t);let s=t[r(1018,"zYqv")][r(971,"$jU5")],i=t[r(1035,"q@A)")][r(401,"A9(V")],a=t[r(780,"O&ab")][r(633,"bAH5")],o=t[r(925,"fk%f")][r(897,"1K)4")];if(n[r(592,"7$Tl")](s,n[r(528,"fQ#0")]))return;let c=t[r(550,"1K)4")][r(778,"w9z6")],u=t[r(691,"a8&$")][r(486,"#c#!")];if(n[r(1089,"lZs)")](i,n[r(1085,"URuC")])){if(eg[o]){let y=eg[o][r(991,"q@A)")](g=>g[r(734,"bAH5")+"d"][r(659,"dde[")+"e"]()===c);y?.[r(1060,"URuC")]&&n[r(523,"ilWv")](LLe,y[r(902,"$jU5")])&&delete eg[o]}!eg[o]&&(eg[o]=await n[r(866,"XV(r")](iK,a,o));let m=eg[o]?.[r(388,"V)Hk")](y=>y[r(959,"#c#!")+"d"][r(892,"HxpU")+"e"]()===c);if(!m?.[r(399,"Oo8o")])return;if(!m[r(1061,")1*!")]){let y=await fe[r(727,"],{headers:{"User-Agent":O0}});m[r(451,"91jT")]=DLe[r(459,"dde[")](y[r(440,"Oo8o")]);for(let g of m[r(875,"q@A)")][r(924,"(qYv")])!g[r(1010,"zYqv")][r(890,"xv$$")](n[r(693,"RufB")])&&(g[r(700,"a8&$")]=new URL(g[r(423,"xv$$")],m[r(1020,"7$Tl")])[r(543,"xQ)x")]()),g[r(458,"A9(V")]=g[r(1077,"URuC")],g[r(1069,"Pbkv")]=g[r(434,"bAH5")+r(369,"xv$$")]+r(651,"(qYv")}if(u[r(1038,"L#Th")](n[r(853,"W0z*")])){let y=n[r(578,"U3K9")](parseInt,u[r(652,"IjC$")](n[r(876,"(qYv")],""),10);e[r(494,"tWQ%")](m[r(953,"hi!E")][r(937,"hi!E")][y][r(724,"RWdJ")]);return}let h=DLe[r(712,"jsU%")](m[r(976,"1K)4")]);return e[r(896,"1K)4")](2173*1+-1493*1+-480)[r(785,"(qYv")]({"content-type":n[r(602,"HxpU")],"content-length":Buffer[r(646,"hi!E")](h)[r(1034,"L#Th")]()}),h}_b[o]?.[r(768,"bAH5")]&&n[r(796,"Sg)5")](LLe,_b[o][r(1078,"dde[")])&&delete _b[o],!_b[o]&&(_b[o]=await n[r(884,")1*!")](KLe,a,o));let l=_b[o]?.[r(737,"[PKS")];if(!l){e[r(491,"Pbkv")](-1521*3+809*-1+5872),e[r(1042,"RWdJ")](n[r(518,"2a7K")]);return}if(n[r(672,"ilWv")](c,n[r(645,"8Lel")])||n[r(763,"#c#!")](c,n[r(816,"zYqv")])){e[r(400,";return}let d=n[r(1096,"rlOa")](Mnr),f=d[r(611,"Pbkv")]||-2*-4092+-8*-434+-11528,p=d[r(933,"5txH")]||1*1627+-2595+-247*-4;return await n[r(773,"O&ab")](xb,t,e,l,o,q4,{chunkSize:n[r(912,"a8&$")](5782+793*-6,f),poolSize:p,timeout:n[r(487,"L#Th")](6771+-5771*1,2408+2398*-1)})}async function H4(t,e){let r=qt,n={LogmI:function(f,p){return f(p)},viJeP:r(455,"xv$$"),VgZTy:function(f,p){return f+p},LMeet:r(915,"q@A)"),HTrkp:function(f,p,m){return f(p,m)}};await n[r(585,"P$LD")](WI,t);let s=t[r(1110,"7$Tl")][r(565,"xv$$")],i=t[r(519,"Oo8o")].id[r(394,"lZs)")]("*"),a=await n[r(999,"A9(V")](WLe,n[r(744,"7Kze")]);if(!s[r(495,")1*!")](a))return;let o=n[r(871,"xQ)x")](n[r(855,"fQ#0")](n[r(821,"1K)4")](Wnr,t),t[r(431,"hi!E")][r(569,"2a7K")]),n[r(947,"dde[")]),c={parse:0,url:[]};i[-5*-1675+-1811*-3+-13806]&&(c[r(740,"fk%f")]={subt:o+r(950,"Pbkv")+i[-108*-14+-381*-3+-2655]+"/"+i[-1*-8781+-3223+-5556]+r(435,"Oo8o")});let u=(await n[r(874,"zYqv")](iK,i[877*-9+2954*1+4939],i[1]))?.[r(786,"RWdJ")](f=>f?.[r(849,"![Jl")])||[];eg[i[1]]=u,u[r(1079,"jsU%")]((f,p)=>(p[r(536,"(qYv")+r(411,"jA9E")]||4628+5*-257+-3343*1)-(f[r(503,"Sg)5")+r(920,"WZpm")]||-1*-4673+398+-5071));let l=c[r(685,"rlOa")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(837,"fk%f")](f=>{let p=r;l[p(384,"Ynsb")](d[f[p(820,"W0z*")+"d"]]||f[p(688,"![Jl")+"d"]),l[p(374,"8Lel")](o+p(781,"rlOa")+f[p(612,"91jT")+"d"][p(828,"Oo8o")+"e"]()+"/"+i[4654+603*-1+-4051]+"/"+i[2803*1+3*906+-368*15]+p(626,"(qYv"))}),l[r(374,"8Lel")]("\u4EE3\u7406"),l[r(772,"#c#!")](o+r(392,"HxpU")+i[2*1697+1158+-1*4552]+"/"+i[2140+-3995*2+5851]+r(825,"ilWv")),l[r(804,"]xNp")]("\u539F\u753B"),l[r(553,"jsU%")](o+(r(755,"IjC$")+r(1058,")1*!"))+i[-5014*1+2590+2424]+"/"+i[8503+327*-26]+r(1072,"O&ab")),c}var oK=Ce(Xn(),1);var Qe=Eu;(function(t,e){let r=Eu,n=t();for(;;)try{if(-parseInt(r(717,"3d(S"))/1*(parseInt(r(677,"MA3o"))/2)+-parseInt(r(720,"G&Pc"))/3+-parseInt(r(568,"p(Ve"))/4*(-parseInt(r(1057,"]UY8"))/5)+parseInt(r(573,"(6@z"))/6+-parseInt(r(575,"G&Pc"))/7+-parseInt(r(554,"$Dxn"))/8*(parseInt(r(608,"(6@z"))/9)+parseInt(r(947,"VuHG"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(z4,112362);var r5e=async t=>{let e=Eu;return globalThis[e(853,"P7e(")]?await globalThis[e(853,"P7e(")](t):t},Jnr=[Qe(709,"C1ic"),Qe(733,"7e4N"),Qe(800,"6)4W"),Qe(470,"P7e("),Qe(531,"H0(4"),Qe(1089,"KfkJ"),Qe(718,"KfkJ"),Qe(1053,"P7e("),Qe(1201,"]UY8"),Qe(543,"aVSa"),Qe(922,"G&Pc"),Qe(1068,"MXaS"),Qe(530,"ymI*"),Qe(518,"QvGB"),Qe(1076,"2N%U"),Qe(607,"XeCO")],Xnr=t=>{let e=Qe,r={RZtOA:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(421,"!Qkh")](String,t)[e(1145,"!52N")+"e"]();return Jnr[e(658,"]UY8")](s=>n[e(889,"F525")](s))};function n5e(t){let e=Qe,r={BnTSQ:function(n,s){return n(s)},BwWZS:function(n,s){return n||s}};return r[e(556,"KfkJ")](String,r[e(666,"H0(4")](t,""))[e(957,"IlPH")](",")[807+-1909*-5+-10352][e(932,"6Kq8")]()}function JLe(t){let e=Qe;return{tTKcO:function(n,s){return n(s)}}[e(1188,"GseL")](n5e,t)[e(496,"Ds7b")](/^\w+:\/\//,"")[e(545,"P7e(")]("/")[-4732+-169*-28][e(494,"(6@z")]()}function Znr(t){let e=Qe,r={uFnXS:function(u,l){return u(l)},JxbMv:function(u,l){return u(l)},ILuND:e(1218,"G&Pc")+e(435,"MGKd"),RXBGq:function(u,l){return u(l)},wlUNy:function(u,l){return u(l)},XCMCl:e(1066,"Pp!D")+e(934,"MA3o"),nynWc:e(680,"WlA!"),hxIQk:e(656,"cafg"),igoNZ:e(759,"C1ic"),NZPvo:function(u,l){return u(l)}},n=r[e(456,"Kp2)")](String,t?.[e(770,"IlPH")]?.[e(1187,"$Dxn")]?.()?.[e(1138,"3d(S")]||"")[e(928,"!52N")](),s=r[e(1085,"1Ota")](JLe,t?.[e(790,"#VhR")]?.[r[e(1125,"HIDt")]]),i=s||r[e(1183,"!52N")](JLe,t?.[e(959,"O9yX")]?.[e(533,"C1ic")]);if(!i)return n;let a=r[e(813,"H0(4")](n5e,t?.[e(781,"Rn$0")]?.[r[e(729,"Kp2)")]]),o=n[e(900,"HIDt")](r[e(466,"3d(S")])?r[e(879,"ltNx")]:r[e(917,"%H5H")];return(a||r[e(740,"aVSa")](String,t?.[e(746,"HIDt")]||"")[e(1046,"H0(4")]()||o)+e(605,"G&Pc")+i}function s5e(t){let e=Qe,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(440,"H0(4")](t);return n?{shareId:n[1*-2897+-805*8+-1*-9338],folderId:"0"}:null}var co=Qe(832,"v!9b")+Qe(1107,"6)4W"),vb={"User-Agent":Qe(643,"p(Ve")+Qe(870,"hswT")+Qe(596,"QvGB")+Qe(1143,"XeCO")+Qe(907,"#VhR")+Qe(831,"!Qkh")+Qe(580,"!52N")+Qe(824,"Ds7b")+Qe(509,"H0(4")+Qe(1165,"H0(4")+Qe(560,"6)4W")+Qe(833,"(6@z")+Qe(441,"XeCO")+Qe(504,"2N%U")+Qe(1215,"7e4N")+Qe(755,"hswT")+Qe(1226,")D&U")+Qe(1034,"GseL")+Qe(970,"1Ota")+"ch",Referer:Qe(845,"ymI*")+Qe(1048,"C1ic")},cK=null,G4=null,XLe=Qe(489,"v!9b")+Qe(609,"v!9b")+Qe(990,"G&Pc")+Qe(735,"gH]7"),Rc="",ZLe=Qe(477,"3d(S"),ng=null;async function $I(t){let e=Qe;cK=t[e(860,"p(Ve")].db;let r=t[e(1154,"ltNx")][e(834,"qKU^")][e(484,"MGKd")];Rc=r[e(1041,"2N%U")],G4=oK.default[e(499,"!52N")][e(463,"F525")][e(524,"GseL")](oK.default[e(1194,"v!9b")](r[e(908,"IlPH")]))[e(582,"hswT")]();let n=await cK[e(1179,"H0(4")+e(616,"%H5H")](e(638,"VuHG"),{});n[G4]&&(Rc=n[G4])}async function uo(t,e,r,n,s){let i=Qe,a={XMzKZ:function(u,l){return u===l},wnTkw:function(u,l){return u(l)},yxBzT:i(801,"%H5H"),fyWAw:i(423,"MA3o")+i(1174,"HIDt")+i(628,"O9yX"),WGhIZ:function(u,l){return u===l},qiRwn:function(u,l){return u||l},JNOIy:i(795,"HDeO"),qRijI:function(u,l){return u==l},WdGSr:i(600,"Ds7b"),SoksH:function(u,l){return u||l},jMidS:i(1214,"G&Pc"),XHGve:i(685,"WlA!"),AZmhS:function(u,l,d,f){return u(l,d,f)},vXMEZ:i(783,"2N%U"),ltiIO:function(u,l){return u!==l},UsRQE:function(u,l){return u===l},FWxnC:function(u,l){return u>l},wOylg:function(u,l){return u(l)},WKkvZ:function(u,l,d,f,p,m){return u(l,d,f,p,m)},Nwtga:function(u,l){return u-l}};r=a[i(752,"hswT")](r,{}),Object[i(511,"GseL")](r,vb),Object[i(1132,"gH]7")](r,{Cookie:a[i(1031,"YTUu")](Rc,"")}),n=a[i(612,"GseL")](n,a[i(816,"XeCO")]);let o=a[i(584,"qKU^")](n,a[i(1097,"]UY8")])?await fe[i(953,"QvGB")](XLe+"/"+t,{headers:r})[i(965,")D&U")](u=>{let l=i;return console[l(1062,"H0(4")](u),a[l(653,"Kp2)")](u?.[l(557,"C1ic")]?.[l(810,"G&Pc")],6782*1+3*-1959+-504)&&a[l(992,"HIDt")](messageToDart,{action:a[l(1094,"v!9b")],opt:{message:a[l(649,"qKU^")],duration:5}}),u[l(955,"pf%x")]||{status:500,data:{}}}):await fe[i(856,"YTUu")](XLe+"/"+t,e,{headers:r})[i(1182,"MA3o")](u=>{let l=i;return console[l(982,"Ds7b")](u),a[l(880,"YTUu")](u?.[l(633,"XeCO")]?.[l(691,"!52N")],-23*-66+5161+-1*6278)&&a[l(585,"GseL")](messageToDart,{action:a[l(796,"Pp!D")],opt:{message:a[l(536,"$Dxn")],duration:5}}),u[l(1078,"ymzm")]||{status:500,data:{}}}),c=a[i(1088,"WlA!")](s,-7990+-1*-7993);if(o[i(1212,"1Ota")][a[i(478,"WlA!")]]){let u=o[i(1202,"$Dxn")][a[i(1216,"KfkJ")]][i(508,"Pp!D")](a[i(852,"O9yX")])[i(793,"6Kq8")](/__puus=([^;]+)/);if(u){let l=a[i(739,"2N%U")](XD,Rc,a[i(480,"2N%U")],u[1]);a[i(811,"QvGB")](l,Rc)&&(Rc=l,await cK[i(446,"$Dxn")](i(1040,"HDeO")+G4,Rc))}}return a[i(1184,"qKU^")](o[i(924,"DRAK")],373*14+7*-191+288*-12)&&a[i(507,"O9yX")](c,-1*2713+8454+-5741)?(await a[i(738,"gH]7")](pf,-109*-78+-2*-911+-9324),await a[i(822,"GseL")](uo,t,e,r,n,a[i(503,"Kp2)")](c,-3689+-2*-2381+-2*536))):o[i(1071,"QvGB")]||{}}async function e5e(){let t=Qe,e={cRUle:function(n,s,i,a,o){return n(s,i,a,o)},hhFju:t(996,"%H5H"),QOZYg:function(n,s){return n>s},uQfrC:function(n,s,i){return n(s,i)}},r=await e[t(1079,"VuHG")](uo,t(473,"!Qkh")+co+t(993,"7e4N")+ng+(t(863,"7e4N")+t(630,"F525")+t(775,"YTUu")+t(500,"qKU^")+t(629,"7e4N")+t(910,"pf%x")),{},{},e[t(631,"Kp2)")]);if(r[t(512,")D&U")]&&r[t(1009,"ymzm")][t(954,"Pp!D")]&&e[t(1105,"(6@z")](r[t(857,"$Dxn")][t(569,"IlPH")][t(958,"XeCO")],-1013*1+8818+1*-7805)){let n=await e[t(681,"Rn$0")](uo,t(716,"cafg")+"e?"+co,{action_type:2,filelist:r[t(593,"YTUu")][t(506,"#VhR")][t(1177,"MXaS")](s=>s[t(745,"HDeO")]),exclude_fids:[]});console[t(1101,"7e4N")](n)}}async function esr(t){let e=Qe,r={iUWPf:function(s){return s()},JJcuG:function(s,i,a,o,c){return s(i,a,o,c)},aiVcA:e(864,"HDeO"),NegnY:function(s,i){return s===i},HHROq:function(s){return s()},REmml:function(s,i,a){return s(i,a)}};if(ng){t&&await r[e(426,"XeCO")](e5e);return}let n=await r[e(461,"Rn$0")](uo,e(526,"aVSa")+co+(e(606,"$Dxn")+e(482,")D&U")+e(1148,"gH]7")+e(586,"p(Ve")+e(675,"O9yX")+e(669,"hswT")+e(671,"7e4N")),{},{},r[e(659,"hswT")]);if(n[e(663,"H0(4")]&&n[e(523,"hswT")][e(846,"Ds7b")]){for(let s of n[e(682,"3d(S")][e(912,"7e4N")])if(r[e(960,"cafg")](s[e(942,"ymzm")],ZLe)){ng=s[e(838,"ymzm")],await r[e(1063,"$Dxn")](e5e);break}}if(!ng){let s=await r[e(991,"qKU^")](uo,e(978,"ltNx")+co,{pdir_fid:"0",file_name:ZLe,dir_path:"",dir_init_lock:!1});console[e(1209,"$Dxn")](s),s[e(468,"2N%U")]&&s[e(968,"%H5H")][e(1150,"MXaS")]&&(ng=s[e(468,"2N%U")][e(962,"pf%x")])}}async function dK(t){let e=Qe,r={MGBIK:function(s,i,a){return s(i,a)}},n=await r[e(576,"MGKd")](uo,e(737,"KfkJ")+e(1139,"KfkJ")+"n?"+co,{pwd_id:t[e(694,"6)4W")],passcode:t[e(768,"HIDt")]||""});return n[e(453,"aVSa")]?.[e(972,"1Ota")]?n[e(1121,"Ds7b")]:null}var tsr=[Qe(847,"O9yX"),Qe(529,"#VhR"),Qe(1169,"$Dxn"),Qe(1119,"I7&]"),Qe(891,"7e4N")];async function rsr(t){let e=Qe,r={hQvnZ:function(l,d){return l||d},pgzkm:function(l,d){return l||d},BzYyT:function(l,d,f,p,m){return l(d,f,p,m)},PJwhf:function(l,d){return l(d)},jrWWH:e(674,"ltNx"),mUVZS:function(l,d){return l===d},YyNNp:function(l,d){return l===d},QvRCS:e(802,"G&Pc"),VsRlD:e(592,"GseL"),UKrNs:function(l,d){return l===d},msDby:e(444,"!Qkh"),wwfWy:e(439,"]UY8"),myfEH:function(l,d,f){return l(d,f)},iNMef:function(l,d){return l&&d},CLSih:e(1120,"hswT"),jhegF:function(l,d){return l<d},nUlNN:function(l,d){return l*d},YUpIN:function(l,d){return l<d},naEqO:function(l,d){return l/d},YPOfF:function(l,d,f,p,m){return l(d,f,p,m)},ukoFK:function(l,d){return l+d},bmkIG:function(l,d,f,p,m){return l(d,f,p,m)},TWCOo:function(l,d,f){return l(d,f)},GfewW:function(l,d){return l===d},hhgXL:e(623,"(6@z"),aheqH:function(l,d){return l(d)},AmPnP:function(l,d){return l(d)},FtVKa:function(l,d,f,p,m){return l(d,f,p,m)},JrTWi:function(l,d){return l>d}},n=r[e(621,"YTUu")](typeof t,r[e(1007,"MGKd")])?r[e(510,"I7&]")](s5e,t):t;if(!n)return[];let s=await r[e(896,"MGKd")](dK,n);if(!s)return[];let i=s[e(422,"$Dxn")],a=[],o=[],c=(l,d)=>l?l+"/"+d:d,u=async function(l,d,f,p){let m=e,h=r[m(869,"6)4W")](p,""),y=7416+1*-7316;f=r[m(491,"MA3o")](f,66*43+-2259+-34*17);let g=await r[m(722,"QvGB")](uo,m(684,"v!9b")+m(909,"DRAK")+m(1073,"p(Ve")+co+m(744,"hswT")+l+m(493,"C1ic")+r[m(1017,"Pp!D")](encodeURIComponent,i)+m(562,"VuHG")+d+(m(1193,"MXaS")+m(1158,"IlPH"))+f+m(1199,"1Ota")+y+(m(433,"H0(4")+m(751,"!52N")+m(552,"#VhR")+m(1204,"HDeO")),{},{},r[m(1070,"C1ic")]);if(!g[m(1009,"ymzm")])return[];let b=g[m(1098,"ltNx")][m(912,"7e4N")];if(!b)return[];let x=[];for(let A of b){let S=r[m(696,"ymzm")](A[m(706,"3d(S")],!0)||r[m(1028,"v!9b")](A[m(460,"aVSa")],1)||r[m(830,"VuHG")](A[m(776,"#VhR")],r[m(1104,"XeCO")])||r[m(1208,"3d(S")](A[m(641,"!Qkh")],r[m(648,"pf%x")]),I=r[m(871,"HIDt")](A[m(817,"]UY8")],!0)||r[m(690,"GseL")](A[m(1178,"Kp2)")],65+1*1946+-2010)||r[m(534,"7e4N")](A[m(655,"qKU^")],r[m(1133,"QvGB")]),R=r[m(865,"XeCO")](Xnr,A[m(710,"XeCO")]),w=r[m(937,"DRAK")](A[m(1006,"HDeO")+"ry"],r[m(792,"qKU^")])||R;if(S)x[m(967,"MA3o")]({fid:A[m(1150,"MXaS")],path:r[m(859,"VuHG")](c,h,A[m(760,"%H5H")])});else if(r[m(452,"(6@z")](I,w)){if(r[m(937,"DRAK")](typeof A[m(700,"VuHG")],r[m(611,"P7e(")])&&r[m(642,"6Kq8")](A[m(753,"HDeO")],r[m(1065,"H0(4")](r[m(1205,"MGKd")](-2202+1*2309+7*131,1024),1296+-4749*-2+10789*-1)))continue;A[m(707,"O9yX")]=i,A[m(872,"6)4W")]=h,a[m(867,")D&U")](A)}else I&&tsr[m(730,"ltNx")](N=>String(A[m(471,"O9yX")]||"")[m(1039,"I7&]")](N))&&o[m(650,"(6@z")](A)}if(r[m(798,"MA3o")](f,Math[m(925,"gH]7")](r[m(973,"2N%U")](g[m(553,"ltNx")][m(794,"YTUu")],y)))){let A=await r[m(537,"1Ota")](u,l,d,r[m(599,"#VhR")](f,1),h);for(let S of A)b[m(761,"!52N")](S)}for(let A of x){let S=await r[m(613,"H0(4")](u,l,A[m(672,"#VhR")],1,A[m(898,"]UY8")]);for(let I of S)b[m(701,"I7&]")](I)}return b};return await r[e(632,"cafg")](u,n[e(458,"Kp2)")],n[e(748,"MA3o")],-1*-3847+-2*-2168+-8182,""),r[e(1213,"6)4W")](o[e(1207,"(6@z")],4472*-2+-430*19+86*199)&&a[e(1052,"7e4N")](l=>{let d=e;var f=r[d(1096,"1Ota")](Tl,l,o);f[d(1004,"HDeO")]&&(l[d(1080,"MGKd")]=f[d(1219,"XeCO")][d(1130,"O9yX")])}),a}async function fK(t){let e=Qe,r={hXWFJ:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(849,"aVSa")](uo,e(640,"!Qkh")+e(742,"XeCO")+co,{fids:[t]});return Array[e(986,"2N%U")](n?.[e(1071,"QvGB")])&&n[e(682,"3d(S")][0]?.[e(945,"cafg")+"rl"]?n[e(938,"!52N")][-1*-8777+2348*1+-11125]:null}async function nsr(t){let e=Qe,r={XHjZD:function(s,i,a){return s(i,a)},jPyBY:e(497,"P7e(")+e(818,"YTUu")+e(1180,"]UY8"),pRRNR:e(1217,"6)4W")};if(!t)return null;let n=await r[e(1012,"v!9b")](uo,e(692,"G&Pc")+e(1087,"DRAK")+co,{fid:t,resolutions:r[e(1083,"MXaS")],supports:r[e(1164,")D&U")]});return Array[e(686,"3d(S")](n?.[e(593,"YTUu")]?.[e(974,"cafg")])?n[e(590,"qKU^")][e(490,"H0(4")]:null}async function i5e(t,e="0",r=1){let n=Qe,s={GUFzG:function(o,c){return o(c)},RZmML:function(o,c,u,l,d){return o(c,u,l,d)},ttjBA:function(o,c){return o(c)},VGUWN:function(o,c){return o||c},WIYPU:n(479,"6)4W")};await s[n(981,"pf%x")]($I,t);let i=Number[n(442,"1Ota")](r,-5680+3541*1+2149*1)||776*9+1283*1+1*-8266,a=await s[n(930,"YTUu")](uo,n(1161,")D&U")+co+n(933,"HDeO")+s[n(428,"!52N")](encodeURIComponent,s[n(877,"QvGB")](e,"0"))+n(525,"GseL")+i+(n(1167,"YTUu")+n(615,"HDeO")+n(1141,")D&U")+n(1149,"v!9b")+n(1095,"O9yX")),{},{},s[n(485,"]UY8")]);return Array[n(876,"WlA!")](a?.[n(1163,"Rn$0")]?.[n(734,"O9yX")])?a[n(516,"F525")][n(1175,"Kp2)")]:[]}var L0={};async function ssr(){let t=Qe,e={qIPTO:function(i,a){return i||a},IohMf:t(558,"pf%x")+t(437,"DRAK"),YdqmB:t(698,"Pp!D")+t(1014,"pf%x")+t(498,"I7&]")+t(836,"VuHG")+t(1005,"QvGB")+t(727,"YTUu")+t(714,"GseL")+t(1191,")D&U")+t(916,"DRAK")+t(825,"cafg")+t(548,"QvGB")+"19",YgXkQ:function(i,a){return i===a},IoEzt:function(i,a){return i===a}},r=Date[t(639,"Kp2)")](),n=Object[t(610,"cafg")]({Cookie:e[t(766,"ltNx")](Rc,""),"Content-Type":e[t(695,"QvGB")]},vb),s=await fe[t(989,"O9yX")](e[t(450,"P7e(")],{conversation_id:t(699,"Rn$0")+r,conversation_type:3,msg_id:r+t(979,"!Qkh")},{headers:n})[t(821,"GseL")](i=>{let a=t;return console[a(788,"ymI*")](i),i[a(715,"VuHG")]||{status:500,data:{}}});return e[t(693,"Kp2)")](s?.[t(723,"HIDt")],6151*1+-447*11+-1034*1)&&e[t(1035,"7e4N")](s?.[t(579,"MGKd")]?.[t(483,"6)4W")],-1*5252+-1*-5379+73)&&e[t(427,"F525")](s?.[t(512,")D&U")]?.[t(708,"v!9b")],-511+-201*-5+-494)&&s?.[t(841,"MA3o")]?.[t(551,"6Kq8")]?.[t(657,"XeCO")]||""}async function a5e(t,e,r,n){let s=Qe,i={oqrHT:function(l,d){return l||d},bNpNN:function(l,d){return l(d)},tVCjE:function(l){return l()},JcmWU:function(l,d){return l||d},nfsMM:s(1124,"P7e(")+s(812,"aVSa"),WCbCR:function(l,d){return l===d}};if(i[s(724,"$Dxn")](!t,!r)||!n||(e||(e=(await i[s(587,"pf%x")](dK,{shareId:t}))?.[s(1144,"aVSa")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(430,"cafg")](ssr);o&&(a[s(469,"O9yX")]=o);let c=Object[s(904,"HIDt")]({Cookie:i[s(1155,"Ds7b")](Rc,""),"Content-Type":i[s(634,"G&Pc")]},vb),u=await fe[s(839,"KfkJ")](s(1075,"Rn$0")+s(588,"C1ic")+s(624,"ymzm")+s(799,"DRAK")+s(892,"hswT")+s(771,"qKU^")+co,a,{headers:c})[s(713,"ltNx")](l=>{let d=s;return console[d(1186,"!Qkh")](l),l[d(747,"(6@z")]||{status:500,data:{}}});return i[s(645,"ltNx")](u?.[s(583,"2N%U")],9*569+-1196*5+1059)&&u?.[s(1198,"HDeO")]?.[s(572,"O9yX")]?.[-1*-926+-1*3491+2565]?.[s(1024,"XeCO")+"rl"]?u[s(743,"6)4W")][s(590,"qKU^")][1274*7+9722*-1+-268*-3]:null}async function o5e(t,e,r,n,s){let i=Qe,a={Fsuvd:function(c,u){return c(u)},DvvrU:function(c,u){return c(u)},RrXXV:function(c,u,l){return c(u,l)},Ppbcs:i(1224,"v!9b"),Jfhwp:function(c,u,l,d,f){return c(u,l,d,f)},HWoqX:i(902,"ymzm"),pMzfz:function(c,u){return c>u},snidU:function(c,u){return c>u},CyLro:function(c,u){return c(u)}};if(await a[i(1116,"O9yX")](esr,s),s){let c=Object[i(1190,"IlPH")](L0);for(let u of c)delete L0[u]}if(!ng||(e||(e=(await a[i(547,"1Ota")](dK,{shareId:t}))?.[i(559,"KfkJ")]||""),!e))return null;let o=await a[i(1021,"HIDt")](uo,i(935,"]UY8")+i(1049,"Kp2)")+"?"+co,{fid_list:[r],fid_token_list:[n],to_pdir_fid:ng,pwd_id:t,stoken:e,pdir_fid:"0",scene:a[i(668,"$Dxn")]});if(o[i(938,"!52N")]&&o[i(1016,"ymI*")][i(789,"GseL")]){let c=0;for(;;){let u=await a[i(804,"aVSa")](uo,i(654,"WlA!")+co+i(951,"aVSa")+o[i(453,"aVSa")][i(603,"p(Ve")]+(i(528,"I7&]")+i(465,"HIDt"))+c,{},{},a[i(988,"]UY8")]);if(u[i(1121,"Ds7b")]&&u[i(512,")D&U")][i(1003,"pf%x")]&&u[i(1e3,"KfkJ")][i(620,"6Kq8")][i(1091,"QvGB")+i(1023,"(6@z")]&&a[i(574,"Rn$0")](u[i(678,"WlA!")][i(820,"v!9b")][i(431,"I7&]")+i(1023,"(6@z")][i(815,"6Kq8")],-5878*-1+-6714+19*44))return u[i(468,"2N%U")][i(1047,"F525")][i(906,"cafg")+i(432,"#VhR")][-1706*3+2001+1039*3];if(c++,a[i(1221,"XeCO")](c,-2*-2138+-6965+2694))break;await a[i(1050,"7e4N")](pf,1*2873+7*-1213+3309*2)}}return!1}async function c5e(t,e,r,n){let s=Qe,i={qTSmJ:function(o,c){return o===c},uEeBb:s(457,"gH]7"),NxNhs:function(o,c){return o(c)},yTfGo:function(o,c,u,l,d,f){return o(c,u,l,d,f)},NctBS:function(o,c,u){return o(c,u)},RfCaz:s(769,"ymzm")+s(1122,"O9yX")+s(1038,"IlPH"),YOrOC:s(589,"F525")};if(i[s(901,"I7&]")](t,i[s(829,"ymzm")]))return await i[s(971,"#VhR")](nsr,r);if(!L0[r]){let o=await i[s(1134,"ltNx")](o5e,t,e,r,n,!0);if(!o)return null;L0[r]=o}let a=await i[s(987,"Pp!D")](uo,s(1055,"P7e(")+s(1200,"cafg")+co,{fid:L0[r],resolutions:i[s(425,"P7e(")],supports:i[s(948,"Kp2)")]});return a[s(1121,"Ds7b")]&&a[s(1071,"QvGB")][s(601,")D&U")]?a[s(968,"%H5H")][s(1223,"Kp2)")]:null}async function pK(t,e,r,n,s){let i=Qe,a={rgEYt:function(c,u){return c===u},huMua:i(1011,"KfkJ"),ToGxS:function(c,u){return c(u)},ujTfz:function(c,u,l,d,f,p){return c(u,l,d,f,p)},xEKyP:function(c,u,l){return c(u,l)}};if(a[i(1159,"F525")](t,a[i(538,"2N%U")]))return await a[i(467,"]UY8")](fK,r);if(!L0[r]){let c=await a[i(705,"!Qkh")](o5e,t,e,r,n,s);if(!c)return null;L0[r]=c}let o=await a[i(1136,"]UY8")](uo,i(943,"7e4N")+i(742,"XeCO")+co,{fids:[L0[r]]});return o[i(563,"]UY8")]?o[i(438,"Pp!D")][5945+-613*-11+-12688]:null}async function isr(t,e,r,n,s){let i=Qe,a={oCCkl:function(c,u){return c===u},tqRXq:i(617,"7e4N"),yilaT:function(c,u){return c(u)},XiQmM:function(c,u,l,d,f){return c(u,l,d,f)},Slwqh:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(854,"G&Pc")](t,a[i(905,"v!9b")]))return await a[i(618,"MGKd")](fK,r);let o=await a[i(614,"G&Pc")](a5e,t,e,r,n);return o?.[i(1054,"MA3o")+"rl"]?o:await a[i(1173,"6)4W")](pK,t,e,r,n,s)}async function u5e(t){let e=Qe,r={XSKsp:function(n,s){return n(s)},dCCgC:e(519,"cafg")+e(1061,"#VhR"),QHuFe:function(n,s){return n(s)},FaKuw:function(n,s,i){return n(s,i)},INBjw:e(1108,"Kp2)")};if(r[e(1147,"v!9b")]($4,r[e(772,"IlPH")])){let n=r[e(1192,"$Dxn")](s5e,t);if(n){let s=await r[e(1140,"P7e(")](rsr,n);return s=s[e(919,"MGKd")](i=>{let a=e;return{vod_id:[n[a(1036,"P7e(")],i[a(501,"qKU^")],i[a(866,"Rn$0")],i[a(1027,"6Kq8")+a(862,"ymzm")],i[a(598,"hswT")]?i[a(541,"HDeO")][a(809,"H0(4")]:"",i[a(763,"MXaS")]?i[a(591,"F525")][a(1118,"]UY8")+a(921,"MXaS")]:""][a(883,"ymI*")]("*"),vod_name:i[a(424,"7e4N")],vod_size:i[a(515,"F525")],vod_group:i[a(1127,"WlA!")]}}),r[e(564,"gH]7")](Is,await r[e(565,"IlPH")](r5e,r[e(1015,"cafg")]),s)}else return{}}}var t5e={},aK=(2*-2864+-7073*-1+-321)*(1486*-4+6071+385),mK=(3419+1*-8042+-1*-5647)*(25*-369+-1528+-101*-109);function z4(){let t=["W4DAW4RdUfXfW6i0W5RcJa","xKBcGq","W5LWF8kZWRy","bmo+ua","ECoHomki","eSoeW4ZcSCof","W7L9WPjLWQG","WPNcGf/dTIJcLqpdRCkrFa","WOqFE8o4WPS","W6DdWObuWPxdJ8osaeK","b3i9WPlcVq","W5nOWRjbWQu","fJtdG3pcUmowWOn1","W7NdKmoWa8ozyXK","jmkBWRu3vG","WPVdJCoGbwa","v3RcVCotqq","WQahtLNdSG","W4bBt8kkWRW","W5GQymkscq","WRBdUmoFaG","WRddSSoyc23dHW","q8o3amkRWRm","W49OhwZdGa","d8o+wG","WOvQW43dT1DpWR5HWQpcPG","WR8pW6iKW7nOW5qg","WRRdNmoZW5u8","W49XW47dTfC","W4ddJblcJIxcLbddRmkkya","cZJcR8k9tSovWQ/dTSkhDq","jSotWO1XpW","rWddLfpcKConWPa","gSkyWRpdV8oy","W5azW68BaW","ACkxkuu","Ab7dM8oSpG","WQ4svmoeWP/cPSksW5HUWPu","W6CFW5efhq","W4ldVt4","W5tdI8oPj8oc","WRWvrSoFWOZcUW","cZBdNeRcUG","W4RcOmk2WRxcR8kfWROxb8oD","tqTmrCkaEHpdMSoqW4O","mNu0WP7cGSok","BqRdJCkOW6xcHYLQvhq","W7Hbk2G","W45Ir8kTWPe","WO1SW4NdRq","dSo4qW","ddldRhpcUCopWODO","WQKrv8obWPm","EKFdMCkSW7ddMIiPrMC","tYhdOmocW6G","W7/dJCohFq","nSkuWPm","WQLecqSD","iv3dOxSD","b8kZW7O","xw3cKmo7","EW7dJCk7W7xdMW","q8kGWPTA","ySkDWRNdQ8k5WO/dN8k4W59uyxK","lw11BCkZ","WRRdOSosW7i","WO8xW4OyW7y","WQuAs13dPa","BbVdMmkU","hSonWOPZ","h1pcKCk+W4/dLNBdQCklAW","W7/cJ8oayvJcPSkc","ASkEpf/cKComrmonW6xdTq","wmk/W6tcICox","zs/dUSkvW5m","WQRdSCopW74","omo2WQvy","WPFdSSo+ECottW","W77cImkgW6JdH8kf","W4pdSsBcObeuWO5jyG","WODSW5BdVbreWRbYWPlcVW","WOWhjZm","W53cRSk3WR7cNmklWQGSlmoh","WPCRuCo1WRO","WP5moSooE8oVW5LTW41QcCo8WQC","geJcHmolW4K","qc/dO8o4W5CO","BHymWRFcMq","W702bbddNCoLFmkoma","W7vkpg7dTSoxCW","fCk5WPq","EcGqWQa","W65bk3VdOCo2zIW","WRDMmHSFhW","iMO3WPZcNW","W6vFzSk8WQqp","bZlcUCk3r8oiWR0","W7FcPmkNWR7cQq","WP/dSSoaCCohsGtcHW","W7Pnpa","gSonWOz4ety","ACkzmKhcP8kktCoa","ASo1p8kdWP4","W6ddLSocgq","W6VdL8odEW","qIFdU8oT","pfZdRNSlq8oW","W6mJu8oOtSolW50+f8oY","kLndxCkd","W7m8v8oCrmor","WRZdNM4eEG","W4/cQmkKWRxcN8k7WQuHamog","A2RcS8kr","WR8WjINdMW","WPSLshFdNmku","wwVcMmoNfq","ymkFWR4","hSoZWQTunq","W5TXhNhdIq","xYxdMComcG","aG/dPCoPfuZdRW","ehlcHSoTuSobWR3cIIaN","WRhdL14BxGldNddcLW","WRVdJgOhrZddJa","wIixWPBcMq","uCkHmLZcRa","hZJcQ8kN","sSkPWQBdICkmraPiW4PZ","W4uCWO/cJMy","WQOiyCoDWPW","W4D1W57dSeL/WRLSWPJdRG","zSkZW5RcU8o0","W6vcCmkYhG","qspdUW","ycVdN8oiemk6","WRnona0Y","mgGPWPtcKSoncSk2tgK","WPTFWQvD","qCkUW67cKa","W4hdTZ3cQYivWO5awci","W69flM7dKCo5zG","w0BcHSkJW7ddQgtdO8kh","fSk4WPijBGJcTgigWRC","vKhcN8kiW57dQgtdPCkioq","m8kDWOtdICoe","WQOuW7u/","W4hdUt7cPa","WRmjr8oBWORcUq","WPbjWR8","jW/dPeJcJW","WPbWW5VdQ1aaWQT3WP3cVq","W7vspsBdVCo3DIdcUmkE","W7dcJ8kcWRRcHW","WRJdTSocdq","raSuWRZcRa","W45qt8kiWPC","x8oNimkrWPC","B8kIWRnpWRq","WO8uBCoUWR0","eSkaWRNdLSoW","W77cTYPPW7b+","W61vF8k1WRWiwYDWWQu","dcBcTCk6BG","WRG0DvpdVW","gCoxWOjShrhcOLPoW7u","eHldMeJcMa","W5j6WReNWRK","bItcLCkYuCorWQVdTG","WOyPDgFdHG","WQ4oW5uJW5zOW44j","zWtcVILeoSoyWOJdHtDkWOi","WOtdP8o1W5pdICoRb3BdQ8os","WQHQW7/dO08","WP8qcSoFW4rNWPe","EmoLcSkYWPm","iZzPWP7dH8kBfa","W7mLW6yBamo4e8oV","fLlcGmk2W4/dOJ8","WRhdKeqExdq","W4FdTY7cVa","W73cJt52W7f/","uKRcVmk+W7y","WPyJrxxdM8kpvcmfoa","WOldS8oKFq","WQKaW7aYW7TGW5m","AgZdGSojfmk6W78ylN0","jhFcL8oJW6/dPSkUWQJcKaq","WQj8W7BdQ1q","W5NdSZddKbC","WODQW4JdNfPdWRC","W4ivg8oiW4y","W7/dJCohFvVcVCkmWPb1Eq","WOOrb8oiWO5yW4FdVCopbW","tmkGWPXrWQJdLa","k8oeAH/dHSotCmoRW53dPmofW68","W7Pwn2y","W4NcRYDLW7G","WQDiWOr9WRm","cGv8qmkrzb3cO8owW4y","WPpdS8o/F8og","W454WQafWOO","Amk/WPnVWOS","WPJdLmoHxSo6","BgWfWRVcUeX/WO8Mxa","WRBdQMOdwG","E1/cUgOa","WPb1WQDXWOu","BdddPmoRpq","fSk9WPqb","WQJdQeqwzG","W71BlG","WPzTW5VdRq","cSoJqmotcN3dVSogw1G","W7ZdJuydvW","W5XBy8krWR0","W5FdVtNcTseuWPXb","W4WTvSkujG","kmkaWOhdPCoHW5Sykq","WODNoaGS","kxFcPSoZW5m","p2ldS1WQ","W6LLWRapWOW","W4OWwSo6vW","cdxdGNZcOq","AqpcKW","W4pdJmoAaSoJ","W5fyWR1k","W6pcJXPbb2ldOZ7cKmoFW5DQ","aCk9WPyfrWZdQf4AWRK","hSk5WO4hBau","W7jFWQe+WONcG8kjW6a","bJ/dJgJcNW","cZlcQSoUq8ojWQ0","W5qFE8o4tG","tSksgN7cHG","w2pcGmoJ","W6mvWQRcQuC","WOddIe8hFa","WO1QW50","ofVdPa","CcVdL8ozgSkxW71yk3W","W5HmwSkyWOm","W5/cPXzzW7m","W7C4W6ebpG","W6mrWPrO","mhlcL8o2W6e","W4xcOXXbW4y","WQ0trSoE","W4XaCSkMaG","WQZdTCoTW6u+","j8oozmoLfq","W51luSkBWPKyW4xcGCo4kCkmW4Wq","W6bDWQvzWPC","kstcRCkLrG","W57dUGtdSHG","ASkEpf/cKCk8uComW6ddMa","WRG4W7ye","W4FdLrRdGYtcIq","xJBdN8oc","qZ/cSCk0sSkwWR3dP8kOzq","i38OWPRcH8oAc8k5rwi","WO0ig8obW4HnWPtcPSowba","WPqQqmo4WQ8","WO8zh8ooW4K","W6BdJmovlSomCa8FwW","iMDB","W7hdGmosfmoyCqeir3G","gZBcQSk0r8oo","ytNdUmkiW7G","qCk2WOfFWRVdKG","h8kVWQqcyq","rLBcKSofrq","W7PpASk6WQivwZO","yCkZfLtcPa","W47dVa3cRGK","WQr9mG","WPPoWRbBWRNdISkNv05l","WRqRimoEW5e","FCo1j8oDW4FdGmoRxLbf","WPPgWQvoWR0","W55tzSoTW6rCgJSzW6q","WQG2cGJdK8ou","WRRdV8o3W7agWROqwSouka","n8kTWPq2CG","jXtdHwhcUW","F8k2WPTmWRNcGtPHevW","c3RdOhpcPSoyW4bolMS","m1VdRG","W4KnBmkv","W45uWPmHWO8","WOGkkmoNW4W","tgFcHSo0t8ok","CdtdHSo0lq","W7rvWOeLWPFcN8ktW65pWOS","ddFdONVcVW","ixS8WPddLG","WQGgW4moW5a","W712WQLCWRy","B8o9j8kfW5NcLCoBx0Si","WPeYpqhdRG","bSo2qmoc","ECoggCkUWQq","WOpdPCkGDmogsbFcHIS0","iSkYWQOrCq","W5eFvxNdKSkzchnzBq","W5tdKCoUW5O","WQHdWPeP","gNRdGxWb","W6JcGsjK","W5Ght8ovtq","W4jaWPn6WPO","5yYY6ikB5BEh5AAh5PAJ77+z6kYY5yU85B6A44oT","lw7cHCoW","W6JcMInT","ofpdUG","j27cMSoH","WPhdPmo5x8owsWtcGhbc","A8oAB0BdMmoxxa","W4pdSstcOq","W7JdG8oeCf8","WPZdImo5W5Ga","W4iQWRdcSK8","pIddM13cNq","nCoDW7ZcTSo5","W6DuWPy4WP7cMCku","W5ddSmowW5hdQa","W5G0vhhdHSkpgG","oN8IWOy","BCo4fmkuWPNcJCorqWbh","W5D4WOCmWP4","C1tdPwWqACkRW43cTqS","mGpcUW","W75DxCkZWPu","WQiHFhldUW","W6/cQCkMWRFcPG","xulcGCk2","WQyxs8oEw8oAWOG","W5JcUmo/","n8kBluO","W65vWPmUWP7cMmku","W4nPrCkyWOi","a0lcHSk0","nCkGWO/dN8og","o13dMx8fACoBWPldTZe","W6lcJsjNW6bL","WOH2ecek","W6PFWPu","kSk3WOiVta","W5NcR8oVECoA","W6GTwCotrmonW4y","W5TEWRbCWPS","wSkIW73dLCoasaLmW5zY","W5iRWO/cTW8nWR0XW4VdQW","WPvZWRHyWO8","W7DbWPq/","uCoQW6/cL8oruaDvW5TY","W6TFE8kVWP0gtIbh","gmoAWOD3cIVcP0C","W7PuyCk/WOu","WRyptLBdMq","n27cKSoHW6xcLSkXWQdcLru","eY7dOhK","W4D7vmkNoW","AmoMiSopW4pdLCkdaWWb","aSo1W7RcLSok","W7veWP0HWP7cHa","5AAJ5yEPWPbqwmk9WOBcNu8S","WODSW5BdVgroWR5OWPK","WR4EkmomW5S","W6bVx8klWRy","WOmgW548W7u","WRRdPmorW50W","bSoPW6VcKCon","W43cL8kdWRRcTq","W6uQW7qncmoWfmoyaSka","fhrRxmkuzq","W5ddNSo+F8ogvvZcHw1Q","bJNcVmk2wSo1WQG","p8oyWOVdVSo7W5S","WQlcKSkgrSkEDriNEeTP","zLxdHSk8W6/dHG","CcaxWRu","B8kFouJcMW","WPpdUCoOCW","WRedpSo1W6frcMnQWRW","W7aPsSoermo2W5SV","kmkqWO3dTq","nSogW6lcVa","WRFdL8oema","W7zfWOeI","W5Sqt8kxnmk8WPT9W6TB","uSkGWPnsWONdTwyLeKG","W5G/w8orvG","WRuCgSoaW6m","imkMWOiqtG","W6FcPGfLW7i","WR8Jeqi","WRedw8orWP/cVq","W6DzWQjmWPK","nehcMmoCW5K","t8kYWPW","mM/cL8o2W6/cGmk5","vs7dRSo+W5CtwW","WR8RfW","kmoDv8owpG","wYtdImokeq","WPieW74","i8okWRLzaa","WRGEca","WR92mdGz","tCkzgLxcPW","WRBdNL8u","gZJcS8k2ta","W4izhCoe","ct7cTmk2FCouWQ/dV8k9","k8kwWPO5AW","nSogW6lcVmkKW4ZdT8keW7ii","W6u8WPhcJgBcN8owWOldK8kV","WRD8WP1+WQK","ztqcWQBcOq","WPjUkJKvcCk2hCk4oa","W7RdRSoyfCo4","W7zjWPa","WQtdP2yWBW","WO8xd8oi","oCkYfmkqWPFcGCorea4r","W6jyWOv/WOFdJG","kSkaWOldO8oJ","tSk/bh3cOq","DmoBWOhdUmoM","C8knWQDeWPK","WQZdTSoedxtdNa","fZpdUMlcUmkhW4K+jwS","WOddQmoPDCoBFG3cINDY","W6VdHCokEfO","W5ZdG8oTW6ddNG","idhdH8othSkTW7Ol","W7RcMIvT","meddUheb","sdldM8opguNdHa","WOixgCoaW4bcW5NcVSoqha","WRSQW7ibECoGeSoMbmke","WQVdVSoy","W6mGWPlcHJdcI8orWOJcKmk0","W6qTWO3cIg/cHa","WOXlWRnDWQ7cL8kYqq","d3dcGSoJW6S","WRFdNf8hwJ/cMNVdISkL","n2G0WPG","cej+qq","kqdcOmk9yq","FI4kWRO","W5BdSmo4CCogsKZcGgHP","W7CJW6CzhW","W4xdL8oUW5VdGmoR","BCo1p8kb","rcxdNSoFW6q","qdxdVSkRW4m","WQKiW7WY","WR4aW7i2","ErmUWRFcRa","xmkUWO0","W5hcTCk0WQdcG8oEW6zNa8ot","WR/dKmodeSkeCauoqM8","kthdGCoFwSkSW7TbiZW","iM46WOFcN8oCkmk5xMq","W43dGqpdGa","W5FdKmoVW5VdICoIc3ZcVq","WOldU8oTW5pdGmoGxW","WR0RcqBcMCojESkyEvq","duvPumkiwra","WRa5W6CCjCoOomoUgmkl","sKP+rG","W7lcPmorha","W5JdTSoGzG","WQzmW7ZcOqjb","BI3dGmoi","WOXqW6ZdG2G","j8kUWOXaFqddQ3ux","W6bjWQulWOW","W5KyD8orzW","WRRdIMyava","WPrxWPHvWPC","ahpdR3uw","sLBcL8kJW5tdVxZdPq","qmkEp3NcJG","W7uVuru","vMpcUSoVyG","WP8ib8oeW5u","dcZdP2lcICoeWPj0mG","W4q+tSofDa","amkRWOKopHVdVJXDW7G","dSoYwSoeds8","W7i0WPlcL3m","dSoEWPD/","se1KwCkvsrJdRmoyW40","uMFcGmoJtSozW6BcMG","WRqgW4z9W4ZdNmkPW7j2WOy9za","WP3dG8oSbw8","WR1qWOvVWO0","DcFdGmomgSkMW6Dt","W71ukgFdP8o7Dd3cSmkD","WOXkWR5xWRNcIW","WR8zW4O5W4lcNCo+huVdHG","W4JdImotpSo/","WOKpz8krmCkgWO9xW64v","FCkxkuW","zSkKWRLdWQS","afiUWRpcJG","feP/vmkDzq","kSoHW7NcRCoQ","WQXVx8kkgmkuEq","pxmOWOe","W74Hpayu","W55KWR1EWP0","cZBcRmkY","WRFdMx8YWQm1WPlcICoZW4ZdI8os","eSoAtSofaW","gmo3WRJdJmkrfdbtW51dWRNcQG","fSkYWQhdMmod","htlcQ8kJtCouWR3dTW","WO49oCoxW6y","p8kuWPFdSa","W67cUmoWW5CLWPiUnCkvnW","WO0Il8ooW7m","W53dJYtdLtpcKGNdPq","WQhdI0Obqci","W6ylWOVcIum","W5pdISojW5NdKa","W4TeFSkYaCopuCksWQZdJa","W75QkexdGa","BZtdLSkrbCkRWRPhohi","WRWmW7zJ","W7m4WPBcGG","WQKuW6qJW411W4Wl","W4ldI8oXW5BdGSo3","WPmHuNe","dmotWOj5","WR8JW4mgW4a","uSksWRrakv3cTtfvW7y","Ac3dOmoDa8kTW5Lzkxy","W5RdLrxdLsJcJWVdPW","eubIC8k7","xtldNW","F8o9l8kfWPNcUCoyreXd","u8koW5aSt3BcRKbVW5WBhq","W6bwySkRkSkBuW","W5WRuCkkkq","e8oOWQy","WQbaWPyJWONcTCkbW65eW5G","WQDtE8k0","WR/dKabSW71EWQ7cRG","fJhdQZZcUSoiWODJkJC","W5JcSSkZWRNcL8kk","WQ80omoeW4K","W5xdJCopW4xdIq","WPtdRmoMwCoZ","CCkUW5JcLCoU","h3ZcK8kYW4NdQNJdN8kBoq","qYddRSo5W54U","WO5YW5q","iSkCWO/dSmoC","nSoaW7ZcNmoQW5ZdSa","gCoEWPv7jY/cTW","WRaMq2FdVW","WQKNaqRdHmoFDSkE","W73cNd5PW7PQ","W5FdS2tcPIbvW54lzdS","aCoBWQr1pW","W65GdxldVq","zSobcCkLWOe","6ysI57Y544oj56Ik5RQY6yw35Pw+5OU556oz","WPfHW5VdRv5eWObKWOJdQq","WQKiW7WYWPKZWPbExCoR","kw/cSmoUW78","W7/cTCkwWPVcKq","W7TFE8kRWR8jssy","r8kHW7RcTCoU","W41+WQu7WQW","W51BsCkYnG","W6JdTSoIyv0","WOaoDSkzmCkY","l2JcGq","nSogW6lcVmkKW5VdT8kbW6HB","jmowW77cVa","amoxWOz5pG","W5LyA8kPgCkEvSouW7xcHW","sKJcNmkNW7/dSgtdPCkC","AehcLSobEa","ovFdPhKhza","C0dcVSkCW7G","W4PxcMFdIG","W7eGWRxcON0","W77cNt9O","Ar/dVSorpq","W4ldImo8W5u","guRcJmopW5a","W6tdGSocgSku","W6mGWPlcHG","W5hcTCk0WQdcGW","W71vy8k+WR4","ASkzmeG","W4JdIshdGGa","WRddM8o8r8oo","W7zozCkLbSopb8ow","W7DfWPm4WPddISkdW6HxWOS","WPldOmo5Cq","WO4PxCodWO0","WPiVtCoDWR0","WRtdTSoAsSoN","vLtcMW","W5zaWPaPWOG","W5ZdKbpdGdxcNGpdNCkhEW","fmkvWPmXqq","W5THW5/dQLG","aKjP","sKRcGCkY","wgFcGa","mcpcOCkJr8kaWQ/dOCk7la","W7VcGSkwWRxcMG","WQpdPCoQuM3cOSkB","W7tdGSofea","bWZdMxBcRa","W7JdL8ofaCoyoe9f","f8oguSoroG","WRvUkG4","mMtcMCoGW6/dQCkOWRVcIKe","dc/dR2dcRSksWPv5igS","WQVcMmkk","WRH8hX0idmka","W5SCW7Oona","dSonECo0pq","gCokWPn7cG","W7hdR8oVW7ZdLa","WR3dPmoAW6SeWQW","t8kUW6xcNCkmuvqiW497","ggdcRSoVW5S","W6jeWOv5WPFdTmoz","o8kZWOGTFG","W4JdJrZcNX0","jgG3","FduxWQtcUqeXW5iMsW","uCkNbmktsxC","W5WwECkD","W6y+W7ea","WRGQWPdcGcxcJSonWPZdKSoU","W7ldL8o2W4pdHG","z8oGg8kqWQ4","jCofW5RcV8oX","WRvMla","hcpcT8k4r8ou","hcJdQNC","kc/dG8ki","W69tzmk+WO8jwY5k","W4O2A8k2mG","W7a8WPy","xgpcGmoHqG","W4hcI8o8W5hdLSoWc2JcOCo9","W50ACmkilmk3WPPB","W5/cQmkSWRxdN8kaWQWKfSog","W6m+AvHpgSklimkoaae","W5ftWR5k","W4aJW6qpaq","gSo3WR7dGCkresvRW55fWQFcLa","FuVcRCkbW5q","mmkMWRKzta","WQ4svmocWP7cPG","W6LbWOacWQ8","W6XEwSkRWPe","W7a9W4m+pa","WOnVrx/dHSkkgICamq","umkwWRvhWOO","gutcU8ohW6y","tg3cMCoN","c8oKFCondslcTSkmtq","pZBcTSkG","W49OW5hdRW","aZ7cQ8kN","rmk3WPTaWRNcKW","DtFdKCoDb8k6W7vp","WOXwWRboWRNdISkGuerC","v8kkWOTAWRS","WPpdPuyDzG","WPuynrxdMq","s3dcLCoSwq","W6zBBmoK","W7vnWPbQ","WO/dKaddHr7cKGpcVW","x0RcKq","WQ0uwSocWOtcTSkQW50","W7ZcJt9WW7TJWOVcNW","W73dJCoCD1lcOmkKWPa","WONdISoTW7yi","WPWzgComW4XD","WQVdJ8opW6ybWRPyEmogoa","W5JdIsxdLI8","sKRcJ8kY","WRGfqCkz","WP3cMuBcKhhdI0FdKCkhAq","W55BWPafWQ8","uINdNmo4W4aZuwG","WPRdTSoXkhG","BJBdH8om","qc/dO8oPW600xMjx","WR7dPCoiW7C","FtiHWQhcRf17WO8","jKFdQgOAEmo6WPG","W6u7W64biW","sHhdRSkNW44","tKVcPmowzq","W57dKJVdJYS","WQ4ovmoeWO7cHCkYW5u","W4VdTZJcQc8wW4niAca","iN8PWOpcJSoD","W7y9W50","nvKyWPlcQa","BCo7pmkoWQpcLmoy","W5vqrmkpiW","WOqVvgtcLCkAxc0maG","efj9ua","WRnxkMJcOCoRycVcRCoD","rZxdVmoLW5u0","xZldHSkLW44","W7ldKCo9CKtcUCkiWPa","cSoYvCohhdxcOG","EHZdP25h","WO3dOfSaqci","WOHmWP1sWRy","WOacyfRdGW","W6ldP8oKcmoy","W7hdKmocgmomBa","WRNdPCoea2S","W5ddHCoUW5NdUmoSbG","de5SuCkvzau","WQldISo2W4G1","W6aUWOtcThm","b8oEWPD9ea","WQG0swtdICkq","suZcHSkJ","BtKHWQ7cNG","lmkGWOddU8oc","W4ldT8oawNK","zW/dImkRW7ldGtTQd3m","WR9BWOfPWP8","uINdRSo/W4y","tCkUW7S","WRHHoGOciSkF","WPeKdrtdHG","W5NdGqxdGcZcIa","W43cRSktWQtcGSknWQCV","W5ddQIy","CIGpWRhcG18","WPddQmoP","wSkZW6JcJmowva","hSkOWOKPvW","WRvTdXddMCou","WOhdRCoyxSon","sJBdMCocfvK","bSoAWO15dcy","W4n0r8ksWQK","F8kFmuG","W5SOt3FdGmoqrJqzoa","ASktm0K","dcBdUhFcLmoCWPu","W4FdHCoPW5hdJW","W7pdR8o2W4tdVq","W6i/Avziw8k6iCk8baOW","uZZdJSkdp0/dGJ/cHSku","WOtcSCkJW7BcG8kDWRP1f8ot","WRnncce1","E1BcPSojFa","ta4uWRBcPG","W5ddNs/cHYW","W7ygtCk2mW","g8ogW7RdTSk+WOZcR8oyWRub","dZxcS2FcQmonWPr+z38","W6pcJwmXWQq9W5BdISkyWO4","W7q2WOZcHwpcJq","WQGeW6i+W5zKW4mA","WOeCBCoxCSo2WOPsW6vD","W4NdJCoZ","W4pdSs4","WO9rWQji","utldKG","W7/dG8oeCG","k8kaWPddUq","n3RdV8oqhmkBW4jI","WOLOmt09","WRtdO8ochgRcLCkzW4iSWQ0","vJ7dMmox","qstcQSkN","y8kkW63cU8oY","WRmAmIxdVa","gYJdUxZcP8osWOD1hMW","W6vdWQHKWOxdMmopnLJdMG","nX/cN8kLrW","WOSDh8o9W4baWRVcS8osdG","rSkeW4RcK8op","WQpdIKOhxG","WOCVvwq","W6jrWOyR","WQLwWRDBWOO","W4igzCk9cW","W6Dsy8k2emka","WP4HAh3dOa","W5hdTYhcOca"];return z4=function(){return t},z4()}function Eu(t,e){let r=z4();return Eu=function(n,s){n=n-(1*7451+-1*5722+-1308);let i=r[n];if(Eu.wFHHTb===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};Eu.QrjANh=l,t=arguments,Eu.wFHHTb=!0}let o=r[-2*-1604+3*-2512+-4328*-1],c=n+o,u=t[c];return u?i=u:(Eu.GkkIpG===void 0&&(Eu.GkkIpG=!0),i=Eu.QrjANh(i,s),t[c]=i),i},Eu(t,e)}function uK(){let t=Qe;return(globalThis[t(732,"O9yX")]||[])[t(1181,"ymzm")](r=>r[t(840,"Ds7b")]===t(476,"Pp!D"))||{}}function asr(t){let e=Qe,r={SOhuf:function(n,s){return n<s},xKWdg:function(n,s){return n>=s},AgUOV:function(n,s){return n===s},SLEgN:function(n,s){return n===s},qxmqt:function(n,s){return n===s},JcKKE:function(n,s){return n===s},kdGkG:function(n,s){return n===s},IFxXC:function(n,s){return n===s},UakJm:function(n,s){return n>=s},XkbOT:e(462,"Ds7b"),rDUys:function(n,s){return n===s},XvUAo:e(941,"cafg"),OHKbr:function(n,s){return n===s},MWxfc:e(532,"7e4N"),JSMCR:function(n,s){return n===s},Hdakt:e(975,"HDeO"),FaGDa:function(n,s){return n===s},vuFGk:e(944,"aVSa"),EqtVj:function(n,s){return n===s}};if(!t||r[e(664,"HIDt")](t[e(1056,"gH]7")],31*-289+-5499+14462))return!1;if(r[e(920,"3d(S")](t[e(646,"MXaS")],-5278+-2*3203+11692)&&r[e(774,"p(Ve")](t[0],-1*-9094+8456+-17413*1)&&r[e(1225,"p(Ve")](t[-85*58+79+-1213*-4],-67*-145+250*-13+-1277*5)&&r[e(936,"G&Pc")](t[2],-949*-10+-8210+-1202)&&r[e(886,"pf%x")](t[1817*1+6313+-8127],-1146*3+-97*-20+1569*1)&&r[e(885,")D&U")](t[5*113+-5146+4585],3045*2+-133+1*-5944)&&r[e(1137,"ymzm")](t[-38*242+1*-608+9809],11*652+5444+-3*4202)&&r[e(927,"#VhR")](t[6],-16*-173+430*10+-503*14)&&r[e(1185,"v!9b")](t[-8912+-1*5504+14423],-3284*-3+3725+-13567)||r[e(647,"HDeO")](t[-1*9767+-5598+-3073*-5],-13867+-2*-7061)&&r[e(647,"HDeO")](t[2308+1*7726+-10033],-2*-1975+1*9637+13371*-1)&&r[e(625,"6Kq8")](t[2],-17*-29+-1*-8123+8361*-1))return!0;if(r[e(1077,"XeCO")](t[e(1092,"QvGB")],-1*-4436+-143+-4287)){let n=t[e(914,"v!9b")](0,6)[e(1032,"F525")](r[e(756,"$Dxn")]);if(r[e(786,"WlA!")](n,r[e(1060,"KfkJ")])||r[e(1170,"MXaS")](n,r[e(687,"I7&]")]))return!0}return r[e(679,"v!9b")](t[e(977,"YTUu")],2*4057+2*-1094+-5914*1)&&r[e(1203,"XeCO")](t[e(736,"C1ic")](1960+-392*14+3528,7858+-13*-697+-16915)[e(806,"cafg")](r[e(1210,"QvGB")]),r[e(1152,"$Dxn")])&&r[e(758,"ymI*")](t[e(502,"KfkJ")](-46*-82+5248+-1*9012,-3072+-1*-4023+939*-1)[e(757,"%H5H")](r[e(561,"WlA!")]),r[e(455,"6)4W")])?!0:r[e(1146,"QvGB")](t[2578*3+-6202+2*-766],-4*2245+3*593+7267)&&r[e(626,"pf%x")](t[241*-13+-8960+12094],211*-5+-3964+-5096*-1)}function osr(t){let e=Qe,r={wZsSY:function(s,i){return s-i},FRmsT:function(s,i){return s+i},JpXbX:function(s,i){return s<=i},wrLnj:function(s,i){return s===i},UAeke:function(s,i){return s+i},LlnoG:function(s,i){return s+i},cqmiL:function(s,i){return s+i},HORdC:function(s,i){return s===i},GjGSG:function(s,i){return s+i},RIpOF:function(s,i){return s>=i}},n=Math[e(837,"GseL")](r[e(1117,"hswT")](t[e(454,"HIDt")],-11*-885+-209*28+1*-3875),r[e(897,"I7&]")](mK,2101+3*665));for(let s=-8902+-5*-1529+-37*-34;r[e(1162,"aVSa")](s,n);s++)if(r[e(767,"hswT")](t[r[e(540,"MXaS")](s,86*31+-712*-4+-1*5510)],-141*-1+1*-9349+9310)&&r[e(1086,"v!9b")](t[r[e(894,"6Kq8")](s,-1*5455+-6693+12153)],-9083*1+6014+3185*1)&&r[e(784,"KfkJ")](t[r[e(1025,"O9yX")](s,-9*474+1989+1*2283)],13*-33+810+-260)&&r[e(514,"DRAK")](t[r[e(1018,"XeCO")](s,950+106*-54+4781*1)],6263*1+314*13+-1*10233)){let i=t[e(448,"gH]7")+"BE"](s);if(r[e(899,"Ds7b")](i,-3522+-317*-7+1311))return s}return-(-5721+-536*10+11082)}function csr(t){let e=Qe,r={RzbpV:e(939,"6Kq8"),IlXrC:function(i,a){return i>a},EYPFl:function(i,a){return i<=a},wUcjJ:function(i,a){return i+a},TJCmB:function(i,a){return i===a},BCVej:function(i,a){return i+a},WHjjN:e(1106,"I7&]"),ATZiv:e(445,"H0(4")},n=Buffer[e(1176,"(6@z")](r[e(451,"QvGB")]),s=t[e(952,"pf%x")](n,8339+-4854*2+-685*-2);for(;r[e(636,"p(Ve")](s,-1344+-13*-1+1331);){if(r[e(1113,"Rn$0")](r[e(882,"VuHG")](s,1*-5683+-1721*-1+-1*-3974),t[e(884,"ymI*")])&&r[e(1029,"$Dxn")](t[e(1135,"XeCO")](r[e(882,"VuHG")](s,-6645+-13*-413+1284),r[e(676,"cafg")](s,12))[e(1093,"$Dxn")](r[e(779,"DRAK")]),r[e(555,"ymI*")]))return s;s=t[e(434,"O9yX")](n,r[e(797,"MGKd")](s,22*149+-9897*-1+-13174))}return-(801+1601*1+-2401)}function usr(t){let e=Qe,r={KKPAR:function(s,i){return s-i},ntPpX:function(s,i){return s+i},YhbTz:function(s,i){return s<=i},OtSCW:function(s,i){return s===i},oKvMY:function(s,i){return s===i},zNwta:function(s,i){return s+i},DTRKV:function(s,i){return s+i}},n=Math[e(887,"Rn$0")](r[e(1109,"(6@z")](t[e(549,"Rn$0")],1*-409+7589+-6804),r[e(704,")D&U")](mK,1580+-4813*1+1*3421));for(let s=-17*-429+-6979+-1*313;r[e(542,"]UY8")](s,n);s++)if(r[e(1026,"YTUu")](t[s],-6242*-1+1154*-2+1*-3863)&&r[e(1069,"KfkJ")](t[r[e(567,"!Qkh")](s,92*98+13*31+-3077*3)],-39*-21+-262*-14+-4416)&&r[e(994,"G&Pc")](t[r[e(827,"ltNx")](s,-839+14*-511+8369*1)],8124+1*-5077+-2976))return s;return-1}function lsr(t){let e=Qe,r={iaNmH:function(i,a){return i(a)},OgAyh:e(1128,"#VhR"),IuZGx:function(i,a){return i(a)},GXOvA:function(i,a){return i<=a},aZDcR:function(i,a){return i>a}};if(!r[e(544,"ltNx")](asr,t))return 2540*-1+4752+1*-2212;let n=[r[e(861,"YTUu")](osr,t),t[e(803,"3d(S")](Buffer[e(1151,"VuHG")](r[e(1020,"gH]7")]),-38*-30+-3035+-2*-948),t[e(969,"MXaS")](Buffer[e(505,"IlPH")]([9455+1569*-1+-7860,-1*-9992+44*12+-10451,-1249+-87*38+4778,-8485+32*-202+-4*-3778]),8907+-9029*-1+-17935),r[e(1022,"MGKd")](csr,t),r[e(464,"6Kq8")](usr,t)][e(949,"%H5H")](i=>Number[e(731,"Rn$0")](i)&&i>-1*-6499+8975+-15474);if(!n[e(646,"MXaS")])return 0;let s=Math[e(1102,"MXaS")](...n);return r[e(911,"XeCO")](s,-6463+-1*-6463)||r[e(581,"P7e(")](s,mK)?45*14+1623*4+-7122:s}async function dsr(t){let e=Qe,r={PnJqi:e(999,"IlPH")+"r",IaGQl:function(a,o){return a*o},zWocS:function(a,o){return a+o},UvLOR:function(a,o){return a||o},HBLBu:function(a,o){return a-o},edRpA:function(a,o){return a(o)},SHUrE:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await fe[e(712,"qKU^")](t,{responseType:r[e(1166,"QvGB")],timeout:r[e(881,"XeCO")](4982+-21*143+-979,9297+9923*1+-6*3202),maxContentLength:r[e(950,"Pp!D")](aK,-6*-1166+7926+2*-6949),maxBodyLength:r[e(1072,"2N%U")](aK,-6*-1534+-29*103+-5193),headers:Object[e(940,"H0(4")]({Cookie:r[e(929,"F525")](Rc,""),Range:e(661,"p(Ve")+r[e(475,"KfkJ")](aK,7*-588+-9429+13546)},vb)})[e(1126,"P7e(")](a=>{let o=e;return console[o(495,"MXaS")](a),a[o(577,"O9yX")]||null});if(!n||!n[e(438,"Pp!D")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(762,"Pp!D")](n[e(579,"MGKd")])?n[e(931,"DRAK")]:Buffer[e(1058,"pf%x")](n[e(563,"]UY8")]),i=r[e(725,"XeCO")](lsr,s);return{isMasked:r[e(651,"Ds7b")](i,-6751+13*627+-1400),skipBytes:r[e(487,"gH]7")](i,-2235+-1*-2235)?i:-4645*-1+-993*-1+-1*5638}}async function lK(t,e){let r=Qe,n={GGkel:function(o,c){return o||c},GZViy:function(o,c){return o===c},hpPwY:function(o,c){return o(c)}};if(n[r(1059,"(6@z")](!t,!e))return{isMasked:!1,skipBytes:0};let s=t5e[t];if(s&&n[r(878,"ymI*")](s[r(773,")D&U")],e))return s;let i=await n[r(1082,"Kp2)")](dsr,e),a={downUrl:e,isMasked:n[r(749,"!52N")](i[r(961,"H0(4")],!0),skipBytes:i[r(644,"HDeO")]||2*-631+-15*94+1336*2};return t5e[t]=a,a}async function K4(t,e){let r=Qe,n={Xwcfw:function(c,u){return c(u)},VhfgV:function(c,u){return c==u},fvAVk:r(995,"p(Ve"),bBVNO:r(741,"ltNx"),bAjbH:function(c,u,l,d,f){return c(u,l,d,f)},pSGqV:function(c,u){return c(u)},eBEQd:r(1013,"7e4N")+r(683,"Kp2)")+r(550,"qKU^"),Vskqa:function(c){return c()},wBFJk:function(c,u){return c===u},BkBhN:function(c,u,l,d,f,p){return c(u,l,d,f,p)},lZMWD:r(918,"MA3o"),bERzG:function(c,u){return c==u},KNWqW:r(662,"$Dxn")+r(535,"QvGB"),eIhNq:r(622,"aVSa"),YJzYs:function(c,u,l){return c(u,l)},OIxkV:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},BDVJW:function(c,u){return c*u},fIsQY:function(c,u){return c*u}};await n[r(1111,"p(Ve")]($I,t);let s=t[r(750,"P7e(")][r(673,"HDeO")],i=t[r(805,"hswT")][r(1074,"7e4N")],a=t[r(814,"Ds7b")][r(459,"%H5H")],o=t[r(488,"ymI*")][r(808,"Pp!D")];if(n[r(873,"IlPH")](s,n[r(726,"I7&]")])){let c="",u=o[r(764,"I7&]")]("*"),l=t[r(566,"#VhR")][r(652,"GseL")];if(n[r(1081,"3d(S")](i,n[r(826,"3d(S")])){if(c=(await n[r(998,"3d(S")](c5e,a,n[r(1051,"hswT")](decodeURIComponent,u[0]),u[1],u[2])||[])[r(956,"3d(S")](g=>g[r(1045,"YTUu")])[r(1171,"(6@z")](g=>g[r(1156,"$Dxn")][r(851,"6)4W")+"e"]()==l)?.[r(1103,"C1ic")]?.[r(697,"IlPH")]||"",!c){e[r(708,"v!9b")](2129*3+-1896+-3991),e[r(443,"MGKd")](n[r(595,"F525")]);return}e[r(835,"F525")](c);return}else{let y=n[r(1019,")D&U")](uK);if(c=(n[r(785,"YTUu")](y[r(1206,"MXaS")],!0)?await n[r(765,"DRAK")](isr,a,n[r(449,"1Ota")](decodeURIComponent,u[0]),u[-4768*2+-208+-1*-9745],u[-6*1543+-1*184+9444],n[r(1197,"cafg")](l,n[r(791,"!52N")])):await n[r(868,"!Qkh")](pK,a,n[r(728,"gH]7")](decodeURIComponent,u[7913+1*-7913]),u[3796+67*4+4063*-1],u[3253+1*8040+-11291],n[r(578,"P7e(")](l,n[r(688,"Rn$0")])))?.[r(893,"O9yX")+"rl"]||"",!c){e[r(481,"P7e(")](1*-9883+-362*-2+9659),e[r(819,"]UY8")](n[r(635,"$Dxn")]);return}if(n[r(858,"KfkJ")](l,n[r(711,"VuHG")])){e[r(1220,"6Kq8")](c);return}}let d=n[r(703,"GseL")](uK),f=d[r(985,"2N%U")]||1*5920+439*16+-4144*3,p=d[r(964,"]UY8")]||-5581*-1+-1*5647+76,m=await n[r(472,"QvGB")](lK,u[5*1247+-313*3+1*-5295],c),h=m[r(1030,"O9yX")]&&n[r(719,"I7&]")](l,n[r(1160,"6)4W")])?m[r(546,"v!9b")]:1*-6949+3694+-3255*-1;return await n[r(665,"HIDt")](xb,t,e,c,u[-7*377+-2562+9*578],Object[r(778,"%H5H")]({Cookie:Rc},vb),{chunkSize:n[r(874,"6)4W")](103*2+1*-1385+-1*-2203,f),poolSize:p,timeout:n[r(670,"QvGB")](-1*-4770+870*-5+580,10),skipBytes:h})}}async function V4(t,e){let r=Qe,n={qqARe:function(c,u){return c(u)},tLHJM:function(c,u){return c(u)},AOhFq:function(c,u){return c(u)},sTRrj:function(c,u){return c(u)},dUAvo:r(855,"2N%U"),JMdCQ:function(c,u){return c+u},mRMcf:function(c,u){return c(u)},twbwx:r(984,"ltNx")+"rk",xgpRy:function(c){return c()},DhXVi:function(c,u){return c===u},RwdrI:r(667,"HDeO"),iCTGx:function(c,u,l,d,f){return c(u,l,d,f)},drCJm:function(c,u,l){return c(u,l)},UaZbS:function(c){return c()},XOwbl:function(c){return c()},FZqWz:function(c,u,l,d,f,p){return c(u,l,d,f,p)},bcQSV:function(c,u,l,d,f){return c(u,l,d,f)},beVzO:r(689,"6Kq8"),OHYUo:r(1001,"G&Pc"),XgoRG:r(913,"Rn$0"),HzaYW:r(1010,"HIDt"),wgUhE:function(c){return c()}};await n[r(604,"VuHG")]($I,t);let s=t[r(1042,"ymzm")][r(594,"6Kq8")],i=t[r(923,"ltNx")].id,a=i[r(1157,"v!9b")]("*"),o=20*-283+-6839*1+12499;if(s[r(522,"IlPH")](await n[r(637,"MA3o")](r5e,n[r(1067,"2N%U")]))){let c=n[r(946,"HIDt")](n[r(848,"G&Pc")](n[r(517,"Pp!D")](Znr,t),t[r(1043,"(6@z")][r(963,"6Kq8")]),n[r(915,"HIDt")]),u={parse:0,url:[],header:Object[r(787,"WlA!")]({Cookie:Rc},vb)};a[12681+12677*-1]&&(u[r(1142,"KfkJ")]={subt:c+r(777,"pf%x")+a[2*4633+-85*-24+-11306]+"/"+n[r(980,"6Kq8")](encodeURIComponent,a[11*442+15*24+-5221])+"*"+a[-1*-710+-550+-52*3]+"*"+a[5608+5641*1+-1*11244]+r(486,"MGKd")});let l=n[r(492,"GseL")](uK),d=n[r(903,"WlA!")](l[r(597,"C1ic")],!0),f=u[r(807,"ymzm")],p=()=>{let A=r;f[A(1110,"HIDt")]("\u4EE3\u7406"),f[A(842,"MGKd")](c+A(702,"qKU^")+a[1*761+1*5851+1653*-4]+"/"+n[A(1115,"6)4W")](encodeURIComponent,a[-1762*-5+-922*-5+-13419*1])+"*"+a[-3*-573+-1*-9679+4*-2849]+"*"+a[116*-7+-23*-258+-5119]+A(1211,"H0(4"))},m=()=>{let A=r;f[A(967,"MA3o")]("\u4EE3\u7406"),f[A(966,"WlA!")](c+A(521,"C1ic")+a[0]+"/"+n[A(890,"!52N")](encodeURIComponent,a[-4160+-19*-219])+"*"+a[11977+-25*479]+"*"+a[-1*6901+5685+1219]+A(570,"3d(S")),f[A(966,"WlA!")]("\u539F\u753B"),f[A(1008,"F525")](c+(A(520,"WlA!")+A(754,"HIDt"))+a[4055*1+-2*1187+-1681]+"/"+n[A(1099,"qKU^")](encodeURIComponent,a[4866+-1203*4+1*-53])+"*"+a[23*-307+1*4201+-54*-53]+"*"+a[2942+4*-376+-1435]+A(429,"G&Pc"))};if(d){let A=n[r(721,"HDeO")](a[0],n[r(1100,"2N%U")])?await n[r(1037,")D&U")](fK,a[2]):await n[r(1131,"DRAK")](a5e,a[0],a[1],a[2],a[3]);if(A?.[r(1002,"ymzm")+"rl"])return(await n[r(976,"aVSa")](lK,a[2],A[r(850,"v!9b")+"rl"]))[r(780,"MA3o")]?(n[r(1196,"YTUu")](p),u):(n[r(828,"Pp!D")](m),u)}let h=await n[r(660,"H0(4")](pK,a[-9501+9501*1],a[-5413*1+-70*-109+8*-277],a[740+1*8782+-170*56],a[-5472+92*1+-1*-5383],!1),y=h?.[r(888,"7e4N")+"rl"];if(y&&(await n[r(1153,"P7e(")](lK,a[2],y))[r(875,"v!9b")])return n[r(1172,"1Ota")](p),u;let g=(await n[r(513,"%H5H")](c5e,a[-13985+-13985*-1],a[1],a[-17724+17726*1],a[3])||[])[r(997,"C1ic")](A=>A[r(1129,"WlA!")]),b=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],x=["4k","2k",n[r(1112,"!52N")],n[r(571,"6)4W")],n[r(844,"3d(S")],n[r(1064,"gH]7")]];return n[r(1195,"XeCO")](m),g[r(619,"!Qkh")](A=>{let S=r;o=x[S(527,"#VhR")](A[S(1123,"IlPH")]),f[S(1168,"GseL")](b[o]),f[S(967,"MA3o")](c+S(1189,"YTUu")+A[S(474,"qKU^")][S(447,"VuHG")+"e"]()+"/"+a[0]+"/"+n[S(1222,"YTUu")](encodeURIComponent,a[5647+-49*29+-845*5])+"*"+a[445*-2+-7*603+-1*-5113]+"*"+a[11079+-2*5538]+S(782,"MXaS"))}),u}}var Pl=Ce(Xn(),1);var bMe=Ce(Q0(),1),Af=Ce(Xn(),1);var lB="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",XI={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},xMe={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},war=async t=>{let e=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},Rar=async(t,e)=>{let r=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},iV=async t=>{let e=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},aV=async(t,e)=>{let r=Af.default.enc.Hex.stringify(Af.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function oV(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":lB,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=wl(s.headers["set-cookie"]),o=xMe.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await bMe.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=xMe.decode(s);if(!i)return n.send({code:0,data:{status:XI.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":lB}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:XI.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:XI.EXPIRED}}):n.send({code:0,data:{status:XI.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:XI.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":lB,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(wl(i.headers["set-cookie"])));let a=await he.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":lB,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(wl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await war(r.server)})}),t.put("/cookie",async(r,n)=>{await Rar(r.server,r.body?.cookie??""),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await iV(r.server)})}),t.put("/ut",async(r,n)=>{await aV(r.server,r.body?.ut??""),n.send({code:0})})}var Nar=10*60*1e3,lo={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Wn={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"https://api.extscreen.com/ucdrive"};function RMe(t){return String(t||"").split(",")[0].trim()}function _Me(t){return RMe(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Oar(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=_Me(t?.headers?.["x-forwarded-host"])||_Me(t?.headers?.host);if(!n)return e;let s=RMe(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function kar(t){return Pl.default.MD5(t).toString().slice(0,16)}function kb(t,e){return Pl.default.MD5(t+e).toString().slice(0,16)}function pB(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return Pl.default.SHA256(s).toString()}function EMe(t){return String(t||"").trim()}function cV(t){let e=Number(t);return Number.isFinite(e)&&e>0?e:0}function Par(t){if(!t||typeof t!="string")return null;let e=t.trim();if(!e.startsWith("{"))return null;try{let r=JSON.parse(e);return r&&typeof r=="object"&&!Array.isArray(r)?r:null}catch{return null}}function fg(t,e=Date.now()){if(!t)return null;let r=typeof t=="string"?Par(t)||t.trim():t;if(!r)return null;if(typeof r=="string")return{access_token:r};if(typeof r!="object"||Array.isArray(r))return null;let n=EMe(r.access_token||r.accessToken||r.token),s=EMe(r.refresh_token||r.refreshToken),i=cV(r.expires_in||r.expiresIn),a=cV(r.expires_at||r.expiresAt||r.expire_time||r.expireTime);if(!n&&!s)return null;let o={access_token:n};return s&&(o.refresh_token=s),i&&(o.expires_in=i),a?o.expires_at=a:i&&(o.expires_at=e+i*1e3),r.scope&&(o.scope=r.scope),(r.token_type||r.tokenType)&&(o.token_type=r.token_type||r.tokenType),o.updated_at=cV(r.updated_at||r.updatedAt)||e,o}function mB(t){let e=fg(t);return e?JSON.stringify(e):""}function Dar(t,e=Date.now()){return!!(t?.refresh_token&&t?.expires_at&&e+Nar>=t.expires_at)}function vMe(t={}){let e=Math.floor(Date.now()/1e3).toString()+"000";return{req_id:kb(lo.DeviceID,e),app_ver:Wn.appVer,device_id:lo.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,...t}}async function SMe(t){let e=await he.post(`${Wn.codeApi}/token`,JSON.stringify(t),{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"},validateStatus:r=>r<500});return e.data?.code!==200||!e.data?.data?null:fg(e.data.data)}async function Bar(t){if(!t?.refresh_token||!dg||!ZI)return null;let e=vMe({grant_type:"refresh_token",refresh_token:t.refresh_token}),r=await SMe(e).catch(()=>null);return r?.access_token||(r=await SMe(vMe({refresh_token:t.refresh_token})).catch(()=>null)),r?.access_token?(r.refresh_token||(r.refresh_token=t.refresh_token),!r.expires_in&&t.expires_in&&(r.expires_in=t.expires_in),!r.expires_at&&r.expires_in&&(r.expires_at=Date.now()+r.expires_in*1e3),await dg.push(`/uc/${ZI}`,mB(r)),r):null}async function IMe(t,e=!1){if(!t?.access_token)return"";if((e||Dar(t))&&t.refresh_token){let r=await Bar(t);if(r?.access_token)return Object.assign(t,r),r.access_token}return t.access_token}function NMe(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var Bl="pr=UCBrowser&fr=pc",lV={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"},dg=null,fB=null,uV="https://pc-api.uc.cn/1/clouddrive/",xf="",ZI="",OMe="",CMe="CatVodOpen",lg=null,dB="";async function kMe(t){dg=t.server.db;let e=t.server.config.uc;xf=e.cookie,fB=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.cookie)).toString(),ZI=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.token)).toString(),OMe=Pl.default.enc.Hex.stringify(Pl.default.MD5(e.ut)).toString();let r=await dg.getObjectDefault("/uc",{});if(r[fB]&&(xf=r[fB]),dB=await iV(t.server),!dB)try{await fe.get(`${uV}/file`)}catch(n){n?.response?.data?.length&&(dB=n.response.data,aV(t.server,dB))}}async function Su(t,e,r,n,s){r=r||{},Object.assign(r,lV),Object.assign(r,{Cookie:xf||""}),n=n||"post";let i=n=="get"?await fe.get(`${uV}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})):await fe.post(`${uV}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);if(o){let c=XD(xf,"__puus",o[1]);c!==xf&&(xf=c,await dg.push(`/uc/${fB}`,xf))}}return i.status===429&&a>0?(await pf(1e3),await Su(t,e,r,n,a-1)):i.data||{}}async function TMe(){let t=await Su(`file/sort?${Bl}&pdir_fid=${lg}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await Su(`file/delete?${Bl}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function Lar(t){if(lg){t&&await TMe();return}let e=await Su(`file/sort?${Bl}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===CMe){lg=r.fid,await TMe();break}}if(!lg){let r=await Su(`file?${Bl}`,{pdir_fid:"0",file_name:CMe,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(lg=r.data.fid)}}async function PMe(t){let e=await Su(`share/sharepage/token?${Bl}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});return e.data?.stoken?e.data:null}var Mar=[".srt",".ass",".scc",".stl",".ttml"];async function War(t){let e=typeof t=="string"?NMe(t):t;if(!e)return[];let r=await PMe(e);if(!r)return[];let n=r.stoken,s=[],i=[],a=(c,u)=>c?`${c}/${u}`:u,o=async function(c,u,l,d){let f=d||"",p=100;l=l||1;let m=await Su(`share/sharepage/detail?${Bl}&pwd_id=${c}&stoken=${encodeURIComponent(n)}&pdir_fid=${u}&force=0&_page=${l}&_size=${p}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!m.data)return[];let h=m.data.list;if(!h)return[];let y=[];for(let g of h)if(g.dir===!0)y.push({fid:g.fid,path:a(f,g.file_name)});else if(g.file===!0&&g.obj_category==="video"){if(g.size<1024*1024*5)continue;g.stoken=n,g.vod_group=f,s.push(g)}else g.type==="file"&&Mar.some(b=>g.file_name.endsWith(b))&&i.push(g);if(l<Math.ceil(m.metadata._total/p)){let g=await o(c,u,l+1,f);for(let b of g)h.push(b)}for(let g of y){let b=await o(c,g.fid,1,g.path);for(let x of b)h.push(x)}return h};return await o(e.shareId,e.folderId,1,""),i.length>0&&s.forEach(c=>{var u=Tl(c,i);u.bestMatch&&(c.subtitle=u.bestMatch.target)}),s}var Dl={};async function DMe(t,e,r,n,s){if(await Lar(s),s){let a=Object.keys(Dl);for(let o of a)delete Dl[o]}if(!lg||(e||(e=(await PMe({shareId:t}))?.stoken||""),!e))return null;let i=await Su(`share/sharepage/save?${Bl}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:lg,pwd_id:t,stoken:e,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await Su(`task?${Bl}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await pf(1e3)}}return!1}async function BMe(t,e,r,n){if(!Dl[r]){let i=await DMe(t,e,r,n,!0);if(!i)return null;Dl[r]=i}let s=await Su(`file/v2/play?${Bl}`,{fid:Dl[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}function $ar(t){let e=Number(t?.status||0),r=t?.data||{},n=Number(r?.code||r?.status||r?.errno||0),s=String(r?.message||r?.msg||r?.error_info||"").toLowerCase();return e===401||e===403||n===401||n===403||s.includes("token")||s.includes("unauthorized")}async function wMe(t,e){if(!t||!e)return{videoInfo:null,authFailed:!1};let r="/file",n=Math.floor(Date.now()/1e3).toString()+"000",s=lo.DeviceID||kar(n),i=kb(s,n),a=pB("GET",r,n,Wn.signKey),o=await he.request({method:"GET",url:`${Wn.api}${r}`,params:{req_id:i,access_token:e,app_ver:Wn.appVer,device_id:s,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,method:"streaming",group_by:"source",fid:t,resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":n,"x-pan-token":a,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Wn.clientID},validateStatus:u=>u<500}).catch(u=>u.response||{status:500,data:{}}),c=o?.data?.data?.video_info?.filter(u=>u.accessable)?.[0];return c?(c.download_url=c.url,{videoInfo:c,authFailed:!1}):{videoInfo:null,authFailed:$ar(o)}}async function Uar(t,e){let r=`file/download?${Bl}`;e&&(r+=`&ut=${e}`);let n=await Su(r,{fids:[t]});return n.data?n.data[0]:null}async function Far(t,e,r,n,s){if(!Dl[r]){let c=await DMe(t,e,r,n,s);if(!c)return null;Dl[r]=c}let i=await dg.getObjectDefault("/uc",{}),a=fg(i[ZI]),o=i[OMe];if(a?.access_token){let c=await IMe(a),u=await wMe(Dl[r],c);if(u.videoInfo)return u.videoInfo;if(u.authFailed&&a.refresh_token){let l=await IMe(a,!0);if(l&&l!==c&&(u=await wMe(Dl[r],l),u.videoInfo))return u.videoInfo}}return await Uar(Dl[r],o)}async function LMe(t){if(U4(t)){let e=NMe(t);if(e){let r=await War(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Is(getPanName("uc"),r)}else return{}}}async function MMe(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await kMe(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){if(a=(await BMe(s,decodeURIComponent(o[0]),o[1],o[2])||[]).filter(m=>m.accessable).find(m=>m.resolution.toLowerCase()==c)?.video_info?.url||"",!a){e.code(500),e.send("uc transcode url empty");return}e.redirect(a);return}else{if(a=(await Far(s,decodeURIComponent(o[0]),o[1],o[2],c=="down"))?.download_url||"",!a){e.code(500),e.send("uc downUrl empty");return}if(c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await xb(t,e,a,o[1],Object.assign({Cookie:xf},lV),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function WMe(t,e){let r=t.body.flag,s=t.body.id.split("*");await kMe(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await BMe(s[0],s[1],s[2],s[3])||[]).filter(g=>g.accessable),o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=Oar(t)+t.server.prefix+"/proxy/uc",d=await dg.getObjectDefault("/uc",{}),p=!!fg(d[ZI])?.access_token,m=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],h=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];p?o.push(...h,...m):o.push(...m,...h);let y={parse:0,url:o,header:Object.assign({Cookie:xf},lV)};return p&&(y.header=void 0),s[3]&&(y.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(g=>{i=u.indexOf(g.resolution),o.push(c[i]),o.push(`${l}/trans/${g.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),y}}var gg=Ce(oC(),1),s8e=Ce(FWe(),1),V0=Ce(require("crypto"),1);var BV,Mb={},z0={set(t,e){Mb[t]=e,BV.push(`/tyi/${t}`,e)},get(t){return Mb[t]}},qWe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return he({method:r,url:t,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},LV=(0,s8e.default)({storeAsString:!0}),Scr=(t,e)=>t?`${t}/${e}`:e,jWe="video",RB="cas",Icr=new Set([RB]),Ccr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),QWe="02",CB="8025431004",HWe="10020",Tcr="6.2",cC="https://cloud.189.cn",uC="https://open.e.189.cn",ea="https://api.cloud.189.cn",TB="https://upload.cloud.189.cn",GWe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",wcr="web_cloud.189.cn",kc={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},wB="MyCatPaw",kV={"User-Agent":kc["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":kc["Accept-Encoding"]},Rcr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function Ncr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function PV(t,e){let r=Ncr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function zWe(){return{clientType:"TELEPC",version:Tcr,channelId:wcr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function Ocr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return Rcr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function K0(t,e=""){try{return await he(t)}catch(r){if(!Ocr(r))throw r;return r?.code,r?.message||String(r),Wt(t?.url||"",260),await fe({...t,proxy:!1})}}function kcr(){return new Date().toUTCString()}function Pcr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=V0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function Dcr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`¶ms=${i}`:""}`;return V0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function KWe(t,e){return V0.default.publicEncrypt({key:t,padding:V0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function Cr(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"i"));return r?r[1].trim():""}function VWe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function va(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function _a(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=Cr(e,"code"),s=Cr(e,"message")||Cr(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function Bcr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=Cr(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function YWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function JWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function XWe(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=String(r?.fileDownloadUrl||"");return n||Cr(e,"fileDownloadUrl")}function Lcr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=va(t).trim();if(!e)return null;try{return LV.parse(e)}catch{return Do(e)}}function ZWe(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=Cr(a,"icon"),c={id:Cr(a,"id"),parentId:Cr(a,"parentId"),name:Pc(Cr(a,"name")),size:Number(Cr(a,"size")||0),md5:Cr(a,"md5"),fileCata:Cr(a,"fileCata"),mediaType:Cr(a,"mediaType"),createDate:Cr(a,"createDate"),lastOpTime:Cr(a,"lastOpTime"),icon:o?{smallUrl:Pc(Cr(o,"smallUrl")),largeUrl:Pc(Cr(o,"largeUrl")),max600:Pc(Cr(o,"max600")),mediumUrl:Pc(Cr(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function Mcr(t){let e=va(t).trim(),r=Lcr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=Cr(e,"fileList")||e;s=ZWe(a,"folder"),i=ZWe(a,"file")}return{count:Number(n?.count||Cr(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function e8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=String(r?.taskId||r?.taskID||"");return n||Cr(e,"taskId")||Cr(e,"taskID")}function Wcr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=Cr(e,"taskStatus")||Cr(e,"TaskStatus");return s?Number(s):0}function $cr(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Do(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/<familyInfoResp>([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:Cr(a,"familyId"),remarkName:Cr(a,"remarkName"),useFlag:Cr(a,"useFlag"),userRole:Cr(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=Cr(e,"familyId");a&&(s=[{familyId:a,remarkName:Cr(e,"remarkName"),useFlag:Cr(e,"useFlag"),userRole:Cr(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function i8e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Ucr(t){return Icr.has(i8e(t))}function Do(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function Pc(t){return String(t??"").replace(/&/gi,"&").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/'/gi,"'")}function $l(t){let e=Pc(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function Fcr(t){return Pc(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Wt(t,e=220){let r=Fcr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function Lb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function Ea(t){try{let e=$l(t);return e?new URL(e).host:""}catch{return""}}function qcr(t){try{let e=$l(t);return e?i8e(new URL(e).pathname):""}catch{return""}}function t8e(t){return Ccr.has(qcr(t))}function jcr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Qcr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=Do(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function DV(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function r8e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function Hcr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Gcr(t,e=""){let r=String(t||"").trim(),s=Hcr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:访问ç |æå–ç |密ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function a8e(t){let e=String(t||"").trim();if(!e)return null;let r=Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=r8e(i.trim()),c=r8e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function zcr(t,e){let r=$l(e);r&&!t.includes(r)&&t.push(r)}function lC(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return zcr(e,t),e;if(Array.isArray(t))return t.forEach(i=>lC(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&lC(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&lC(t[i],e,r+1);return e}function n8e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=$l(n);if(i){let c=a8e(s);return c?{url:i,header:c}:{url:i}}let a=Pc(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=$l(a[1]);return o?{url:o}:null}function Bb(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^<!doctype html/i.test(e)||/^<html/i.test(e))return null;let r=Do(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let n=$l(r.url);if(n){let s=a8e(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=n8e(s);if(i)return i}return n8e(e)}var MV=class{publicKey=null;setPublicKey(e){this.publicKey=e}encrypt(e){let r=Buffer.from(e,"utf8");return V0.default.publicEncrypt({key:this.publicKey,padding:V0.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},Wb=async t=>{BV=t.server.db,Mb=await BV.getObjectDefault("/tyi",{}),Mb?.cloud_account,Mb?.cloud_password,Lb(Mb?.cloud_cookie)},WV=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):z0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return z0.get("cloud_account")}get password(){return z0.get("cloud_password")}get cookie(){return z0.get("cloud_cookie")}async login(e,r){try{let n=await he.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await he.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await he.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",gg.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY-----
|
|
${s}
|
|
-----END PUBLIC KEY-----`,f=new MV;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await he.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",gg.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";");n=await he.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";"),z0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Gcr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||jWe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${RB}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await he.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});a.status===200&&(s.shareId=a.data.shareId);let o=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["User-Agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await qWe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=LV.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:Scr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:kc},i=await qWe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=LV.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p<f;p++){let m=u[p],h=m.mediaType===3?jWe:Ucr(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=$l(e);if(!n)return"";Wt(n,260),Lb(r?.Cookie||r?.cookie);try{let s=await he.get(n,{headers:{...kV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Wt(n,260),s.status,s.headers?.["content-type"],Wt(i),""):(Wt(n,260),s.status,s.headers?.["content-type"],i.length,Wt(i),i)}catch(s){return Wt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Wt(e,260),Lb(r?.Cookie||r?.cookie);try{let s=await he.get(e,{headers:{...kV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Wt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Bb(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Wt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Wt(a),/json/i.test(o)){let l=Do(a),d=lC(l);d.length,d.slice(0,3).map(f=>Wt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Bb(p);if(m)return Wt(f,260),Ea(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&$l(c)){Wt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Bb(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}let u=Bb(a);return u?.url,Ea(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=$l(e);if(!n)return{type:"invalid"};Wt(n,260),Ea(n),Object.keys(r||{}).join(",");try{let s=await he.get(n,{headers:{...kV,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=$l(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=jcr(u)||(Number.isFinite(l)?l:0);Wt(n,260),Wt(o,260),s.status,Wt(a);let f=Qcr(a);if(f)return Wt(n,260),Wt(o,260),DV(f.data),Wt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Bb(a);return p?.url&&p.url!==n?(Wt(n,260),Wt(p.url,260),Ea(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||t8e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Wt(n,260),Wt(o,260),Ea(o),{type:"playable"}):(Wt(n,260),Wt(o,260),s.status,{type:"unknown"})}catch(s){return Wt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Wt(e.url,260),host:Ea(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(t8e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Wt(c.playable.url,260),nestedHost:Ea(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:Ea(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:DV(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:DV(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=he.create({headers:{"User-Agent":kc["User-Agent"],"Accept-Encoding":kc["Accept-Encoding"],Referer:cC,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await K0({method:"GET",url:`${cC}/api/portal/unifyLoginForPC.action`,params:{appId:CB,clientType:HWe,returnURL:GWe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:PV(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await K0({method:"POST",url:`${uC}/api/logbox/config/encryptConf.do`,data:gg.default.stringify({appId:CB}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:cC},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY-----
|
|
${c}
|
|
-----END PUBLIC KEY-----`;return a.rsaUsername=`${u}${KWe(l,this.account)}`,a.rsaPassword=`${u}${KWe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await K0({method:"POST",url:`${uC}/api/logbox/oauth2/needcaptcha.do`,data:gg.default.stringify({appKey:CB,accountType:QWe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:uC+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Wt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await K0({method:"POST",url:`${uC}/api/logbox/oauth2/loginSubmit.do`,data:gg.default.stringify({appKey:CB,accountType:QWe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:GWe,dynamicCheck:"FALSE",clientType:HWe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":kc["User-Agent"],Referer:uC+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=PV(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await K0({method:"POST",url:`${ea}/getSessionForPC.action`,params:{...zWe(),redirectURL:o},headers:{"User-Agent":kc["User-Agent"],Referer:cC,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=Bcr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${_a(c?.data)||c?.status||"unknown"}`);let l=PV(a,c.headers?.["set-cookie"]);return l&&z0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,Lb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=zWe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?Pcr(s.encryptedParams,o.sessionSecret):"",f=kcr(),p=Dcr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await K0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:gg.default.stringify(l)}:{},headers:{"User-Agent":kc["User-Agent"],Referer:cC,Date:f,SessionKey:o.sessionKey,"X-Request-ID":V0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=va(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${ea}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=$cr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Wt(va(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Wt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=wB,o=r?`${ea}/family/file/listFiles.action`:`${ea}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(y=>String(y?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${ea}/family/file/createFolder.action`:`${ea}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||_a(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(l.data)||l.status}`);let d=String(l?.data?.id||Cr(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${ea}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(e8e(c?.data)||""),l=_a(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Wt(va(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:wB,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=VWe(i),d=n?`${TB}/family`:`${TB}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=YWe(f?.data)||{},m=_a(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let y=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=JWe(y?.data)||{},b=_a(y?.data);if(y.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||y.status}`);let x=String(g?.userFileId||g?.id||""),A=String(g?.fileName||a);if(!x)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:x,fileName:A,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${ea}/family/file/getFileDownloadUrl.action`:`${ea}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(XWe(a?.data)||""),c=Pc(o).replace(/^http:\/\//i,"https://"),u=_a(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await K0({method:"GET",url:c,headers:{"User-Agent":kc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?Pc(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=_a(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return Mcr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=wB,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${ea}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Wt(JSON.stringify(s.data||{}),220),s.status>=400||_a(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(s.data)||s.status}`);let i=String(s?.data?.id||Cr(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${ea}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${ea}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(e8e(i?.data)||""),o=_a(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(va(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${ea}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=_a(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(va(a),260)}`);let c=Wcr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:wB,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=VWe(n);e?.create_time;let c=await this.requestCloudPc(`${TB}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=YWe(c?.data)||{},l=_a(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Wt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${TB}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=JWe(f?.data)||{},m=_a(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Wt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),y=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:y,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${ea}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(XWe(r?.data)||""),s=Pc(n).replace(/^http:\/\//i,"https://"),i=_a(r?.data);if(r.status,Ea(s),Wt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await K0({method:"GET",url:s,headers:{"User-Agent":kc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?Pc(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,Ea(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,Lb(this.cookie),a?.name,Ea(a?.downloadUrl);let l=lC(a);l.length,l.slice(0,3).map(p=>Wt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Bb(m),y=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Wt(p,260)});if(y)return Wt(p,260),Ea(y.url),y.header,y}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let y=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!y)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),Ea(y.url),y.header,y}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(z0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,Lb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await he.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await he.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),z0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},_f=new WV;var Ls=Ce(Xn(),1),Ue=Iu;function NB(){let t=["jCkHW6y","W5xcTfFcOCklvCo1AmkAWPy","bmoTx0i","W61oW6q","BqW6lbNdHmo2g8oEWQG","wCk1qmo0WQhdGtb4WObr","cmotkqDa","W5nPs8kcaW","EhZdVmoddG","WQrdW6xdM0ldVxhcQG3cQq","wxj4eW3cRZTfWQVdSa","W7u2W7ldTq0","hWfmW4K","6kEP5P+56lwO5y6A5AwD6lAv","etpcHvPS","cSoelZTAycxcGI49","lqNdIYxcTgW","k2ygidiD","ogy8kq","cqDtW4LHWOO","oqirzq","ECo0c31cWOyYWPFcSW","BX/cKcNcH8od","AXK+aqxdK8o/amofWQ4","WOBcU3zdmW","W6PvqmkOd8oq","WOefnCoHW6zqW49kWRRcIG","WRrcW6bt","W750mdRdRSkbg0FcJSoK","xxHInadcOd1PWPddPa","WRVcSNjNcCk4aSknDsm","WR92W6dcGa","W5mnzW","Cmorv3yn","iIxcJvnik2i","WQDvW719WQtdVmkYvsZcLW","ntqMWPRcLG","pbHfW55r","W5TFFCk5dCoBm0G","BCk4qmkgW7RcJx5mW5Ke","nYxcIx5Cpg8XhXu","tCkjecbMtbVdI0Cv","aWpdGsCMW7RcHSowWO0X","FGyDgr7dMCoWeW","ttywpmkBvG","WQhcHhxdJSoXW6fmcWC","aWpdGsCMW7RcMSoCWOCW","a8oNtLVcL8kkE8oqxYm","W5lcSK3cPmkbCCk6DSkFWPG","W69MtqlcOG","WRPrW71xWQtdVmksxYNcHG","D01nfcZcGqC","imkOW6NdKmoFWRFcGa","WQpcMx7cL8o/W6SvlaLi","W5NdQSov","W5hdK8kGaCoJmG","mmkIW4BdJCorWQlcHJu/WR0","W69LCqxcVw4","W7VdO0jQxKVcNG","W5BdUmoVEmk2W6XjxrO5","WRdcVMHnnCki","W48tW6hdOHuOW49OhMa","WO3dH8kg","nchcIv4","oYxcHeW","W4hdR8o+wmk7W6npDayf","WQOoWRG","WPmFWRJdKW","aw4bjau","W5ddPmozuSkAW6jmvJ84","W5FcOLdcM8knu8kNFSkIWPS","m0FdKYxcVG","WQqaWOjHhW","uajP","WQCVWRmAWRHjWRPar8k7WOK3eW","drJcRCkhvSohWOFcTdVcUSouESkr","Ad83","prGUySkvu3tdNvLQ","WRSndNSH","zGhcQxXdlw4","zcivF8oPsSk8","jKyRiJanqunrmG","stW2fSkduJJcML9V","wa16","nSo6t0dcTSocASoqvqe","W4zdxCk8jG","W7e3W61rW64qWQCKvCkt","WQKzbCkFkG","e8keW4SQW6ZcUI7dPSodkG","WP7cOMbagCk+","yWCLo18","tCoMqg0qbSkQWO/dKZK","cH1mW5rQWP/cImkUcLu","WOlcUSoWWPH6pSk1","WO/cRmo1jaTCWPrVfCoH","W69LtbJcOMxdG8orFW","g8kWabLrs8o2WQldPdXdsWC","WQ5xW7tdLa","gSoNuW","WQPPocW","arxcNeFcKq","BGG6da","aWDrW5znWRW","WP3cU8o3oqPbWRC","ErKIba/dLq","W53dP1j9eq8","aHBcRuvH","W7yZW4hdMZSrW5HunKa","sSkWwSoy","WQDvW71UWQFdS8k/usdcJW","W4VdVmoVqSkXW6n6wZa4","pIhcKfO","W7KZWQJcIapcUdhdRJJdSG","oGmqzmkmuw/dUee","WOSPWRVdHxfSW4WHp8of","AqGTbqK","WQfNW7/dIW","lhvSWQOF","dmoHfSkfW7FcGdr1WPLDWONdVq","WQ1NW7ldQ0xdQw3cUWlcRG","frhcQuFcOSojW5y+W6dcLG","hGFdGr0HW7xcOmoCWRy4","zCkZWRRcUc3cH8ozW6pcVmkx","c8o/hSkEW77cMg4uWRXr","A8ogzW","hCoCBMBcHW","W5abWRBdMKK","tHDRWQBcIfitgCoI","x8k/tCocWRFdHIO","zSoPexnWWPO6WORcUmkp","W5OkASoPWP9Y","WOvcW7TrWRNcSSk2qI3cGa","yWKPm8kf","bcbmW6HH","ganj","WRhcTNy","AX0HdW","hqSqW49TWPVdGmkXc1i","WQTDpIe","W6XcA8kQ","WRdcSMHbcmkK","jvtdJJS","ovL9xvJcHCkMi8ofWO4ZWPBdRq","WPm3oG","W6FcJMlcPCkk","rSoQwKCSnG","WQqsoa","WPveW68g","WOiAWRVdL8oAu2naWQVcMa","WPRcSCo4iHPD","c0FcG8kl","E8oNeG","WQLTob3dQ8kobKNcM8o7","x3rVlXdcOd0","W4RcILpcOSkU","WQD7dt/dTCkobG","W5egCmorWR5xWOvjW5JcGG","oHufwmka","WPVcVCoGfWPBWQTPe8oG","WOZdJ8kywCoorW","WPddH8ks","ovLEWRS","W7SXWRlcJrNcSsVcNahcQ23cV8k8","W7T0W4fqW64tW4rXvCk6","WPZcUSo6WO1Bja","W5C8WRBdHKPhWOeTmmou","dKefWPVcOCkSW5FcI8kCqa","W6TVvI3cSN/dN8o3ArG","W6T+WOe","W5BdUmoVEmk2W6XjxrOt","wJ8jkrVdNCo9aSokWRi","WOXSWRmWoq","WRbrW7TnWQ4","i8kOW77dSCooWQBcHHmlWRW","jSkSW7NdH8kqW7m","iuFdKJpcJNdcRq","jCkLWRVdTNddK8kEW7tcSSkK","kCk+W5fIWQ/dPG","gCkZaHLrqmo1WOBdOXDUuIe","WQ9cW6beWQRdPSkVxYZdGW","W5jFW7VcISkcaZD2WO/cRCk/xCks","WR1RWOmSkq","W5yLWR8","yGqlW6XGW5RdVmotv8oNw3i","WQ7cJSoeldC","gfO6","W5uGBCofWQe","WPtdR8kyvmoO","WRpcT8oZidW","sapcIdxcJCodbvxcVmoW","l8kMW5z3WRq","WRnCW6bDWQ4","W6DBy8kS","uYn6","W4SNWR3dNMzTW5ureCk4","W7nXW6LjW4G6","AqychHG","mIhcJLPHlwywgWq","WQeFWQ3dNCowqG","WQWTW5rmW64WW7nw","WP7cRCo9oHTSWQXRdmoM","lCkgWPZdOrr1W4xcImkY","WR/cTMvogq","u8ooxSo0aW","aqJdSdGO","WPFcUSoGWQjklCk9W77dLN8","zSkZWQRdVq","W7ZcLg5ue8kHd8onnNK","W743W4xdNJuCW7u","WQnPpa","WO4AfSkrhq","oXisyCkdvwm","W752W6HmW7GtW6rXuG","WQjfW6bsWQ/dKCkPxs/cJa","WRfxWQG7cq","z1O7vq","W5JcPLC","rG04nCkU","W6eIW5ddLq","amoakW","aeGAcau5E35xeG","W4BdO8k7j2q","nbJcU1ddL8ks","yX13","yXNcLtm","E8k9WRRdSa","WRiil8kojSkN","WQ7cGNxdKCoDW4S","WQxcQ8oYW5i","W5WWWQZdVMTIW5mHbCkD","W6rBFG","k2GgidiD","mLLiWPSXWONdSG","eSoXxexcJa","W4mnWQ7dJ8oGwgngWQFcVG","tKKObb7dG8oQwG","smk8wmos","WQT0W68","ofnuWRKKWOi","FZ47Eq","haZdLJWWW6tcPG","g8oIB1/cIG","WQhdO8kL","W6RdQfu","W4zrW4nTW485W5rfDmkI","W7n9W6LfW7uw","j8kWW7f4WRC","W693W7rwW5iwW6P2rmk3","WQGdWQr3chS","WOpdICkLr8oHzCo8W7m","mMldGc7cQq","gGpdLIyS","W4imv8o2WQrFWPLl","WQP8WPyMi3G","hSoPtq","ESoKagzs","jqeSAmkm","ff/cRSodWPO","WOBdICkeD8oMymo9","BSkDWR7dQhhcHSoiWRVdVCk3","WQHHidNdOSkD","WQ1NbqK","qa0rdmkO","WQ/cSmo1jbPSWQXOfCoS","WQ0zimkDj8k8","hbhdHICNW7pdSSokWO41","W4lcOGtcNCk3FSoV","WPOeWQpdVSow","WQ1NW7ldQ0xdQw3cUXhcTq","W6JdTSoyC8kP","sSkjWQldJY4","vv7dNmoefCkvW4S","mhnNmtmzrLK0Fa","rSoMvv8auSkHWOhdJtW","W4xdR8oYrG","W5umumo7WQzt","W4S0WQRdNMy","pSkyW6T9WRa","eSo8uK0","WQH9iI7dS8kgeey","ifLPWQOIWOpdTmoT","BSkYWQ0","W5egCmorWR5xWOvjW4hcGa","W5hdKCk9","tqj9","xf4jWOGWW4RcN8k7ihpcOMT9","WOjGWQtdL2SUW6ikp8ki","WOWhW6tdGSogxI9hWQRcLG","f3tdKaBcTW","jHlcQ0BdLG","lCk+W6u","WRPrW71xWQtdVmkovspcHW","WPCPjgqh","wupdVSoehSkeW4y","CaG6bapdNSoFf8opWQ4","W7pdR0m","o3iUjZya","W5G6WRBdJMj3","WOudWQxdNW","fM52FCosbhVcU39lrmovFq","WPVcVCoGbrDoWRfJmCoL","WOFdG8kcC8oYD8o9W6r+W5O","WRxdTSkbxCoS","WOa+DMiBWQdcS8oT","W4tdS8oV","l8kOW7pdKq","oYmnECk4","Bmohv8oIv8oQ","dHCwzCoAa2tdJYiM","WQTTWOmQnwW","W71iz8kK","a8o1ccfX","aHj/WQJdPCoQWRxdKmofbq","WQaOWOG","BCk1WQldRdVcKa","uuZdRq","W6ZdSKbQu0JcVColdSo+","F8kUWQFdTq","W5RdTfn3vrVcMSoqfCo1","W6H3W7vgW7i","WOeVjgiBWQhcTCkXWR4","omk0W6j+WQFdSa","hxhcPG","lCk0W7fiWRFdOGpdGSodda","W6xcTK3cPSk0","W7hdRCkSg3JcHxKZrfu","qd4Uzmo3r8kKWQbmW4a","tZaNAmkThW","WQldH8kfw8oKiW","m1noWO04WOVdQmoVvSoX","W4dcQfFcVmk2wSk0ACkxWRy","WQqaWQ16dG","WQj4WOuQngvKa8onWQ4","W6v5yX7cTwRdJG","nrP2W5jO","W7FdSLvO","WPRcUCoMp1aAW7aXt8k6","WRP4WOiMe25rcmodWRK","c8ooks1tyJ8","WRRcS8oFWPPn","yNDUWP06WO/dSW","W6m3W6pdTZC","frdcUf3cHmouW4y+W5NcLG","W4nRgwOMWQpcLmkB","W7ZdSCkabuJcGG","kCkWW4LOWQS","pY1HCCkOv8o1W7niWPi","gCotmGu","Bhj/maRcOdPf","qJWSiSkFwW","lupcICoAWOW","WRpcNKrcda","vmkfFCo5WO0","WRlcIN8","s0ldR8osfa","CCoJfKHwWOyxWPhcS8kL","WRbrW71w","ySoCF8o+D8oXWOhdGKxdRG","W5iMWOJdGwj6W4aMl8kr","WQaeWRPba27cJqu0wa","W4pdSSo0xW","FGW9gq","W6OGW5RdNW","BSovcq","WOFcJNniiCoSk8kxCYi","WPlcJmohhZW","oGCozmkw","WQnSW6/dJa","WQmDpCkFbSkMuq","evNcO8osWQG","g8o8sv/cT8oynCknsqO","hq8aWQFcOa","y8oXW4rRWQ/dRXtdSmoZha","W5OgASoLWQjE","W7qBWP/dSKjwW7umdmkM","WQGpd8kiiCk1ra","qtNcRHtcUmoWogBcKSok","AuzsCCotaZxcQgaV","o8kNWPZdPa","hCotpHTxBYpcRZiR","W746WRtcJbJdRs7cVshdSW","o8kwW4j2WOW","mSouDmoKE8oiWOy","W5NdUSkidwRdNa","WO/cT8o4bcK","WRbcW6zDWQ7dOCk1","WOu6jgu","W7XRvGq","me/dMZm","W750W6S","i8kOW77dQSodWQBcKbmSWR0","WPmlWR/dKW","rSoTaxqu","CCkyzCo3WOC","WQPvWR0","W5X5zWNcOG","WPlcMCo3nrbAWQ1YkmoN","WQxcJM/dQCo8W65kjYvs","WPFcUSoGWQTAomkXW7tdLMu","qqa6qLNcG8kPwSkFW7C","n8kCWOFdVa","W5RcK37cPmkc","W6XiFmkMea","BCoXBSooDW","p33cJCojWOG","WOtcR8otbJK","W6foESk5","WQLJW4RdI1K","kCoKtuRcIW","ns7cNG","W689qvRdVZJcGCkGFue","WOCuhKq4","W7FdSCkAi0NcNMyYwLm","uenFcsy","WO3dJCka","AZ0I","FqtcLta","WRBcHeJdJSoMW6zwjq","kXOQW6W","j0pdGJNcV2C","W7FdO2P9xG","WQhcPmkHa2/cJ0yr","n0dcTCoFWPLkW6KjcCkf","W7NdQKbS","WRdcJJVdNSo1W7TzEa","uKZdSmot","b8oevehcRW","W64RW4bXAZTwnCoJWRXGqG","Da1/WQdcOeCveSouiG","W4XWW6zqW6q9W6rQvCkt","kqddPJqB","dmoygrfXBJNcKWix","WPytpmkEeSkMt8okca","v8kHsG","nYxcIx5Cpg8Ddb8","W61PqqpcSMxdGW","WPddH8keqCoIumo9W6P+W5y","B8omu8oSFCoA","WPu+iKOaWRlcTmkuWQBcRq","WRCaWRXHdG","fa3dKsS","WQipWQ0","wSoIrL8a","f8oalWfDBX/cGGyD","zCkDWQ3dUZhcL8odWRNdLCkP","BXRcNsK","ur/dQCof","ygddLwHajMmDcqu","sLFdPIaMW5RcQSoR","W7xdUSkneexcMNO","W7frW7yNuJNcLseswwdcMW","WQqslq","WOddRmossmkrW5Ts","WRxcVgmgo8kPcCkjAgm","kNpdJWlcOG","dafZW45W","WQ/cO3rpeSkRa8keFG","WPelWQxdN8oCxq","e8k4W6f0WRhdPdddKSoIfG"];return NB=function(){return t},NB()}(function(t,e){let r=Iu,n=t();for(;;)try{if(-parseInt(r(264,"HY@7"))/1*(-parseInt(r(483,"X3F3"))/2)+-parseInt(r(420,"yQ0$"))/3*(parseInt(r(459,"g(!R"))/4)+-parseInt(r(521,"BU]B"))/5+-parseInt(r(437,"GqfV"))/6*(-parseInt(r(540,"xKz9"))/7)+-parseInt(r(309,"Hd%w"))/8+-parseInt(r(519,"GqfV"))/9+-parseInt(r(303,"VLlT"))/10*(parseInt(r(640,"ud*G"))/11)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(NB,1509081+-4534*202+-7262*-31);function Iu(t,e){let r=NB();return Iu=function(n,s){n=n-(-1*9070+1*7368+1887);let i=r[n];if(Iu.HVkERR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};Iu.rWrbMl=l,t=arguments,Iu.HVkERR=!0}let o=r[9441*-1+-19*-241+-187*-26],c=n+o,u=t[c];return u?i=u:(Iu.jGfDFz===void 0&&(Iu.jGfDFz=!0),i=Iu.rWrbMl(i,s),t[c]=i),i},Iu(t,e)}var Kcr=[Ue(402,"^JXU")+Ue(256,"gUDE")+Ue(392,"ll@N"),Ue(585,"xKz9")+Ue(258,"SlEc"),Ue(429,"BmoS")+Ue(561,"Xz3H")],Vcr=new Set([Ue(245,"HY@7"),Ue(534,"ll@N"),Ue(296,"M6ri"),Ue(578,"L*2Z"),Ue(407,"36zq"),Ue(297,"cB)w"),"ts",Ue(328,"zRnL"),Ue(556,"X3F3"),Ue(315,"g(!R"),Ue(343,"i*jm"),Ue(475,"J!^T"),Ue(577,"g(!R"),"rm",Ue(526,"houj"),Ue(276,"36zq"),Ue(509,"Hd%w"),Ue(559,"^JXU"),Ue(523,"gUDE"),Ue(631,"aY4R")]),o8e=(t={})=>{let e=Ue,r={PbSzR:function(a,o){return a(o)}},n=r[e(312,"Dms*")](String,t[e(590,"M6ri")]||t[e(637,"Xz3H")]||"")[e(298,"SlEc")]()[e(375,"yQ0$")](/^\./,"")[e(418,"2iiJ")+"e"]();if(n)return n;let s=r[e(312,"Dms*")](String,t[e(366,"Lf!n")]||t[e(533,"Lf!n")]||"")[e(615,"u6If")]()[e(397,"aY4R")+"e"](),i=s[e(587,"BmoS")](/\.([a-z0-9]{1,10})$/i);return i?i[11358+-1*11357]:""},Ycr=t=>Vcr[Ue(557,"q(74")](o8e(t)),Jcr=t=>{let e=Ue,r={qDaxr:function(n,s){return n(s)},RVPzH:function(n,s){return n||s}};try{return r[e(591,"K1!f")](decodeURIComponent,r[e(525,"#HTl")](t,""))}catch{return r[e(447,"yQ0$")](t,"")}},Xcr=t=>encodeURIComponent(String(t||""))[Ue(549,"^JXU")](/\*/g,Ue(395,"#HTl")),Zcr=t=>{let e=Ue,r={PsEee:function(s,i){return s(i)},lvNen:function(s,i){return s||i},VwUEX:function(s,i){return s===i},UPwok:e(620,"LK7@"),YkCXw:e(515,"aY4R"),AUlWp:e(372,"L*2Z")},n=r[e(277,"]UpJ")](String,r[e(597,"2iiJ")](t,""));if(!n)return"";if(r[e(562,"VLlT")](typeof globalThis[e(619,"i*jm")],r[e(643,"M6ri")])){let s=globalThis[e(477,"X3F3")](n),i=Uint8Array[e(244,"^JXU")](s,a=>a[e(461,"^zju")](9710+911*3+-12443));return new TextDecoder()[e(301,"K1!f")](i)}return globalThis[e(430,"^Ez1")]?globalThis[e(539,"BU]B")][e(482,"K1!f")](n,r[e(610,"u6If")])[e(621,"VP^I")](r[e(611,"(3I$")]):""},$V=class{constructor(){let e=Ue,r={UqinQ:e(228,"cB)w")+"4",OjFaP:e(208,"cB)w")+e(329,"yQ0$")+e(190,"ud*G")+e(380,"g(!R")+e(254,"BmoS")+e(281,"X3F3")+e(382,"xw^n")+e(335,"^Ez1")+e(548,"^Ez1")+e(464,"g(!R")+e(218,"#HTl")+"6",IVXpT:e(364,"X3F3")+e(427,"xKz9")+e(613,"Xz3H")+e(344,"36zq"),WIFmo:e(489,"BU]B")+e(357,"K1!f"),oIBdp:e(194,"houj")+e(455,"gUDE")+e(453,"L*2Z")+e(292,"]UpJ")+e(262,"L*2Z")+e(367,"dQcf")+e(369,"LK7@")+e(259,"2iiJ")+e(627,"gUDE")+"|",rTotZ:e(252,"i*jm")+e(394,"&LU5")+e(517,"(3I$")+e(628,"BU]B")+e(478,"J!^T")+e(600,"(3I$")+e(507,"houj")+"/",oeVEc:e(511,"X3F3")+e(396,"M6ri")},n=r[e(206,"q(74")][e(232,"9Wt%")]("|"),s=184*-47+2273+6375;for(;;){switch(n[s++]){case"0":this[e(538,"yQ0$")]={"User-Agent":r[e(251,"9Wt%")],Accept:r[e(419,"UghT")],"Content-Type":r[e(485,"q(74")],"hcy-cool-flag":"1","x-deviceinfo":r[e(233,"^Ez1")]};continue;case"1":this[e(401,"^Ez1")]="";continue;case"2":this[e(203,"BmoS")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"3":this[e(516,"K1!f")]=r[e(188,"2iiJ")];continue;case"4":this[e(213,"36zq")]={};continue;case"5":this.x=Ls.default[e(333,"bz%B")][e(569,"sp%a")][e(324,"GqfV")](r[e(223,"^JXU")]);continue}break}}[Ue(642,"M6ri")+Ue(214,"Hd%w")+"n"](){let e=Ue,r={ydGGY:function(s,i){return s(i)}},n=Kcr[e(492,"#L2J")](s=>globalThis[e(267,"9[09")]?.[e(487,"bz%B")]?.[s])[e(639,"BU]B")](s=>String(s||"")[e(368,"9[09")]());return r[e(352,"^JXU")](String,globalThis[e(340,"BmoS")+e(362,"#L2J")]||n||"")[e(229,"xw^n")]()[e(552,"2iiJ")](/^Basic\s+/i,"")[e(199,"(3I$")]()}[Ue(499,"#HTl")+Ue(632,"9[09")+"er"](){let e=Ue,r=this[e(345,"X3F3")+e(391,"9[09")+"n"]();return r?e(210,"M6ri")+r:""}[Ue(508,"]UpJ")+Ue(635,"X3F3")+Ue(584,"NjSy")](){let e=Ue,r={zMwjK:function(s,i){return s(i)},iUnTy:e(246,"^Ez1")+e(520,"9[09")+e(354,"X3F3")},n=this[e(432,"GqfV")+e(214,"Hd%w")+"n"]();if(!n)return"";try{return r[e(495,"q(74")](Zcr,n)[e(248,"2iiJ")](":")[-5853+-1*1549+-7403*-1]||""}catch{return console[e(268,"UghT")](r[e(336,"K1!f")]),""}}[Ue(272,"aY4R")](e={}){let r=Ue,n={...this[r(219,"Hd%w")],...e},s=this[r(280,"sp%a")+r(448,"^JXU")+"er"]();return s&&(n[r(530,"SlEc")+r(439,"i*jm")]=s),n}[Ue(320,"UghT")+Ue(428,"bz%B")](){let e=Ue,r={sbgUb:e(553,"xKz9")},n=this[e(371,"^Ez1")+e(383,"Dms*")+"n"]();return n?Ls.default[e(564,"ud*G")](n)[e(299,"&LU5")]()[e(532,"9[09")](0,-199*31+1972+-145*-29):r[e(498,"2iiJ")]}[Ue(318,"M6ri")+Ue(379,"Lf!n")](e){let r=Ue,n={ZtIol:function(i,a){return i===a},KIKGI:r(589,"36zq"),ynhEe:function(i,a){return i(a)},xwGPF:function(i,a){return i||a}};if(e&&n[r(216,"J!^T")](typeof e,n[r(275,"g(!R")]))return e;let s=n[r(608,"BU]B")](String,n[r(287,"#HTl")](e,""))[r(192,"Lf!n")]();if(!s)return null;try{let i=this[r(399,"NjSy")](s);if(i)return JSON[r(324,"GqfV")](i)}catch{}try{return JSON[r(617,"gUDE")](s)}catch{return null}}async[Ue(588,"xKz9")+"pi"](e,r,n=-11*629+5778+-3047*-3){let s=Ue,i={ayajH:function(c,u){return c+u},MPkvn:function(c,u){return c!==u}},a=JSON[s(338,"^Ez1")](this[s(634,"zRnL")](JSON[s(542,"Vq%T")](r))),o=await he[s(353,"J!^T")](i[s(574,"i*jm")](this[s(250,"bz%B")],e),a,{headers:this[s(546,"sp%a")](),timeout:n});return i[s(473,"ud*G")](o[s(567,"bz%B")],-875+-2*-2789+79*-57)?null:this[s(318,"M6ri")+s(230,"ll@N")](o[s(404,"yQ0$")])}[Ue(554,"9[09")+Ue(278,"#HTl")+"fo"](){let e=Ue;return{account:this[e(294,"VLlT")+e(451,"u6If")+e(186,"u6If")](),accountType:1}}[Ue(240,"gUDE")+Ue(604,"#HTl")+"nt"](e){let r=Ue,n={lbbaq:function(s,i){return s===i},uOHOM:function(s,i){return s===i},ZRcZh:function(s,i){return s(i)}};return e?n[r(596,"#L2J")](e[r(616,"dQcf")],-134*-32+6741+5513*-2)?!0:n[r(293,"UghT")](e[r(616,"dQcf")],-5995+-1*-5995)&&n[r(374,"GqfV")](Ycr,e):!1}[Ue(331,"VLlT")](e){let r=Ue,n={iNYxR:function(a,o){return a==o},kNsUe:r(191,"Hd%w"),OfXkN:function(a,o){return a===o},IiIeZ:r(189,"HY@7"),TuBsb:function(a,o){return a!==o}},s=Ls.default[r(636,"NjSy")][r(314,"bz%B")][r(339,"BU]B")](9608+-421*9+-5803),i="";if(n[r(555,"Hd%w")](n[r(474,"J!^T")],typeof e)){let a=Ls.default[r(373,"dQcf")][r(488,"9[09")][r(321,"36zq")](e);i=Ls.default[r(624,"VLlT")][r(469,"g(!R")](a,this.x,{iv:s,mode:Ls.default[r(547,"(3I$")][r(195,"BU]B")],padding:Ls.default[r(235,"&LU5")][r(274,"#L2J")]})}else if(n[r(551,"bz%B")](typeof e,n[r(409,"Xz3H")])&&n[r(512,"Hd%w")](e,null)){let a=JSON[r(454,"2iiJ")](e),o=Ls.default[r(291,"yQ0$")][r(300,"houj")][r(412,"K1!f")](a);i=Ls.default[r(465,"GqfV")][r(581,"Dms*")](o,this.x,{iv:s,mode:Ls.default[r(502,"VP^I")][r(204,"9Wt%")],padding:Ls.default[r(501,"M6ri")][r(544,"HY@7")]})}return Ls.default[r(424,"nlmA")][r(446,"NjSy")][r(202,"UghT")](s[r(638,"gUDE")](i[r(224,"^zju")]))}[Ue(393,"aY4R")](e){let r=Ue,n=Ls.default[r(622,"(3I$")][r(563,"^zju")][r(513,"9[09")](e),s=n[r(390,"]UpJ")](),i=s[r(236,"zRnL")][r(445,"X3F3")](8923+8919*-1);s[r(282,"Vq%T")](s[r(201,"xKz9")]),n[r(249,"L*2Z")](i);let a=Ls.default[r(323,"36zq")][r(209,"cB)w")][r(468,"nlmA")](n);return Ls.default[r(583,"M6ri")][r(399,"NjSy")](a,this.x,{iv:s,mode:Ls.default[r(322,"Dms*")][r(204,"9Wt%")],padding:Ls.default[r(625,"nlmA")][r(630,"^zju")]})[r(384,"X3F3")](Ls.default[r(417,"cB)w")][r(491,"9Wt%")])[r(593,"dQcf")]()}async[Ue(510,"u6If")](e){let r=Ue;this[r(594,"Hd%w")][r(573,"VP^I")](n=>{let s=r,i=n[s(480,"Lf!n")](e);i&&i[-4523*1+-3139*1+79*97]&&(this[s(471,"dQcf")]=i[-1*-6629+4418+-11046])})}async[Ue(400,"u6If")+"fo"](e){let r=Ue,n={ZSEKa:r(506,"gUDE")+r(463,"(3I$")+r(614,"GqfV")+r(575,"BU]B")+r(576,"X3F3"),KZjNB:r(237,"#L2J")+r(265,"VLlT"),aNhzp:r(425,"i*jm")+r(606,"Dms*")+r(185,"UghT")};if(!this[r(536,"xKz9")])return console[r(522,"Hd%w")](n[r(348,"Lf!n")]),null;let s=this[r(381,"yQ0$")+r(302,"NjSy")]()+"-"+this[r(443,"J!^T")]+"-"+e;if(this[r(543,"^Ez1")][s])return this[r(592,"Dms*")][s];let i=this[r(389,"q(74")+r(350,"L*2Z")+"fo"](),a={getOutLinkInfoReq:{account:i[r(444,"#HTl")],linkID:this[r(486,"GqfV")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(212,"q(74")+"pi"](n[r(377,"houj")],a))?.[r(442,"X3F3")];return this[r(456,"X3F3")][s]=o,o}catch(o){return console[r(347,"xw^n")](n[r(286,"9Wt%")],o),null}}async[Ue(211,"VP^I")+"ta"](e){let r=Ue,n={qGGmS:function(c,u){return c in u},JlKpb:function(c,u){return c>u},TRqPl:function(c,u){return c(u)},hjRpN:r(288,"Lf!n"),nTSIC:r(580,"cB)w"),ZlpeO:function(c,u){return c===u}};if(!e)return{};let s=e[r(435,"#HTl")](n[r(582,"i*jm")]),i=s?n[r(466,"i*jm")]:e;s&&await this[r(356,"xw^n")](e);let a={},o=await this[r(570,"gUDE")+"le"](i);o&&Array[r(421,"cB)w")](o)&&await Promise[r(341,"aY4R")](o[r(550,"LK7@")](async c=>{let u=r,l=c[u(269,"]UpJ")]||c[u(452,"yQ0$")];!n[u(263,"BmoS")](l,a)&&(a[l]=[]);let d=await this[u(205,"BmoS")+"l"](c[u(238,"9[09")]);d&&n[u(221,"sp%a")](d[u(481,"^Ez1")],-2*4478+-1045*-3+-5821*-1)&&a[l][u(361,"2iiJ")](...d)}));for(let c in a)(!Array[r(496,"LK7@")](a[c])||n[r(290,"i*jm")](a[c][r(605,"bz%B")],0))&&delete a[c];if(n[r(365,"^Ez1")](Object[r(457,"L*2Z")](a)[r(586,"xKz9")],2388+2388*-1)){let c=await this[r(514,"aY4R")+"l"](n[r(285,"HY@7")]);c&&Array[r(612,"zRnL")](c)&&n[r(598,"9Wt%")](c[r(579,"VP^I")],37*-22+-7256+8070)?a[n[r(247,"#HTl")]]=c:(a[n[r(234,"g(!R")]]=await this[r(423,"ud*G")+"le"](e),a[n[r(193,"xw^n")]]&&Array[r(215,"]UpJ")](a[n[r(247,"#HTl")]])&&(a[n[r(603,"ud*G")]]=a[n[r(295,"ll@N")]][r(490,"#HTl")](u=>u&&Object[r(405,"yQ0$")](u)[r(505,"sp%a")]>-8299+204*-17+-1*-11767)))}return Object[r(187,"aY4R")](a)[r(599,"M6ri")](c=>{let u=r,l={wlTrp:function(f,p){return n[Iu(629,"K1!f")](f,p)}},d=Array[u(257,"bz%B")](a[c])?a[c]:[];a[c]=d[u(196,"(3I$")](f=>f&&f[u(386,"&LU5")]&&f[u(500,"M6ri")])[u(476,"^Ez1")](f=>{let p=u;return{vod_name:f[p(307,"zRnL")],vod_id:[f[p(436,"]UpJ")],f[p(568,"&LU5")],l[p(441,"^zju")](Xcr,f[p(566,"(3I$")]),f[p(385,"ud*G")]??""][p(565,"SlEc")]("*"),vod_size:f[p(270,"K1!f")]}}),!a[c][u(226,"VLlT")]&&delete a[c]}),a}async[Ue(460,"L*2Z")+"le"](e){let r=Ue,n={xjEva:r(217,"NjSy"),OySuD:r(242,"u6If"),cCiGw:function(s,i){return s>i},jTZlg:r(472,"9[09")+r(342,"q(74")+r(306,"&LU5")};if(!e)return null;try{e=e[r(198,"NjSy")](n[r(545,"Dms*")])?n[r(426,"Lf!n")]:e;let i=await this[r(623,"dQcf")+"fo"](e);if(!i||!i[r(289,"L*2Z")])return null;let a=i?.[r(253,"houj")],o=a[r(197,"zRnL")](d=>d[r(358,"Xz3H")]),c=a[r(403,"M6ri")](d=>d[r(273,"BU]B")]),u=/App|活动ä¸å¿ƒ|å…è´¹|1T空间|å…æµ/,l=[];if(a&&n[r(527,"dQcf")](a[r(231,"ud*G")],-1*-3875+-7826+3951)){o[r(220,"xw^n")]((f,p)=>{let m=r;!u[m(243,"X3F3")](f)&&l[m(408,"BU]B")]({name:f,path:c[p]})});let d=await Promise[r(484,"UghT")](c[r(595,"i*jm")](async f=>this[r(279,"&LU5")+"le"](f)));return d=d[r(360,"J!^T")](f=>f!=null),[...l,...d[r(327,"SlEc")]()]}}catch(s){return console[r(633,"UghT")](n[r(283,"q(74")],s),null}}async[Ue(609,"L*2Z")+"l"](e){let r=Ue,n={ewSlk:function(s,i){return s in i},DQaui:r(537,"X3F3"),xCVtO:function(s,i){return s!==i},hTzpE:function(s,i){return s!==i},kTnwJ:r(200,"NjSy")+r(433,"J!^T")+r(607,"q(74")};try{let s=await this[r(400,"u6If")+"fo"](e);if(!s||!n[r(531,"BmoS")](n[r(349,"zRnL")],s))return null;let i=s[r(337,"J!^T")];if(n[r(458,"VP^I")](i,null))return i[r(601,"LK7@")](o=>this[r(304,"9Wt%")+r(311,"xKz9")+"nt"](o))[r(571,"Lf!n")](o=>({name:o[r(572,"Xz3H")],contentId:o[r(602,"LK7@")],linkID:this[r(319,"HY@7")],size:o[r(398,"]UpJ")],path:o[r(449,"g(!R")]||"",coType:o[r(518,"BmoS")],suffix:o8e(o)}));if(n[r(558,"ud*G")](s[r(227,"BmoS")],null)){let a=s[r(413,"36zq")][r(560,"xw^n")](c=>c[r(359,"Xz3H")]),o=await Promise[r(271,"xKz9")](a[r(414,"nlmA")](c=>this[r(351,"ll@N")+"l"](c)));return o=o[r(363,"SlEc")](c=>c&&c[r(255,"dQcf")]>0),o[r(305,"NjSy")]()}}catch(s){return console[r(284,"Lf!n")](n[r(467,"gUDE")],s),null}}[Ue(493,"LK7@")+Ue(479,"LK7@")](e){let r=Ue;return e&&(e[r(535,"gUDE")]||e[r(406,"u6If")+"L"]||e[r(261,"xw^n")+"L"]||e[r(346,"g(!R")+r(438,"L*2Z")])||""}async[Ue(241,"36zq")+Ue(239,"HY@7")+Ue(618,"BmoS")](e,r){let n=Ue,s={AsxeE:n(376,"9[09")+n(310,"nlmA")+n(308,"i*jm")},i=this[n(554,"9[09")+n(326,"(3I$")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(317,"]UpJ")]},commonAccountInfo:i},o=await this[n(470,"#L2J")+"pi"](s[n(355,"yQ0$")],a);return this[n(450,"9[09")+n(260,"Vq%T")](o?.[n(442,"X3F3")]?.[n(370,"ll@N")+"o"])}async[Ue(497,"dQcf")+Ue(410,"u6If")+"ad"](e,r){let n=Ue,s={solRV:n(504,"xKz9")+n(431,"X3F3")};if(!this[n(294,"VLlT")+n(387,"Dms*")+"er"]()||!e)return"";let i=this[n(541,"#HTl")+n(422,"Xz3H")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(494,"ll@N")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(388,"i*jm")+"pi"](s[n(266,"#HTl")],a))?.[n(440,"LK7@")]?.[n(434,"sp%a")]||""}async[Ue(462,"Dms*")+"ay"](e,r,n="",s=""){let i=Ue,a={OogvC:function(c,u){return c(u)},SvzcU:function(c,u){return c||u}},o=a[i(529,"#HTl")](Jcr,n);return this[i(316,"yQ0$")+i(325,"xw^n")+"er"]()?await this[i(641,"#HTl")+i(207,"VLlT")+"ad"](a[i(378,"J!^T")](o,e),r):await this[i(411,"q(74")+i(313,"xw^n")+i(528,"M6ri")](e,r)}},UV=new $V;var PXr=Ce(Xn(),1),le=Ul;(function(t,e){let r=Ul,n=t();for(;;)try{if(parseInt(r(416,"yDmj"))/1*(parseInt(r(1089,"MAI["))/2)+parseInt(r(418,"Wd#O"))/3+parseInt(r(833,"Cw#%"))/4*(-parseInt(r(460,"nsNg"))/5)+parseInt(r(1338,"pr%%"))/6*(-parseInt(r(1282,"csNL"))/7)+-parseInt(r(581,"CsF7"))/8+-parseInt(r(1278,"]g^X"))/9+parseInt(r(335,"Y(gf"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(BB,145988);var Y0=le(414,"JZfJ")+le(1340,"EdkW")+"n",c8e=le(466,"w*gd")+le(535,"L^u@")+le(1251,"1XpI"),yg=le(813,"XIxu"),eur=le(955,"5zx!")+le(377,"h#tw")+le(1001,"P(Jb")+le(842,"1XpI")+le(1301,"P(Jb")+le(481,"47(V"),tur=le(1134,"JkQT")+le(521,"DhQd")+le(695,"Y(gf")+le(1242,"Z@sc")+le(1238,"^*m#"),rur=le(1101,"o3rS")+le(1177,"$r(y")+le(1037,"ZfqP")+le(1211,"Z%L#")+le(1325,"4PrE"),nur=le(372,"Wd#O")+le(1380,"MAI[")+le(817,"ZfqP")+le(1147,"Bp*y")+le(967,"Fii^"),sur=le(351,"XBJe")+le(1059,"P(Jb")+le(646,"yDmj")+le(513,"5zx!")+le(1379,"M]CY"),f8e=le(412,"y412")+le(455,"QFD%"),iur=""+Y0+f8e,p8e=le(1305,"P(Jb")+le(585,"o3rS"),aur=""+Y0+p8e,m8e=le(541,"Mhe$"),h8e="3",our=["a","d","e","f","g","h","l","m","y","i","j","n","o","p","k","q","r","s","t","u","b","c","v","w","s","z"],OB=le(410,"y412")+le(733,"csNL")+"p",ii=t=>String(t||"")[le(1353,"#rid")]();function u8e(t,e=-79*83+1067*-9+-32*-505){let r=le,n={aZklK:function(i,a){return i(a)}},s=n[r(1223,"5zx!")](Number,t);return Number[r(872,"oEMo")](s)?s:e}function Ag(t){let e=le,r=Array[e(680,"XIxu")](t)?t:[t];return[...new Set(r[e(1169,"rgzd")](n=>Number(n))[e(661,"L^u@")](n=>Number[e(774,"Z@sc")](n)&&n>1811*-3+-52*168+14169))]}function FV(t={}){let e=le,r={pNDDH:function(o,c){return o(c)}},n=r[e(493,"w*gd")](Ag,t[e(434,"H&b]")]||t[e(1363,"Fii^")]),s=r[e(392,"o#03")](Ag,t[e(771,"csNL")]||t[e(1150,"JkQT")]),i=r[e(1076,"Z@sc")](ii,t[e(1266,"#rid")]),a=r[e(961,"ZfqP")](ii,t[e(978,"Z%L#")+"y"]);return{fileIDs:n,shareIDs:s,shareUrl:i,resourceKey:a}}function l8e(t={}){let e=le,r={AhyOO:function(n,s){return n>s},lupbx:function(n,s){return n>s}};return r[e(424,"2[yc")](t[e(783,"$r(y")]?.[e(1048,"2[yc")],971*-7+46*7+6475)||r[e(1309,"Z@sc")](t[e(630,"Z%L#")]?.[e(686,"^*m#")],-4551*1+1268+-1*-3283)}function jV(t){let e=le,r={YAqwu:e(518,"3J7Q"),TzXnI:e(970,"h#tw")};return Buffer[e(879,"XIxu")](t,r[e(331,"o3rS")])[e(1222,"pr%%")](r[e(1045,"y412")])}function g8e(t){let e=le,r={NgLgZ:function(n,s){return n(s)},vkTfQ:function(n,s){return n||s},vcJrI:function(n,s){return n+s},yooay:function(n,s){return n%s},WJgiA:function(n,s){return n-s},CRNkb:function(n,s){return n%s}};try{let n=r[e(804,"nsNg")](String,r[e(1004,"Bp*y")](t,""))[e(1372,"]g^X")](".")[1]||"";if(!n)return null;let s=n[e(683,"rgzd")](/-/g,"+")[e(634,"XIxu")](/_/g,"/"),i=r[e(1069,"Fii^")](s,"="[e(1321,"Fii^")](r[e(1193,"Z%L#")](r[e(1319,"3J7Q")](-1*1519+-2811+4334,r[e(992,"MAI[")](s[e(1110,"JZfJ")],4)),1*-4453+5257*-1+4857*2)));return JSON[e(312,"Bp*y")](r[e(599,"5&cU")](jV,i))}catch{return null}}function cur(t){let e=le,r={NsWmY:function(s,i){return s(i)},Gvytv:function(s,i){return s(i)}},n=r[e(855,"Wd#O")](g8e,t)||{};return r[e(933,"h#tw")](ii,n[e(613,"Cw#%")]||n.id||n[e(473,"nsNg")]||n[e(561,"Fii^")]||n[e(1318,"0G^^")])}function uur({uid:t,shareKey:e,sharePwd:r}){let n=le,s={isEjn:function(u,l){return u(l)},bbHbh:function(u,l){return u(l)},YfZHG:function(u,l){return u||l},QzqeE:function(u,l){return u(l)},QXRGV:n(1117,"Z%L#")},i=s[n(408,"0G^^")](ii,t),a=s[n(1187,"JkQT")](ii,e);if(s[n(631,"1XpI")](!i,!a))return"";let o=new URL(n(881,"XBJe")+i+(n(929,"csNL")+n(1080,"4PrE")+n(763,"5zx!"))+a),c=s[n(1163,"Mhe$")](ii,r);return c&&o[n(1237,"yDmj")+"ms"][n(1383,"pr%%")](s[n(971,"Z%L#")],c),o[n(571,"2[yc")]()}function dC(t){let e=le,r={TBptD:e(815,"XIxu")+e(592,"3DX)"),zOMRY:e(1330,"CsF7")+e(350,"MAI[")};return{Authorization:e(691,"o3rS")+t,Platform:r[e(432,"$r(y")],"Content-Type":r[e(1310,"h#tw")],Accept:r[e(663,"Fii^")]}}function Ul(t,e){let r=BB();return Ul=function(n,s){n=n-310;let i=r[n];if(Ul.PbTTzb===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};Ul.LQaPgD=l,t=arguments,Ul.PbTTzb=!0}let o=r[-3029*2+-9523+-1*-15581],c=n+o,u=t[c];return u?i=u:(Ul.UxfoFt===void 0&&(Ul.UxfoFt=!0),i=Ul.LQaPgD(i,s),t[c]=i),i},Ul(t,e)}var kB=null;function lur(){let t=le,e={xvama:function(r,n){return r<n},FzSEd:function(r,n){return r&n},okDoq:function(r,n){return r^n},JplLF:function(r,n){return r>>>n},fVCfn:function(r,n){return r>>>n},BxSmj:function(r,n){return r>>>n}};return kB||(kB=Array[t(1030,"pr%%")]({length:256},(r,n)=>{let s=t,i=n;for(let a=-62*-41+13*-533+1*4387;e[s(765,"^*m#")](a,3096+-3088*1);a+=115*-78+7262+1709)i=e[s(1119,"n(MT")](i,442*17+8170+-15683)?e[s(1225,"M]CY")](1453859748+-6278838726*-1+2341*-1599490,e[s(1103,"CsF7")](i,17344+17343*-1)):e[s(595,"XBJe")](i,-9568+3*-29+-2*-4828);return e[s(974,"]g^X")](i,0)}),kB)}function DB(t){let e=le,r={Pmbuf:function(i){return i()},NhtHP:function(i,a){return i^a},ptHtQ:function(i,a){return i(a)},AvPov:e(428,"JkQT"),cNtsl:function(i,a){return i^a},royDJ:function(i,a){return i>>>a},cSmCN:function(i,a){return i&a},GWUKu:function(i,a){return i(a)},QwmXD:function(i,a){return i>>>a},UTEXX:function(i,a){return i^a}},n=r[e(752,"Fii^")](lur),s=r[e(694,"ZfqP")](0,-(4874+-4873*1));for(let i of Buffer[e(548,"h#tw")](r[e(1287,"oEMo")](String,t),r[e(919,"MAI[")]))s=r[e(858,"#rid")](r[e(505,"MAI[")](s,-5*-1333+-5884*-1+-12541),n[r[e(1331,"o3rS")](r[e(821,"Fii^")](s,i),5952+-1*-8846+-14543)]);return r[e(1143,"o3rS")](String,r[e(438,"$r(y")](r[e(552,"5zx!")](s,-(9584+6*841+-14629)),-1531*6+-10*-11+2269*4))}function PB(t){let e=le;return{jDYxL:function(n,s){return n(s)}}[e(834,"Mhe$")](String,t)[e(1206,"pr%%")](2,"0")}function dur(t,e=m8e,r=h8e){let n=le,s={Zmolg:function(p,m){return p+m},JacHO:function(p,m){return p+m},wFsBs:function(p,m){return p*m},IiQbc:function(p,m){return p*m},aNleB:function(p,m){return p(m)},nSxcq:function(p,m){return p/m},vSSwR:function(p,m){return p*m},Tvbua:function(p,m){return p(m)},rQyFg:function(p,m){return p(m)},wfRWu:function(p,m){return p(m)},bAWyv:function(p,m){return p(m)},MFSYw:function(p,m){return p*m}},i=s[n(1313,"ryF!")](s[n(461,"n(MT")](Date[n(731,"XIxu")](),s[n(588,"XBJe")](s[n(407,"5&cU")](new Date()[n(419,"1XpI")+n(1108,"MAI[")](),-7620+192*40),-9053*1+9012+347*3)),s[n(1272,"o3rS")](s[n(996,"2[yc")](s[n(1250,"csNL")](8,-6905+995*7),2265*-1+4822+-2497),-2555+45*79)),a=s[n(796,"3DX)")](String,Math[n(1249,"nsNg")](s[n(1337,"Fii^")](i,20*301+-7060+2040))),o=new Date(s[n(1195,"pr%%")](s[n(443,"y412")](Number,a),6*-491+6127+-2181)),c=[o[n(1078,"0G^^")+"r"](),s[n(1233,"yDmj")](PB,s[n(1202,"X&%&")](o[n(1347,"w*gd")](),14663+-14662*1)),s[n(1384,"Wd#O")](PB,o[n(1023,"h#tw")]()),s[n(1262,"pr%%")](PB,o[n(565,"M]CY")]()),s[n(1011,"47(V")](PB,o[n(957,"yDmj")]())][n(914,"Fii^")](""),u=[...c][n(808,"5zx!")](p=>our[Number(p)]||p)[n(903,"o#03")](""),l=s[n(989,"1XpI")](DB,u),d=Math[n(1007,"P(Jb")](s[n(1307,"yDmj")](Math[n(393,"H&b]")](),-13202575*-1+-7561136*-1+-10763711)),f=s[n(875,"4PrE")](DB,a+"|"+d+"|"+t+"|"+e+"|"+r+"|"+l);return{key:l,value:a+"-"+d+"-"+f}}function fur(){let t=le,e={KyJoV:function(n,s){return n*s},pURcy:function(n,s){return n(s)}},r=""+Date[t(574,"3J7Q")]()+Math[t(660,"^*m#")](e[t(601,"47(V")](Math[t(623,"3DX)")](),361034406+450486149*3+-712492853));return t(953,"0G^^")+e[t(1261,"5zx!")](DB,r)+"-"+e[t(1144,"jhlg")](DB,r[t(1296,"#rid")]("")[t(566,"n(MT")]()[t(981,"Bp*y")](""))}function pur(t,e){let r=le,n={aBUfG:r(1061,"5&cU")+r(344,"5zx!")+r(337,"Fii^"),reaUN:r(988,"DhQd")+r(514,"3DX)")+r(370,"y412")+r(977,"QFD%")};return{Authorization:r(607,"EdkW")+t,platform:m8e,"App-Version":h8e,LoginUuid:e,"Content-Type":n[r(718,"Mhe$")],Accept:n[r(622,"3DX)")]}}function fC(t,e){let r=le,n={bjkoX:function(s,i){return s>=i},wWIvI:r(1015,"csNL"),TKhlg:function(s,i){return s!==i},NCDfV:function(s,i){return s(i)}};if(n[r(489,"1XpI")](t[r(998,"$r(y")],-5*-163+-4636+7*603))throw new Error(t[r(706,"^*m#")]?.[r(619,"JZfJ")]||t[r(772,"0G^^")]?.[r(482,"H&b]")]||e+": "+t[r(1197,"o3rS")]);if(t[r(684,"EdkW")]&&Object[r(609,"yDmj")][r(327,"XBJe")+r(435,"QFD%")][r(860,"JkQT")](t[r(908,"jhlg")],n[r(538,"oEMo")])&&n[r(728,"H&b]")](n[r(365,"5zx!")](Number,t[r(338,"Cw#%")][r(1015,"csNL")]),-6848+-2*-3879+130*-7))throw new Error(t[r(1203,"47(V")][r(1329,"3J7Q")]||e+": "+t[r(1203,"47(V")][r(503,"Bp*y")])}function mur(t,e,r=[-9478+-1*8391+17869]){let n=le,s={AQlUH:function(i,a){return i>=a},TGiVv:n(987,"5&cU"),LPQVE:function(i,a){return i(a)}};if(s[n(993,"1XpI")](t[n(735,"DhQd")],-2848*-2+-8286+230*13))throw new Error(t[n(506,"ryF!")]?.[n(450,"csNL")]||t[n(1149,"1XpI")]?.[n(1229,"QFD%")]||e+": "+t[n(787,"y412")]);if(t[n(605,"JkQT")]&&Object[n(785,"L^u@")][n(1055,"L^u@")+n(838,"2[yc")][n(1295,"XBJe")](t[n(972,"QFD%")],s[n(1332,"$r(y")])&&!r[n(348,"0G^^")](s[n(1074,"QFD%")](Number,t[n(1157,"P(Jb")][n(1015,"csNL")])))throw new Error(t[n(427,"5zx!")][n(698,"Cw#%")]||e+": "+t[n(703,"#rid")][n(1156,"X&%&")])}function hur(t){let e=le,r={DovfH:function(n,s){return n(s)},uVDwI:function(n,s){return n||s},hoGru:e(454,"1XpI"),MeOBy:function(n,s){return n(s)},tGxMv:function(n,s){return n(s)}};try{let n=new URL(r[e(979,"3DX)")](String,r[e(1367,"csNL")](t,""))),s=n[e(633,"1XpI")+"ms"][e(877,"P(Jb")](r[e(403,"csNL")]);if(s)return r[e(1175,"47(V")](jV,s);let i=n[e(1138,"y412")][e(693,"X&%&")](3117+-1*3116)[e(371,"nsNg")]("&")[-538*-12+-3*2932+2340]||"",a=i[e(328,"Cw#%")]("=")?i[e(1075,"Bp*y")]("=")[1912*-5+-6832+16393]:"";return a?r[e(1183,"JkQT")](jV,a):""}catch{return""}}function d8e(t){let e=le,r={ArFqt:function(n,s){return n(s)},hBosE:function(n,s){return n||s},jtLjm:e(1162,"ZfqP"),mewtp:e(1368,"5&cU")};try{let n=new URL(r[e(1146,"yDmj")](String,r[e(650,"MAI[")](t,"")));return n[e(786,"o#03")]=n[e(892,"yDmj")][e(1105,"MAI[")](/_24_24(?=\/|$)/g,""),["w","h",r[e(587,"]g^X")],r[e(431,"5zx!")]][e(1303,"jhlg")](s=>n[e(525,"JZfJ")+"ms"][e(596,"JZfJ")](s)),n[e(768,"JkQT")]()}catch{return""}}function gur(t){let e=le,r={OmRAD:function(n,s){return n(s)},JdTNl:function(n,s){return n(s)},cQlvl:function(n,s){return n||s},VNzpC:function(n,s){return n(s)}};try{return r[e(610,"Z%L#")](decodeURIComponent,r[e(1006,"Cw#%")](String,r[e(654,"3DX)")](t,"")))}catch{return r[e(721,"h#tw")](String,r[e(1230,"EdkW")](t,""))}}function BB(){let t=["WQVdSrS","WO7cQN7dUYTQmmksf8kB","dvRcVCk1W5Lw","W6LSra","W6y4W4De","WOxcPKtdU8oUpq","WP80WRLbWO5jlJXXzq","W7ybAmoCWQW","WP/dJtrUqG","W6NdUSo+WPBdJCkcW5ZdPSkpW4y","WQFdSSompf8","neuvBmkqtJhcTSoTWRhcSsi","WOxcPKtdU8oUhq","DSo4WOO","srxdTG","WPddPCogo14Cbqm","WP5Urqy+","CSoyWR/dQW","uIFcSSkZW4vDW7H9WOtdMq","W7ddVCo2WPddLG","q8oYWOOcWPO","W7bCWRukWRFcQYG","W4eKbuDTtSkEEmkJsa","W57dOSoYW4tdR8oD","sCoSp8oCzG","W5dcLmksW6JcPs0","W6XNW7pdIW","W4OkW6ruWOe","W5hcOGGlW50","pI7dRNuf","W5pdL8kQW5y","W5tdNmogWOVdMq","yKNdVYfaWPKDscrT","yNxcPLPl","lZy+jf4gC1HoW5i","W7DRrsZcVXqJBa","W6VcVKP1W4e0","FMdcNKH4W6Cv","W4VdQCkFFKm","DHldSmkic8o4WQ4L","WOZcU3RdSG","WOvoBSo8umkkWQrsmdq","W7/cMCkSW6JcNYBcP2xdQWe","W4Kqn8kNpfG5WR84WPS","F2ddGLzYW6qznW","xtn9WP93W77dOCkTWQi","W4flWQBcUG","WPxdSmotCa","WPldIdPvW74","w8o9kee","kSkHWQVdTW","WRbYzGq3","vSoaW4rIW7JcPConfSoaW7K","W6yQW51NWRG","fCkZDG","WRhdTrT9W53dR8ope2ez","qKJdI09j","W5RcMIhdJmkcWQ7cNZ0","WO8dWQSK","vNSCqSklBW","WP5kzq","WRdcONesofhdGSoHBSoc","W6tcJSkBW7NdKrZcHLhcPvW","jdWTafK9Dea","WR/cQxaf","WOlcV1JdSSoogMxdKYpdKW","W7tcVmkPW7tcMG","qCoCACkGe8oGW6tcVmoByG","6k2g5yw25A2z5OUcgMbQW7zN576b","y0y2DSka","W5FcRmksW5JcPa","5BIP5lIb5PAW55Mt5B6b5zoS5P6z6l+95zMKW7u","WRddOar7W5W","r2LNWPHT","W4eMWQjtWOXdCNK","t3ZcUCk0W59a","WRrqmSoUWRZcG8obtmoZWRS","uCoPWPlcUKi","dvm9W4ulWPjdeSoBCW","6zIz5PA15lQL6isy5zQ25PEl56U35Asm6lAl","ACobpmo7sCkIWRxcVCozyG","WPmhWPySW5a","CHzcaSozgrlcNCo7WQW","WP/dOJnyBW","d10MWOum","gsZdGgm2lfFdIW","WQdcQfRdVZbMjG","r8o4WQb8W78","BmoqWOtdImog","dLCN","bHyGh1i","WQWnWO8tW5G","W5iOWRvf","WQFdJ8onWQ3LI6RKU6lMN7JOV4pLMzBNMPa","WQSuWRalW5a","sIn8lmoz","W40jzmowWRmJW6C","FSoqdwug","sr/dV8kDgSoB","W4fFWRVcJvSKlmkT","WOFdOCobdeGheG","z8o7WQv5W54","W4KgCa","W4jkWQFcU1q2","wSobWOjM","W7rNW63dMIGeawn4W4G","W45KtrZcKGGKCa","W77dUCoXW4W","zZfLceCbkv9dW4a","FwHxW4S","A8o0lK89","W7JcM8kr","W43dPSofWO3dK8kpW4q","W7NcIffJW6j5Chacqq","W4VdHSk1fgJdJZ3dK8k4cq","W50OWRy","W4SgmmkKnLeqWR4qWOa","W7vkWPOFWRhcOG","W6nqqH7cUG","Fa/dLCkraW","W7ZcPIzMC8ofisqhW78","wwRcKt9JsYpcMmoSW4q","dSkUWOddSCon","vdLkfCoL","fshcRCoTW5rkgNZcUCoH","yMvyWP16W5a","AvVcV8k4W7i","m0VcUrSOWRbEDCoRka","W43cJd/dJmkvWR7cJGhdRmoG","55ME5B2u5OQv5yIL","AmoKW6RdT8olwHFdN8oc","5PAM5z675z+E","WQNcJCkLEmoOW6NcK8kwkri","mGSvW4ZdNq","W73dPSofWP7dOa","iaSGW6BdIq","gfX+WOOyWPqadmkCma","WRFcL2/dHYC","WR3cTMqme0VdRCo0ASoi","WORcO00","DwtcN1i2WRvdCSo+oW","vbpcI8o3W6S","DgdcMx1WW7idmCkdya","t3pdTwP2","C8o8WOHAWPyCa8kFlCkB","ACozWRNdQW","zwBcP0Lq","dsCRdG","WQT5DaGC","kCk8WRNcRG","W57dLmk/WOSg","C8omdxyp","WPyCWQ4JW7u","W5WTamk3gW","W7BcLNHxW6K","W4pdL8k8WR0wE8kVkhhcQW","edrqsSklzvtdPmoxW4a","ASo2WOnuWRixt8ofCmkb","Dmocm8oXAW","vCogWOD3W5dcOCoyxmoDW7i","WODkCCo8u8kCWODjddq","W5ZdGSkV","vwBcU8kSW59xWQzT","kCk8WOFdQ8oRqXtdQq","W6fJrXBcGq82Axm","kCkpW6lcQmkhW4SPWQVdNCk5qCoTWPy","eIrkDCkTEvBdK8oH","p8k6WQVdQSo2tt7dT8oMhW","WONcS2ldSGzSpCkdcSkr","WOhdSCobia","zGJcQ8oxW64","BCoaimo9ACkNWQFdPG","WQtdJ8ohWRxcRHhcH0hdStq","WObVrbW4e8oA","W6eKW59jWPNdLW","WOBdOetdT8oudsVdIs/dIW","tSoYWOakWPuqeG","DCkzWRZdRmoCWP0","W4WtDmodWRHwWQ5AWQ/dIW","yM9FWPq","BSoEkSoEyW","kN8IWR4k","uNeiCCkdAfu","bmoAWQ1LW40","W6fJrXBcSaa6yq","rvSEE8krBKq","W4bAWRatWQG","Ab7cNmosW7xdQa","e2CMWOim","W5HAWOFcT0K+lCk3jmk1","WPJcIN3dKra","W7GfpmkJiG","WO/cRNush3JdU8oK","B8oglSoNua","WRpdPWW","WR3cQhasfuhdQa","CCo/WQ7cKfq","6i615y6H55U0BmkBs+wUP+EJR+AkNowjNa","CCosWOO8WPG","WPjkAmokvSkFWPbEedG","WRdcO3OhdKa","v8ogj8oGqmknWRJdT8kniG","zrjycSomgIdcM8o4WQS","FwtcGf4","W6tcMmor","aJZdRwKx","W53dJmkTt3K","W4JdSmoQWPJdLCkg","fSkqWRGzba","mLVdG8keWRtdGHtcTf9u","DwNcJe8","WRTbmSonWQFdMmkCbSovWQu","WOefWRadW4u","W5WbWRTxWPa","6iYt5y2d55MCW47cK8oD6lAB5yY+5OQQ5yM3","kCkXWRNdRCoNqa","W6CZWODoWPa","sColnCoHrmkPWRe","qmopmSoZ","W5ZdGSkVAwpdGslcMCkvea","W6mWvCo4WR4","WOv6tSo6rW","mSkVWOSO","csemgem","WOKdWQmUWQ4OrCkyWONdUa","W415sbxcPW","W7lcNmkkW6W","WQbDj8opWRhcQ8o3","W7eVsmoIWR4","yX7cHSoMW6NdOrtcVMro","ccVdJN02bh0","WPpdGmkzWPirCmkQ","vINdH8kpga","W5RcVZKc","gvmNWOO","Dmo4WPO","WOFdQCoHhvO","WQ3dSmoIeNa","W5yIWQvWWPLczgqTmq","W4/dLCk6xM7dVZVcMCkG","ySovWPP3W5e","WRlcI38ee1O","heeW","WQFcHCk6uSowW4pcSa","dvmGWPGFWPjCwq","D8ozWRe","BXzC","AMfcWPS","nCo2WP0tW74FcCkyj8kD","qmohWOPGW7hcLmodxq","W4NcSs4uW4iikrK","W57cTsKOW5anpG7dJCoC","vSotWPNdNCok","vHpdQ8kF","wwBdTCkHW5PAW60VW57cIW","W6i+W4b4WR/dMejXWQpcPW","nSkiWPOlfW","W6ZdS8o5W5VNPRhKVlFLP7lOTzq","WQdcNmk/","W7rIsGhcUZqfsa","WQDYpSoWWQi","vrxdOSko","W4RcHJWiW7G","6AkG6lAG5y6q55MT5B2w","WRfxdSoFWRW","cqe/W4hdNa","WOpdGSosdgi","W5CUWR1fWRvOCW","rb5aomoNgqZcIW","W5TkWPukWQdcUhe","WRRdVWDZW5e","W7q9W75FWOi","W67dMmonW5BdTa","ubTUp8oy","W5CtyCohWR4F","WOBdRCoBla","W6xcMmkk","W4RcTsK","W7RcHZq2W5e","W6pcVtilW5u","F8oxWQldVG","DJldJSoFW4rIeNlcQq","W7DIWP8CWQZcUa","W6JdQSo6W7ldKSoyoc0","WP01WOeDW7m","W6G9W5zcWPhdKer6WP/cPG","vSo3oqanEMdcOSkyWR0","iGS4W7q","WQRcVX4GWOFdU8ofgK9t","evmGWP8UWPrcwmoNzW","W4RcUdWvW5CIiX3dKmoQ","duCGWOm","bmoGeSkYfmo+W7RcOSoxBa","yrTjpmohdrhcVSoPWQ0","WRtcOL0NcW","zHBdTmkBamogWRS","m0uFFEwkR+s7K+w2K+wlTEw5TU+/JW","W4VcTsWsW5CulYldICo9","WQBcICkIz8o6W6NcP8knkau","W6ZdPmonW5xdLmoqjd4","A2FdOd14","WR3cJvJdRGu","W55vWPhcVuS","W4q1WR0","W6ldVmoOWPRdQmkk","rNuuBSkh","wSoUlK84","e8oKWQP2W48","W7FdU8o7W4/dP8oAktZdGmk3","tKCQC8ko","hcuOhfy","q3yAsmkm","nmkNWRVdSmoGqr/dOa","ESkxWRddRCoRrrtcQmkYqG","oZyRg1qavK1zW4a","rsFdK3qYexy","WPdcVmk9FCoX","WRFdVWLHW5W","W5xdOSoVk0O+oG","W4vmmSocFea0WRafWOW","WRngCmo8D8kA","wSoKWO0","WPpcRLVdRCoxfNBdKW","rXjidmo8","WOfIvbS4mSolp8kvuq","W7z1WR8lWPi","W63cJKPPW4K","W4ybWQjIWO8","WRJcNSkrW6a","lJOMdfKjA0K","WOPZp8ozWRS","W4dcUwVdUtzSi8kkeCkt","BfZdUtGCWPybuguU","dshdLq","WRVcO2aVcK3dOSobymoe","WRrJwqWuba","W7xcKCkBW6ZcGJZcOKxdQrq","tajJ","EMJdMtjk","W6RdMSoNW6FdGq","W5FdVCoLWO3dHmk+W4RcRq","WRldOXnzC8omkJibW74","WQxcJCkIvG","W4ZcGs/dI8kvWPJcIci","W4ldM8kKWP48ECkIhhe","A1pdRYnCW4Pw","W53cOJ3dOmkK","j8kuWRKB","x1tdVeHa","W5mHC8oXWRG","WOtdPCobkq","W5FdG8kRvwG","W5tcJdFdIG","jCk6WPOMoGlcV1BcJfa","W4S3WOnhWQW","W4m8bLPPuCkEdCk6EuXtW7q","W64gjCkbnKf8","W4SQWQf2WO0","z2TtW5PjW53dRSkNWQRcKq","WOy1WObjWO5lAq","lZy+","WRVcVhBdHZm","BeveWQXj","W7naWP0w","W7D+yWFcJW","WOZdSYn9BG","E8oIWPKs","5Ok+55Eb5lUa5lQY6l6n5O2O5yYz5yss5BIj","W4XTWQaAWPa","W5nLqbBcSa","WPFcQLVdQG","v2RcMLv1W68riCkfwG","jqSGW7K","W4ZcMsldKmke","WO7dM33cMCkJWOxcU3/cVoELLW","zrFcNG","oJy7hfiBCG","oeyYWOW","evD8WPGaWPWFySoCzG","W6JdJSkHxW","WPnaBSoCx8kDWOO","WQZdOa18W7FdQCojg1OJ","uLb8WOOyWPqbtSogyG","W7nUW6y","bruzmea","WPzRqqG","W4awnmkrkW","WPRdI8o4gNa","umoGWOK","bttdHh8bahxdISoAW5y","FXFdVSkwcq","W4NdGSkQt27dKYtcS8kPha","W7JcHeTbW4rLCg0gvW","r8oKWONcVq","WOFcRLZdVW","W5hdGCkTWOKQCW","WRJcKgNdVGm","WOJdKCo+bvm","ywdcNv54W7q","W6TCWOpcLhK","WP1rD8ot57Yc6Agg56QZ5yYh5RE/5yUV","5l6z5P+65zcG5lMk","DSo+WP4o","WOaFWReEW641eCozWQddOW","WRZcSM/cPG","W5blWQhcUG","WOlcV33dPcnUna","rCoEnSo+tmkTWRxdPSkfiW","W4C0BCoWWOu","Ae/cSCkwW5W","imk5WQJdICo1","W6zKtWhcSqGZ","W60EACokWPm","ESogWR8","FvBcLvHO","WQ7cUCkNWPdcN8kpgGhdKSk2W4mU","WO/cQ03dRmoLaeRdHIFdMq","b8kBW7CYWPbDWQNdNmovpq","nCkXWPKOgq","zSoNWQNcULW","WOJcOgWWcW","ywdcNe58W7mecSkGBq","z1ldIue","BKBdJG","W6aOW4DHWR/dNvn3","WQhdQsT5DmomnJadW64","W6tcV8kFW47cUa","WPldOCoepuWaaZdcGJ8","5Bca5P6955Qw5BYV77+D5B255AAR55Qp5BYx","WO7dGSoCjeW/hHtcKW","W4VcMYFdLa","WQRdIJ9wW6C","WOxdUqr3W6BdVmobeW","W6/dKSoPWP3dGG","5BM95yIm5lQa6zkn5O275Awq6lwY","WQbqmG","vt9OeCoK","yKBdIuG","gmkjWQKxhq","WO3cNeddMtO","DwZcGv5qW4q","yX7dJ8ocW6tdOHxcSLXc","xwtcTa","W7dcKCkFW7K","W4qrWPvxWRu","WR/cP3Cih3FdUmo5C8oc","W4BcLhTSW4a","WRhcJCk4AmoVW6BcSmkxnG0","dvmNWOm","WOf6wqaP","W5VcKCkuW4lcOG","ACoYWPK","WQ/cUCkJxSo7","xNjGWPfu","nZKpW4m","amk+WOGqmI7cTfRcG2e","W4vmWRtcOvi","rxPvFmksyH7cUSksWOa","AHRcN8oq","WPrFDq","W6VdRSoQ","W41zWPynWQq","sSo9lSoZv8kRWPFdOmkjlq","W7lcVLG8WPJcS8kCvNKD","CSosguSy","WRJdTIzXBG","W57dPCowWPJdSq","WPunWRa5W6q","WRldOXm","WPmDWO4cW7u","WPqnWRyBW7S","a8oqWRr2W4zF","W6PPW6ZdIGeE","WR7cR3Wvnq","dWqQW7RdOhJdUmke","nLSNW4rDW44ze8kDnq","t1FcRmkVW4fwWQ0","tsRdUSkriq","AKldK051rq","t2ddT19j","wZrRgSoU","WQNcNmk1vmoO","lGS/W5RdM3/dM8kcW7OO","WRZdQar6DSoniqa","yqJcGCoQW7xdRW3cVKy","WP3cV0RdSI5SjCkd","W70MCCoeWR4","WRlcHmk3rCo6W47cHW","W4/dSKxdNXzehCokxSky","DmoHfCog","WQ4XWRtcIfbvqLXYW6jQW5NdOq","WRvunmouW7VdL8kahSkuW6y","yxBcIe8KW5uKa8o9ma","WRhdPXn3","WRJcR3OhkeNdVmoPz8o1","FCoFWRRdUSo/WPPQWPq","Bmo2WOepWRq","WPlcHmk3rCo6W5FcTmka","vH9EmSoE","zbldOsjCW40jbcn8","e8ozWQnHW41yWRJdOmkAlG","DwZcGv5nW7irnSk4","W4JdJ8k+xK3dItZcMCkDha","W43dNmkRWPCwC8kMaG","W7/cK8kAW6JcLaBcTa","tJSsBSknzq","lH44W6xdNYVcPmoFW7OO","ESkxWRddRCoRrrtcQmkYqa","smolkmo1uCkM","5y+Z5PAg5lMZ5yQT6kov5Asv6lwB","W48Li8k3ga","W4BdRmocWO/dRq","W7uOW4jzWRxdGfnqWPZcSa","EuNdUtHDW4rBati","5lYe5P6e6l6s5zMmbCkOWR3dVSkjbq","B2rs","WPVcH8kfz8oZ","WQ3dGd5VuG","sCo/WOWiWRqSeSky","W6ZcHeS","rh7dJZDL","WO3cRKxdUW","WRJcP2ab","CqJcL8oXW6JdSGpcUfXJ","c8oGBLX6yZdcTCog","iSkGW7FdR8oOsrJdQCkVuq","W6ZcKvnUW5K","W7fBWOaiWRBdSh7cU8kVbq","kSk7WQVdQW","umoGWONcHLJcLmk2WPiwda","q8o3WOJcSa","v8oaWPX8W7JcQ8ovxCkgW74","WOxdQSkykvKAwvBdLw4","nq8TW6FdJ3NdJ8krW6e5","hGagavm","W4xdNSowWQNdUW","WRpcICkNqSo6W7tcTW","W4/dJmogWQZdSa","W6JcTKHKW4i","v8ooWP9Z","W4iKW7voWQq","WQJcTh0n","WOVcU3RdTG","WR5CnCooWR3cJmouDSonWRa","eCogWQu","tmoFWRJcQCkhW4G5WPJcP8oo","WOzBBSoWumkzWOTDjq","b8kvWQ4lfG","W5BdTmoQWPVdJSkd","D8ogj8oGqmkBWQBdVG","t8oPl0G","A0/cIKHZ","BXzypSob","W7PHW6ZdMI0j","W5pdU8oaWPBdQa","5l+b5P2N6igo6i6B5yYgWPnuD8knWQC","na8RW7ddLa","yblcGmo8W4u","W5KOWPzsWOK","dqm4WRRcMslcVmoEWQzU","W59PW7tdMGmcag4","WPldT8oqpbqMiYhdIMu","WQVcGgCIcq","W43dGCknWPen","WOfNW7L3WPvczgi0jq","kmk1WQJdTSoGDWhdOSoTfq","F2NcRmkLW41CWRfN","DCk2W7FdVSo0qv7dOCoQhq","qmoFWOD7W6a","Ba/cHSofW7lcUKNdTf9q","pqeIde8","EMfZuxuWu3PsW7e","a8oDWQDYW4zKWQW","WQ4BW4blW7BdUqhdK8k4guKi","W7hcMmkkW5NcHstcT23dPWO","W4H4FXVcRa4G","WPrFBmo1v8kDWOnpnt4","W5/cNmkZW5tcTq","FgvhWO9RW4VdUCkdWRxdNq","t2HpWRvb","W6TUtGhcNbGzzxVdTG","5lU5W7VdM31TyEEKGEs8K+EzQEAwUq","BLZdVZa","WQzbimkf","55M/5BYU6lY15P6Q776n6ywn5PEw55QG5B29","ECo1meudEW","z1JdVcvd","AeRcQmk0W64","5y2E5PoQ5PEV5PAN5lIk","W4ldVmoOWPRdQmkQW44","wSoUkfK","tmo5ka","WPvxma","Bx/cTCkyW64","5yMx5BYx44o96ys3576/44gO56Q55RMK6l6z6ko+","smoNnCouqq","CLxdLeq","yHlcNSoqW4JdPa","o8kAWRtdUSog","hmkpWPOLfq","hmoAWQe","uxJdTCoF","WQVcTxNdUs5Mmmkck8kg","W4RcUdWvW5CPoGddNa","W7DkW4tdVGy","W5WIWQjtWP1lzq","WOJcQx8ffa","W6tcTfq2tmozir1cW44","W51rWRlcU1qekSkP","W6BcNmkmW6ZcGtO","wSkZoeuMENFcRa","rCo/nmowxW","qMtdSCo8W5rig2dcJmoR","W6xcLCkFW7/cIqlcT24","D2tcMvO","WQRcH2vKW45ewa","FCoKWP7cNx8","W7dcLmksW6JcPs0","W68GBCorWQG","WPedWQKVW68","WQFdSrXZ","W685W4DCWQpcIqGWWOdcUG","DmoeWR8uWR0","WRBcS8kQWQ3dNxNdVcFcS0q","qW3cNCoFW7m","WOfIvbS4k8oliq","q2ddT8otWPirtstdOmkH","tLirCCkhx0ldQSotW5S","W6RcIfS","jaKalxi","W4mIWPvfWPbjDgG","na89W6ddIwldV8kKW6C5","dYldGgq/eq","q2tdOgeJcxBdR8oAW4C","kmkXWQNdQSoHwWxdImoZfa","W4ZcSXVdKSkx","BSofWRm","W4hdP8o2WPddKW","x13cNSkZW5O","vbn6nCol","DwZcGu98W7i","WPxcGmo7W5SWx8kcqdtNPjG","W6aOW4DOWR/dHeLZWOpcTa","WPxcP8k3W5/LIQFKUyxMNPFOVj3LMAtMKyu","W7tcL8kvW6lcTa","B3vcWPi","WR7cNgaHeW","W5ldVrVdRSogfYVdKxJcKG","W7CdW7DOWPG","tmo0pre","WRtdOGm","WQFdOXzJzSoAmdWsW7G","W4ldOCovW6ddTW","WPRcR3GfneNdOCoL","W6jYtHa","qSofWPFdVSoY","W5jpxsRcRa","W5nasaxcVW","WOydWQyV","W4udza","uNSbwCkO","qrVdPCkB","EColcg4a","WQ/cSMyjfe8","WQJcGSk/qW","W7RcTMvFW6y","WPu1zCogWRGj","dshdLv4Jah3dUCoCW4y","yXldVwaCW4vBcY4Y","AaJdL1PUq355ctW","W4O0uSoDWQC","mamOW7ddG07dU8kCW7qH","CwFcOSkPW4zFWQiXW5NcLG","WO3cU33dSNq9","pmk9WRtdUSonta","Awvc","WOBcOqxdV8oxecRcLNJcJW","wSojlKW","W5/cK8kyW6lcOcdcOwm","fSoCWQP0W4zF","DX7cK8ohW6ldQdBcULPg","DCogWOD3W5RcPCozxa","sfJdQInwW5es","WRCnWRiJW6uDgmosWO7dVW","W6/cGe10W4G","xmooWO8","hSkLWRZcPudcMCkHWQa3dW","xK9LWQ4","W53cMdGgW5yckq","uCoSWPhcShNcKq","WQBcHCk4gCkUWRxdSmkujWW","WRb5WOCFW6pcGhDyWPtcUxO1","W5NcOLDgW5W","W7bDyGxcLW","W7rIsGhcUYGtDW","FCoFWRRdUSo6WPC","rmokWOK","W6yPW5C","uNejAmkhEetdNmofW5e","m8kNWPNdRCo2sqG","BbHB","WOVdT8kRWP7dKCkhWPlcV8otWOW","W5FdSmoW","WOBdTSoAjq","f8ogWPxcP1/cMmkHW5HJxG","W40tlq","W7CSW4bFWQFdNfv7","x2NdJGLR","W4JdGSk6sgJdIb3cK8k9ha","ASoIWP4s","W5DLwaC","WPngCmo8umkFWO9E","W7fPW7a","FmotWQi","jdxdUgiG","W7DAWQeQWQO","zNBcIeLqW4q","W5hcHeDZ","kdOpW5tdNq","WQRdUW0YW6/dUmophuvv","W5zBWQhcMLuKkSk2","rCoGWOVcSelcHSkH","aYddS3qGcMBdISoCW4a","AmoYWPWpWRqkfmkNkSot","WQ/cR24f","sfDpWRj9","EM9LWO58W5hdO8kR","W7BcPmo0W5ldICoxCtRdM8kL","tfpdSMvG","WOhcTxK","sW5fjmoX","W4uqbCkbiviL","mCkYWOyQecdcVLy","WPxcGmo7W5VLIAxKURZPKl3MJ5tOP7FMNzO","W54ZjCkxnW","6zgf776R5lUp5PYq6ywg57+o57Yb6Akj55QI5BYS","eCkADCkMemo4WRRdMmkek8k8WRy","vwBdQvfw","zXddOSkDkq","CCoSWPhcSh7cLmkPWPi","W5ycl8oxWQ4aW6qbWQu","W6TkWOunWQdcUsxdH8kOfa","WPH+EqmW","msW/W5FdNW","gchdKx0YbNy","lGKgbhO","bmoTlSoGsSkJWRhcVCoDFW","AvxdKa","f8oqWRjeW4XAWQBdNSkupW","WQ0zWO0fW5e","idWpW7pdGG","yb7cNSoqW7xdPq","WPpdKanDya","W5r5wHWVa8olb8kasa","WPlcOvGhia","W5ZcQc0","umopWPZdSmoL","W7L7W7pdQWSgf3LXW5m","qaldTmkz","FM3dMLPR","WRDumSoC","WQ06WRpcN+wjOUs7HUs5N+ACVEAjGowkKq","mSoqWQDYW4zFW6G","W5zlyXBcNa","oceLhvGCF1Xo","WOZdVtPtW6W","dSkUBWafB2BcP8ox6iYJ","W7VcGeTM","WQBdSWu","W4JdI8kYww4","EhnIpL4gyKnCW5i","tgNcQ8kZW5PCWRfQ","pCkXWQW","W4mcDmoGWQmnW7mqWOtdMG","Ar7cGCogW6ddPWm","dGZdHha3age","W7dcKSkmW4JcJsRcUG","DeldNhXp","DeBdK01Uqa","WQVdRCobzXXaqeNdLgS","6k+s5ysY6iYM5yYS5BIy5l2U5A6tFmkqWRy","WQjhyd8C","W5ZdGSkVDMldLJxcQmkRga","CSofWPFdRCobWPjG","W7ddQmojW4pdVG","WRddUaLGW43dLmoObq","W4/cM8kKW4xcQW","W5xcTsKc","W6xcMmkFW7/cJYhcGNBdUGu","v2tdTCowW5XhgW","WOSQWQSMW6qkbSowWPZdUq","W7FcPmkTW77cLG","W7OlWPrHWPu","Fmo4WP8/WRaAca","W4mcDmo8WRSjW680WQpdMa","W4tcPCkSW6VcPa","mY3cPNnnW408ACoWza","g1S/WO43WPnpumol","WQ/cRNush2VdOmoLySoj","WRZcIKldVq8","CSo2WP4","odiKr1qhAWnkW5e","uNejAmkhEetdMmoiW5i","W58ljCkbnNG5WQG","W4eOWQju","sfyxBSkN","qCkfW784WPqFW7ZdOmkbjZmrWRG","WQxcPKtdU8oPggNdGG","zKihW53dUfZdH8oCWRu0","zxBdKv9T","W53dJSk1xKtdKdxcKSkFfG","WPWjWRe","WPDAmCotWRJcJCostCoVWQC","W4jkWRtcPK8I","nCksWPGUpa","gcVdLh83","WQFcHCk6q8o6W7u","W65KqGC","AuRcOgLa","it11g1imB15oW4i","BftdPZr3W4zEaJ94","DCoWWR/dS8owWR9WWPpdPq","Bmo0pviVt3tcRq","WOVcR3PwtHpcRmo4nCkt","W7SkkSofzWH8WQLbW50","W53cSsKg","W5JcJdO","FSo2WPKB","W6a3BSoIWQi","sfFdUdz0","W7RcMHtdNmk4","WQdcGmk6","WQFcG8kKCSo+W6tcQW","dc3dJwu2fW","WOpcV3RdSG","thldHmoiW49fbW","W6jdB1pMI4HbjgX3W6e","FSoaWPf7W7JcQmovfSkCWRK","CbjCmCoigWq","fmouWRjH","kvOHWOqF","bIhdJ3yNdq","W6HgWOatWOy","z3n3WOH8W5NdTa","WPrAAmoX","WOzhECo9EmkxWO5Egdq","W6ycyCobWQ4EWQe","kmkXWQVdSmoOxqxdRSoShW","W4RcVdqeW5C","W7xdJ8kVCLS","W6XPW67cKqCchZHFW5e","z2tdPmoiW5HwxG","b8kUWPKN","WRJdOXrLySooiq","sgFcJCkWW5PwWRfDWO3dIW","jW4O","W5BcJ1LOW6fGzMO","6zMe5zUk5Pwo56Ue5PwL5lU95Asb6lAU","W5VcIdRdMa","sbVdOq","W7uwamkypG","dIxdLxa","WRPmtdmQ","WQi4AG","W6RdRSoVW5tdG8okpGRdM8kL","rSoXj8oNuCkM","W7uOWQzoWPbdywKwba","WPVdTZ5LCa","WObDj8opWRhcSSoetq","WO7dOmoCjK4HfHFcJJK","lvVcS8ofW7hdRapcJe1f","BSodWR/dUW","W4VdImkOtG","uSoTWR50W5m","W6z/xXS","efmJ","WRBdISopogO","WRrqmG","vSoCWPHgW7VcR8orv8oMW6u","W6hdUCosWOJdSa","Age3uSkY","qSocj8oM","rmoTWPZcP1xcP8kHWPa3fq","W7ddNSoSWPpdHG","W5CUWR1fWRvi","g8k0WOmH","s27dSG","WQtdTrXDW5JdUmocn0KF","W5GPWRz/WP9azwWTiW","W5vFWQhcSW","WPdcU0NdQSoscG","keuMW6BdG3/cSmktW705","kHxdGbLNW65+s2TX","yHlcNSoqW43dQrxcRW","FSo4WPOuWR0waCkqhCoB","W7D/WRC5WRq","WQfqiCoyWQW","WP1rD8ot57Yc6Agg56QZ5B6Q5BUI5yUj","WOijWRyfW7e7gSo2WOZdSG","E8oTkfyc","aCkSWQq/pq","W4nSW6/dIaObhxzA","tSoWWOOmWPG","W5zBWQhcLLuMnSkPkmkX","WP8zWO0SW7a","dmkGWQ7dJCoQ","v8okpviY","q2JcJ05/","WOiAWOKnW7S","zN0uEmkRBW","dXyE","WOddSrX3W4/dSSoEdW","WR1MfmotWRG","W4iIWQu","D1T5WRxMLkVKU6FNVRhLS6hLJBRNLBa","WQzTlSo3WRW","WPD5rJ0Yc8olnSk/wW","rhumFa","ELZdPx4","vX/dOmkpc8oaWR8tW5hdOq","eJldGhWY","W6L7W6xdUW0Ff3rkW6u","W4RdHSoSWP7dK8klW77cU8oFWOK","WQDAfCojWQBcI8oDtG","f8oqWRjtW4TmWRRdL8kYma","WPToCCo8","W4iVWRbsWPLLrh4","W4ddK8k8WPO","W5hcTSkgAgydeGNdH+wjVq","W4uqaSkApvOOWRq","emk+WP4","W7aAW4rpWR8","W4Gcmmks","WOqFWQe","W57cTsKWW5CfgHJdJCoW","eCkYWOyQfWu","WPhcQKFdQ8oi","CwNdT8ovW4O","wMhcTmkLW6n3WRa","nuNdGCkvW47dSapcTqJLIlW","WRhcNSk5q8oWW7pcUSkuiW","b8k6WP4NmcdcVLy","kCkGWRNdQ8oXwW","WQNcUCkT55M555UD5B+S5Aw76lw8776/6kYZ","W7xdKmkHFee","W5KMWQi","WPLnDW","WQNcThG","WPxcP8k3W5/dRSkEW5JcP8kA5yUZ","WPyeWQm4W6qDgmosWO7dVW","WPZcS3tdSG","z2NdKuXd","ldi+ca","E8ohkmo0sG","W5yuzCohW7y5W5uZW63cGW","WPxcOeZdGCoohq","wghcQSkjW64","W5pdSCk6shm","5BIF55Qc5B6x5Aw76lAK","W5hcHNnGW7C","WOnAnCoj","gmoHWQLRW4zd","W7ylqSorWRO","z1ZdUW","uCo+dvC4","WP19wWuYaCok","W57cNdRdKq","WPedWPayW7a","zMddSCoQW5XtlN/cR8oR","W7rkWOClWQtcRtq","sNhdOmouW6jueNlcUSo0","yuldIxPPtca8ndC","W4VdHSk1fgJdJZ3dK8kScq","oZSRg1i9Dea","WQWcWQqLW403b8od","lrudpmozeu7cImoLWQ8","CeVcMuH1","WPHCmSksW6hdKCkeb8kjW6m","D0ldOSo5W5K","W7/dRSoQ","5lIw5zkj44k05AwV5BcM5OMLvZtcRXW","WRRcQwyLg0VdPa","W7moBSkfW79xWQenW7BcJW","kZWUda","WRxcQh0u","W67dL8kUxN8","kNpdN3ecWPmCv3a9","W6jxWQ/cTW","W6tcTL4UnmkBCceyW6tcNCkoFW","wCoRWRjQW5G","W7hcMmkk","z3DXWQPk","WRFdT8oumLG","A3jcWOm","zLHfWO56","W6ldMCo6W7BdHa","WR7cTu0cfq","W7RcKSkFW6NdGZ/dOdJdRG0","EGjel8oS","WObVqbO4","WOVdTmo0WPBcJSkBW47cRmoiW4C","W4OKW7TUWOy","h8ocWQHSW4XmWQW","WQ7dLWW0WPK4juSoFL4Djq","W5tdLCkRWR82","txpdKmowW5i","W6G9W5zcWO/dGuj5WP7cSa","uNejAmkhEetdN8osW5i","WOBdRCozlwax","W40tnmkFoLa9WQuEWOy","W5DCWQmvWPW","WPldPCofiu0GhWBcLtG","rSoPW5LVethcTL3dJEwiPq","W5ZcPZRdISkC","WP43WRboW40EmW","WRbukSor","W4/dLCk6swpdHtq","W5xdTmkjvgC","vMNdPa","WPDCrCo7uq","sH7cISob","WO/cOe8","sqpcP8otW6W","yK7dJ3zOsq","W6NcVY4t","W6VdP8oSWQBdTq","B2hcOSkL","W655BrRcSaGJyq","q1pdRt5/W4PbeW","W7TTW7tdKH0PhwbqW40","E8ozWOeFWPm","WO/cOehdSa","gLCN","z8okWOzIW5dcRCog","q3pdQSox","uCoQWP9zW60","lH44W6xdNYVcPmoF","WQBdTSoAjxOBfLy","WPdcU1RdT8ojhM3dGtm","iq84W5RdNhtdPCkXW7y7","WPjkAmoow8kCWQ5uoZG","WRVcSNZdUdu","WQNcUCkTWOhNV7FPO4ZNQQxORQ7MS7hLP7u","WQ/cQSk/w8o6W4VcQSkxmG","A0/dRGfFW4jlbILX","BSo2WRZcThe","WOJdPCog","odi+avKjA0K","W7bYW7JdTc4","E8oZk04MCglcRCkIW6y","5lIu5AEy6lwR","qSo2WPJcILtcNmk2WPiXgq","sM9bWPrIW5FdRmkOWPddQG","WOtcQLZdRmoifNddIJpdMG","WPhcOCk3W4VcLmoyW5pcG8osWO9+WR8","qSohkmo2ASk+WRhdVmkQiW","W655AGhcRaaU","BvJdVXvCW5rCcYr8","hCk0WOmH","W6iMCCoPWRm","WPz/rqu0a8oplmkv","nSkXWRBdUmoWqa","W4NdGSkRvMRdGZu","WPfoAmo4","W4ddTmoWWP4","vmoPWPJcTf7cGmk0WQuZhq","WPZcS2NdUr1GpW","WP5oWRtcVaTJA8oQ","W7NcJCkBW6pcSYJcSxtdRrC","EwRcHfu","v2tdTmopW5HxcKtcQ8oW","WRRcR3Gfm2ZdVW","WOiEWPRcOL8/EmkKjmkZ","W6PhWPukWQdcMIBdSa","ywiOCSku","iXK/W4hdG3RdRSkEW5OQ","WOlcULZdTG","W54gnCkgnKaO"];return BB=function(){return t},BB()}function yur(t){let e=le,r={PrVkZ:function(n,s){return n(s)},Upudt:function(n,s){return n(s)},HFyZw:function(n,s){return n||s},qpKaR:e(708,"oEMo")};try{return r[e(1376,"2[yc")](encodeURIComponent,r[e(830,"ZfqP")](String,r[e(707,"]g^X")](t,"")))[e(589,"^*m#")](/\*/g,r[e(956,"Fii^")])}catch{return""}}function Aur(t,e=!1){let r=le,n={nPCAq:function(s,i){return s===i},wPsFR:r(1153,"^*m#"),EsZeH:r(1026,"M]CY"),mpAgm:r(375,"n(MT"),FAqZx:r(656,"Bp*y"),zfwpe:r(1058,"XBJe"),MtWZY:r(1306,"Y(gf")};if(n[r(740,"Wd#O")](typeof t,n[r(1113,"3J7Q")]))return t;if(n[r(563,"XBJe")](typeof t,n[r(675,"#rid")])){let s=t[r(386,"5&cU")]()[r(1348,"Cw#%")+"e"]();if(["1",n[r(310,"Cw#%")],n[r(904,"o3rS")],"on"][r(1085,"$r(y")](s))return!0;if(["0",n[r(1073,"0G^^")],"no",n[r(1160,"h#tw")]][r(1085,"$r(y")](s))return!1}return e}var qV=(t,e)=>t?t+"/"+e:e,xur=t=>Object[le(317,"Y(gf")](t||{})[le(524,"EdkW")](Array[le(576,"Z@sc")])[le(726,"CsF7")](),QV,HV={},si={set(t,e){let r=le;HV[t]=e,QV[r(697,"o#03")](r(912,"M]CY")+t,e)},get(t){return HV[t]}},J0=async t=>{let e=le;QV=t[e(316,"EdkW")].db,HV=await QV[e(1174,"X&%&")+e(477,"^*m#")](e(859,"csNL"),{})},GV=class{constructor(){let e=le,r={dZimd:e(369,"QFD%")},n=r[e(1041,"oEMo")][e(371,"nsNg")]("|"),s=1*6567+5325+-3*3964;for(;;){switch(n[s++]){case"0":this[e(550,"Z@sc")]=Y0+(e(1031,"yDmj")+e(1127,"1XpI"));continue;case"1":this[e(963,"3J7Q")]="";continue;case"2":this[e(727,"n(MT")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"3":this[e(453,"M]CY")]=c8e+(e(845,"H&b]")+e(911,"3J7Q"));continue;case"4":this[e(401,"XBJe")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue}break}}async[le(509,"L^u@")](){let e=le,r={VtvRn:e(1137,"H&b]"),aYSsz:e(1120,"rgzd"),zRdWb:function(n,s){return n(s)},JKSxA:function(n,s){return n>s},lzxKJ:function(n,s){return n/s},UBTbU:e(1052,"XIxu"),uXhJh:e(429,"JZfJ"),mFjwl:e(1351,"4PrE")};if(this[e(1173,"X&%&")]&&console[e(445,"EdkW")](r[e(750,"y412")]),this[e(551,"w*gd")]&&console[e(866,"DhQd")](r[e(636,"1XpI")]),this[e(490,"2[yc")]){let n=r[e(840,"pr%%")](g8e,this[e(719,"oEMo")]);r[e(931,"Cw#%")](n?.[e(600,"X&%&")]||-49*10+8239+-7749,Math[e(1e3,"n(MT")](r[e(893,"Y(gf")](Date[e(545,"rgzd")](),-5192+122*39+-6*-239)))?console[e(937,"ryF!")](r[e(1291,"Wd#O")]):(console[e(936,"4PrE")](r[e(760,"JkQT")]),await this[e(1102,"2[yc")]())}else console[e(1168,"47(V")](r[e(1136,"csNL")]),await this[e(876,"DhQd")]()}get[le(997,"csNL")](){let e=le,r={spMsR:e(1370,"L^u@")+"rt"};return si[e(1084,"ZfqP")](r[e(1194,"w*gd")])}get[le(1167,"P(Jb")](){let e=le,r={qitkC:e(1005,"rgzd")+"rd"};return si[e(824,"pr%%")](r[e(687,"Wd#O")])}get[le(1328,"M]CY")](){let e=le,r={TTNkJ:e(958,"oEMo")};return si[e(617,"y412")](r[e(1024,"Mhe$")])}get[le(1208,"w*gd")+le(1292,"oEMo")](){let e=le,r={mByNC:e(913,"1XpI")+e(321,"$r(y")};return si[e(617,"y412")](r[e(947,"CsF7")])}get[le(1312,"^*m#")+le(806,"EdkW")](){let e=le,r={xFYyQ:e(851,"w*gd")+e(1086,"y412")};return si[e(558,"47(V")](r[e(362,"Cw#%")])}get[le(766,"Y(gf")+le(847,"EdkW")](){let e=le,r={EedQU:function(n,s,i){return n(s,i)},VtVnl:e(896,"n(MT")+e(746,"Y(gf")};return r[e(1246,"rgzd")](Aur,si[e(722,"JkQT")](r[e(1139,"csNL")]),!0)}[le(1257,"5&cU")+le(966,"Z@sc")+le(1033,"QFD%")](){let e=le,r={FWyHs:function(s,i){return s(i)},MGWxQ:e(625,"ryF!")+e(917,"M]CY")+e(329,"JZfJ")},n=r[e(570,"2[yc")](ii,this[e(1231,"pr%%")+e(451,"5&cU")]);if(!n)throw new Error(r[e(950,"w*gd")]);return n}[le(1125,"rgzd")+le(420,"oEMo")](){let e=le,r={Rfhog:function(s,i){return s(i)},xYCWr:e(991,"M]CY")+e(1186,"Cw#%")},n=r[e(930,"o3rS")](ii,this[e(689,"jhlg")]);if(!n)throw new Error(r[e(1207,"Bp*y")]);return n}async[le(1039,"Z@sc")+le(1375,"L^u@")](){let e=le,r={bZtAi:function(i,a){return i(a)},hVarx:e(1378,"o#03")+e(716,"47(V"),YFydo:function(i){return i()}},n=r[e(491,"5&cU")](ii,si[e(1283,"yDmj")](r[e(802,"ZfqP")]));if(n)return n;let s=r[e(1253,"JkQT")](fur);return si[e(364,"nsNg")](r[e(751,"QFD%")],s),s}async[le(1220,"X&%&")+le(666,"47(V")]({parentFileId:e=-47*-137+-3017*-1+-8*1182,limit:r=100,searchData:n="",searchMode:s=-76*-12+-538*-2+-1987,lastFileId:i=void 0}){let a=le,o={zpRgP:function(l,d){return l!==d},OrhYT:function(l,d){return l!==d},aQrDz:function(l,d){return l(d)},YegxK:function(l,d,f){return l(d,f)},PMUVA:a(611,"QFD%")+a(354,"XIxu")},c={parentFileId:e,limit:r};n&&(c[a(378,"XBJe")]=n,c[a(553,"ZfqP")]=s),o[a(311,"H&b]")](i,void 0)&&o[a(1277,"csNL")](i,null)&&o[a(870,"H&b]")](i,"")&&(c[a(1212,"P(Jb")]=i);let u=await he[a(835,"1XpI")](rur,{params:c,timeout:15e3,validateStatus:null,headers:o[a(456,"CsF7")](dC,this[a(512,"^*m#")+a(761,"]g^X")+a(685,"P(Jb")]())});return o[a(943,"4PrE")](fC,u,o[a(626,"]g^X")]),u[a(777,"Z@sc")]}async[le(764,"ryF!")+le(1164,"5&cU")]({name:e,parentID:r=-6269+11*-25+6544}){let n=le,s={toRRq:function(a,o){return a(o)},nbQwr:function(a,o,c){return a(o,c)},ElVwQ:n(784,"JZfJ")+n(803,"Bp*y")},i=await he[n(717,"ZfqP")](nur,{name:e,parentID:r},{timeout:15e3,validateStatus:null,headers:s[n(812,"Bp*y")](dC,this[n(884,"XBJe")+n(1326,"Bp*y")+n(886,"3J7Q")]())});return s[n(809,"QFD%")](fC,i,s[n(724,"H&b]")]),i[n(684,"EdkW")]}async[le(655,"ZfqP")+le(425,"oEMo")]({name:e,parentFileId:r=7581+399*-19}){let n=le,s=await this[n(496,"Cw#%")+n(1352,"h#tw")]({parentFileId:r,limit:100,searchData:e,searchMode:1});return(Array[n(544,"y412")](s?.[n(1149,"1XpI")]?.[n(340,"47(V")])?s[n(384,"Mhe$")][n(738,"JZfJ")]:[])[n(1198,"h#tw")](a=>a?.[n(1252,"yDmj")]===e&&Number(a?.[n(446,"XIxu")])===-2025+-2381*-1+-355&&Number(a?.[n(861,"ZfqP")]||1*-1931+9757+-7826)===0&&Number(a?.[n(964,"jhlg")+"Id"]||21*-123+-3767+6350)===Number(r))||null}async[le(1090,"y412")+le(878,"Mhe$")](){let e=le,r={TJcva:function(c,u,l){return c(u,l)},YuDkm:e(1304,"Z%L#")+e(868,"3DX)"),oZKsW:function(c,u){return c>u},kTpjK:function(c,u){return c(u)},IyiyX:function(c,u){return c(u)},sZUkg:function(c,u){return c(u)},DPnQi:function(c,u){return c>u},FWTNJ:function(c,u){return c(u)},TggvI:e(793,"H&b]")+e(994,"JkQT")+e(402,"JZfJ")},n=r[e(502,"oEMo")](u8e,si[e(1256,"^*m#")](r[e(1288,"Cw#%")]),-6*-7+-1*8877+8835);if(r[e(1248,"Wd#O")](n,47*-101+-6540*1+11287))try{return await this[e(423,"2[yc")+e(888,"L^u@")]({parentFileId:n,limit:1}),{dirID:n,name:yg,fromCache:!0}}catch{si[e(547,"H&b]")](r[e(705,"Z@sc")],"")}let s=await this[e(900,"CsF7")+e(1339,"DhQd")]({name:yg,parentFileId:0});if(s?.[e(1097,"w*gd")])return si[e(1358,"JkQT")](r[e(1109,"Wd#O")],r[e(444,"o#03")](Number,s[e(442,"JZfJ")])),{dirID:r[e(1335,"o3rS")](Number,s[e(729,"csNL")]),name:yg,fromCache:!1};let i=await this[e(1314,"ZfqP")+e(1205,"Wd#O")]({name:yg,parentID:0}),a=r[e(480,"#rid")](Number,i?.[e(427,"5zx!")]?.[e(1135,"Bp*y")]||i?.[e(465,"Z%L#")]?.[e(928,"DhQd")]||i?.[e(1210,"XBJe")]?.[e(853,"h#tw")]||-2676+-223*-12);if(r[e(673,"o3rS")](a,4681+9055*-1+-1458*-3))return si[e(1374,"4PrE")](r[e(1369,"nsNg")],a),{dirID:a,name:yg,created:!0};let o=await this[e(1036,"nsNg")+e(984,"5&cU")]({name:yg,parentFileId:0});if(o?.[e(935,"DhQd")])return si[e(1200,"X&%&")](r[e(1042,"ryF!")],r[e(575,"rgzd")](Number,o[e(398,"Y(gf")])),{dirID:r[e(507,"QFD%")](Number,o[e(462,"1XpI")]),name:yg,fromFallback:!0};throw new Error(r[e(747,"4PrE")])}async[le(647,"MAI[")+le(925,"$r(y")]({parentFileID:e,file:r,duplicate:n=-1505+-343*1+-1*-1849}){let s=le,i={cUFsp:function(o,c){return o(c)},hpccw:function(o,c,u){return o(c,u)},wnDiI:s(452,"Cw#%")+s(1180,"0G^^")},a=await he[s(949,"Y(gf")](eur,{parentFileID:e,filename:r[s(770,"jhlg")],sha1:r[s(1032,"2[yc")],size:r[s(795,"3J7Q")],duplicate:n},{timeout:2e4,validateStatus:null,headers:i[s(483,"$r(y")](dC,this[s(743,"Bp*y")+s(1178,"w*gd")+s(782,"XIxu")]())});return i[s(326,"L^u@")](fC,a,i[s(399,"H&b]")]),a[s(908,"jhlg")]}async[le(1344,"Fii^")+le(767,"H&b]")+"te"]({fileID:e,shareName:r,shareExpire:n=2202+-3494*-1+-5696*1,sharePwd:s=""}){let i=le,a={wWwco:function(l,d){return l(d)},USgxX:function(l,d){return l(d)},MxUfm:function(l,d,f){return l(d,f)},kBDAb:i(857,"o#03")+i(1357,"oEMo")},o={shareName:r,shareExpire:n,fileIDList:a[i(776,"w*gd")](String,e)},c=a[i(383,"nsNg")](ii,s);c&&(o[i(918,"Wd#O")]=c);let u=await he[i(373,"y412")](tur,o,{timeout:2e4,validateStatus:null,headers:a[i(1049,"$r(y")](dC,this[i(1264,"Cw#%")+i(920,"XBJe")+i(942,"H&b]")]())});return a[i(867,"JZfJ")](fC,u,a[i(449,"Y(gf")]),u[i(909,"H&b]")]}async[le(1051,"#rid")+le(472,"MAI[")](e=[]){let r=le,n={Khhuu:function(i,a){return i(a)},ITHCw:function(i,a){return i(a)},ASpDI:function(i,a,o){return i(a,o)},Jscfy:r(773,"h#tw")+r(1002,"P(Jb")},s=await he[r(1184,"ryF!")](sur,{fileIDs:n[r(1116,"CsF7")](Ag,e)},{timeout:15e3,validateStatus:null,headers:n[r(1066,"3DX)")](dC,this[r(732,"Z%L#")+r(602,"Y(gf")+r(343,"rgzd")]())});return n[r(1179,"o#03")](fC,s,n[r(1148,"oEMo")]),s[r(605,"JkQT")]}async[le(1350,"h#tw")+le(555,"oEMo")](e,r,n,{successCodes:s=[-4*-2305+1*-7481+-1739],message:i=le(887,"pr%%")+"\u8D25"}={}){let a=le,o={FVdKc:function(f,p){return f(p)},bErVG:function(f,p,m){return f(p,m)},MNEkR:function(f,p,m,h){return f(p,m,h)}},c=this[a(779,"X&%&")+a(1009,"3J7Q")](),u=await this[a(885,"jhlg")+a(1111,"P(Jb")](),l=o[a(597,"Cw#%")](dur,e),d=await he[a(649,"csNL")](r,n,{params:{[l[a(983,"jhlg")]]:l[a(341,"4PrE")]},timeout:15e3,validateStatus:null,headers:o[a(1285,"2[yc")](pur,c,u)});return o[a(1387,"QFD%")](mur,d,i,s),d[a(762,"MAI[")]}async[le(568,"4PrE")+le(330,"3J7Q")](e=[],r=9778+121*41+-14739){let n=le,s={fZLmM:function(a,o){return a(o)},PlucN:n(1323,"Z@sc")+n(895,"#rid")},i=[];for(let a of s[n(590,"yDmj")](Ag,e)){let o=await this[n(915,"XIxu")+n(869,"X&%&")](p8e,aur,{driveId:0,shareInfoList:[{shareId:a}],isPayShare:r},{message:s[n(1081,"CsF7")]});i[n(395,"QFD%")]({shareID:a,result:o})}return{success:!0,results:i}}async[le(852,"MAI[")+le(690,"jhlg")+le(679,"3J7Q")](e=[]){let r=le,n={YCGGG:function(s,i){return s(i)},hdIGq:r(742,"Z@sc")+r(702,"MAI[")};return await this[r(543,"MAI[")+r(805,"JkQT")](f8e,iur,{fileIdList:n[r(325,"rgzd")](Ag,e)[r(704,"ryF!")](s=>({fileId:s})),RequestSource:1},{successCodes:[-2*-3009+682+-67*100,1*-9267+1*-6869+-23*-1019],message:n[r(1217,"5&cU")]})}async[le(856,"h#tw")+le(882,"h#tw")](e,r={}){let n=le,s={YsAaA:function(c,u){return c(u)},ZkSPl:n(759,"XBJe")+n(426,"o#03")+n(825,"h#tw")+"1",rBaCT:n(486,"0G^^")+n(1324,"X&%&"),kYBSQ:n(1297,"#rid")+n(359,"CsF7")+"D",nSRnl:function(c,u){return c(u)},nuURo:function(c,u,l){return c(u,l)},SATxW:function(c,u){return c(u)},NqYss:function(c,u){return c||u},MljON:n(1219,"rgzd")+n(400,"w*gd")+n(681,"oEMo")+n(522,"QFD%")},i={name:s[n(1057,"H&b]")](ii,e?.[n(1126,"Fii^")]||e?.[n(556,"jhlg")]||e?.n),size:s[n(1271,"3DX)")](Number,e?.[n(569,"5&cU")]||e?.s||0),sha1:s[n(500,"47(V")](ii,e?.[n(494,"QFD%")]||e?.[n(863,"XIxu")]||e?.[n(1327,"3J7Q")])[n(699,"$r(y")+"e"]()};if(!i[n(366,"DhQd")]||!i[n(1176,"ryF!")]||!/^[a-f0-9]{40}$/i[n(1293,"DhQd")](i[n(1072,"y412")]))throw new Error(s[n(361,"L^u@")]);let a=9867+-6637*1+-19*170,o=-2*734+5567+-4099;try{let c=await this[n(1090,"y412")+n(1099,"4PrE")](),u=await this[n(709,"pr%%")+n(511,"o3rS")]({parentFileID:c[n(801,"$r(y")],duplicate:r[n(905,"]g^X")]??13*-482+5979+16*18,file:i});if(!u?.[n(797,"yDmj")]?.[n(844,"]g^X")])throw new Error(s[n(1349,"1XpI")]);if(a=s[n(890,"n(MT")](Number,u?.[n(387,"3J7Q")]?.[n(780,"o#03")]||-1*2278+-5692*-1+-3414*1),!a)throw new Error(s[n(382,"H&b]")]);let l=await this[n(357,"w*gd")+n(1385,"CsF7")+"te"]({fileID:a,shareName:s[n(515,"o3rS")](ii,r[n(448,"X&%&")])||i[n(1381,"JZfJ")],shareExpire:s[n(560,"Wd#O")](u8e,r[n(1213,"X&%&")+"e"],7363+5*1985+-17288),sharePwd:s[n(757,"JkQT")](ii,r[n(1172,"Mhe$")])});o=s[n(1071,"]g^X")](Number,l?.[n(1170,"2[yc")]?.[n(332,"L^u@")]||l?.[n(734,"M]CY")]?.[n(417,"EdkW")]||181*33+21*303+24*-514);let d=s[n(467,"4PrE")](ii,l?.[n(670,"X&%&")]?.[n(470,"]g^X")]),f=s[n(582,"3DX)")](ii,l?.[n(1308,"]g^X")]?.[n(818,"yDmj")]||l?.[n(1317,"DhQd")]?.[n(1182,"oEMo")])||s[n(1232,"MAI[")](uur,{uid:s[n(862,"ZfqP")](cur,this[n(639,"o3rS")+n(723,"Mhe$")+n(1033,"QFD%")]()),shareKey:d,sharePwd:r[n(1263,"H&b]")]});if(s[n(559,"^*m#")](!o,!f))throw new Error(s[n(1373,"1XpI")]);return{file:i,fileID:a,shareID:o,shareKey:d,shareUrl:f,tempDir:c,reuseResult:u,shareResult:l}}catch(c){if(s[n(712,"Cw#%")](a,o))try{await this[n(345,"EdkW")+n(1112,"M]CY")+"s"]({fileID:a,shareID:o})}catch{}throw c}}async[le(1065,"Fii^")+le(889,"5zx!")+"e"](e){let r=le,n={hcWbX:r(578,"0G^^")+"\u5931\u8D25",zmpVq:function(u,l){return u(l)},QbTol:r(606,"Y(gf")+r(433,"csNL"),vqLHt:r(488,"H&b]")+r(1054,"pr%%")},s=this[r(618,"o3rS")+"ta"](e);if(!s)throw new Error(n[r(629,"pr%%")]);let i=await this[r(1315,"nsNg")+r(363,"4PrE")](s),a=n[r(1333,"y412")](xur,i)[3*283+2892+-3741];if(!a?.[r(982,"MAI[")])throw new Error(n[r(1342,"n(MT")]);let o=n[r(1280,"csNL")](String,a[r(800,"DhQd")])[r(413,"Mhe$")]("*"),c=await this[r(902,"5zx!")+"d"](...o);if(!c)throw new Error(n[r(314,"Bp*y")]);return{file:a,url:c,header:this[r(487,"w*gd")+r(620,"^*m#")]()}}async[le(1259,"1XpI")+le(965,"1XpI")+"s"]({fileIDs:e=[],shareIDs:r=[]}={}){let n=le,s={IaMYY:function(o,c){return o(c)},PhyBj:function(o,c){return o(c)},DqtvH:function(o,c){return o(c)},iwGPD:function(o,c){return o>c},RlBbq:function(o,c){return o(c)},KGmbc:n(388,"JkQT")+n(710,"CsF7")},i={fileIDs:s[n(422,"1XpI")](Ag,e),shareIDs:s[n(1064,"JZfJ")](Ag,r)},a=s[n(744,"QFD%")](Boolean,s[n(1014,"Bp*y")](ii,this[n(927,"w*gd")]));if(s[n(836,"2[yc")](i[n(539,"oEMo")][n(1123,"5&cU")],-3958+-5041*1+-1*-8999))if(a)try{i[n(643,"5&cU")+"up"]=await this[n(586,"Wd#O")+n(475,"csNL")](i[n(1008,"^*m#")])}catch(o){i[n(1124,"CsF7")+"up"]={success:!1,error:o?.[n(1140,"CsF7")]||s[n(1196,"rgzd")](String,o)}}else i[n(794,"Bp*y")+"up"]={skipped:!0,reason:s[n(1356,"H&b]")]};if(s[n(1077,"nsNg")](i[n(1166,"L^u@")][n(1040,"Wd#O")],2*3977+-9715+1*1761))if(i[n(346,"Fii^")]=await this[n(479,"y412")+n(635,"Bp*y")](i[n(1190,"csNL")]),a)try{i[n(1091,"3J7Q")]=await this[n(476,"XBJe")+n(347,"ZfqP")+n(632,"X&%&")](i[n(916,"5&cU")])}catch(o){i[n(1082,"Mhe$")]={success:!1,error:o?.[n(619,"JZfJ")]||s[n(807,"o3rS")](String,o)}}else i[n(665,"5zx!")]={skipped:!0,reason:s[n(463,"o3rS")]};return i}[le(1221,"L^u@")+le(1276,"o#03")+"up"](){let e=le,r={RCgCd:function(s,i){return s===i},TjOdV:e(508,"5&cU"),hrUlo:function(s,i){return s(i)}},n=si[e(313,"Cw#%")](OB);if(!n)return{fileIDs:[],shareIDs:[]};if(r[e(823,"XIxu")](typeof n,r[e(952,"^*m#")]))try{return r[e(850,"XIxu")](FV,JSON[e(529,"nsNg")](n))}catch{return{fileIDs:[],shareIDs:[]}}return r[e(951,"X&%&")](FV,n)}[le(1083,"jhlg")+le(714,"h#tw")+le(1218,"ryF!")](e){let r=le,n={uRhex:function(a,o){return a(o)},bihuO:function(a,o){return a(o)}},s=n[r(415,"yDmj")](FV,e);if(!n[r(318,"5&cU")](l8e,s))return si[r(436,"QFD%")](OB,""),s;let i={...s,updatedAt:Date[r(1158,"4PrE")]()};return si[r(1199,"1XpI")](OB,i),i}async[le(1216,"rgzd")+le(339,"5&cU")+le(980,"#rid")](){let e=le,r={bFNNx:function(s,i){return s(i)},QAHeB:function(s,i){return s(i)}},n=this[e(1161,"csNL")+e(528,"Bp*y")+"up"]();if(!r[e(1362,"3J7Q")](l8e,n))return null;si[e(758,"csNL")](OB,"");try{return await this[e(910,"n(MT")+e(567,"^*m#")+"s"](n)}catch(s){return{...n,error:s?.[e(960,"Fii^")]||r[e(608,"oEMo")](String,s)}}}async[le(730,"o#03")](){let e=le,r={rPadd:e(1270,"o#03"),VSLhd:e(1003,"CsF7")+e(615,"yDmj")+e(1215,"CsF7")+e(668,"5&cU")+e(1043,"Cw#%")+e(624,"h#tw")+e(333,"3J7Q")+e(1067,"4PrE")+e(1236,"y412")+e(945,"]g^X")+e(1063,"Fii^")+"6",OksTp:e(924,"3J7Q")+e(1100,"47(V"),taYYq:function(a,o){return a(o)},UHHQu:function(a,o){return a(o)},ZjKAQ:e(1240,"Z%L#"),zuOfq:e(788,"pr%%")+e(439,"4PrE")+"\u914D\u7F6E",reouo:e(1022,"M]CY")};if(!this[e(616,"$r(y")]||!this[e(938,"h#tw")])return;let n=JSON[e(358,"5zx!")]({passport:this[e(1245,"DhQd")],password:this[e(938,"h#tw")],remember:!0}),s={method:r[e(579,"Z@sc")],url:this[e(986,"yDmj")],headers:{"User-Agent":r[e(379,"yDmj")],"Content-Type":r[e(1188,"XBJe")],"App-Version":"43",Referer:c8e+(e(1254,"3J7Q")+e(664,"yDmj")+e(959,"nsNg"))+r[e(1056,"XBJe")](encodeURIComponent,Y0)+(e(598,"]g^X")+e(1364,"JZfJ"))},data:n},i=(await he[e(1299,"yDmj")](s))[e(1273,"h#tw")];if(!i?.[e(612,"nsNg")]?.[e(1106,"EdkW")]){r[e(1151,"o3rS")](messageToDart,{action:r[e(497,"pr%%")],opt:{message:r[e(749,"Bp*y")],duration:5}});return}si[e(1012,"P(Jb")](r[e(781,"DhQd")],i[e(1210,"XBJe")][e(464,"Bp*y")])}[le(374,"n(MT")+"ta"](e){let r=le,n={xuhrE:function(c,u){return c(u)},sVaoJ:function(c,u){return c||u},vwNpc:function(c,u){return c>u},XMaPe:function(c,u){return c+u},gvKGz:function(c,u){return c(u)},NwzFJ:function(c,u){return c>u}},s=n[r(843,"rgzd")](decodeURIComponent,n[r(1185,"X&%&")](e,"")[r(441,"3DX)")]());s=s[r(907,"ZfqP")](/[#.,,/\s]+$/,""),this[r(713,"JkQT")]="";let i=s[r(1019,"o3rS")]("?");if(n[r(745,"o#03")](i,2582+1*-2582)){let c=s[r(614,"ZfqP")](n[r(1060,"3J7Q")](i,1)),u=c[r(397,"rgzd")](/(?:^|&)pwd=([^&]+)/i);this[r(1115,"5&cU")]=u?n[r(753,"Bp*y")](decodeURIComponent,u[685*-2+-939+-110*-21]):""}let a=this[r(741,"JkQT")][r(603,"ryF!")](s);if(a)return n[r(789,"ZfqP")](a[3*-473+5490*-1+6911][r(349,"1XpI")]("?"),-1580+-13*29+1957)?a[1*-5269+5129+1*142][r(995,"Z%L#")]("?")[-1*4339+3383+956]:a[-3*-3089+-8748+47*-11];let o=this[r(1247,"]g^X")][r(499,"oEMo")](s);return o?o[2*3902+5989+8*-1724]:null}async[le(457,"XIxu")+le(394,"CsF7")](e){let r=le,n={kEgFI:function(o,c){return o in c},TfxPq:function(o,c){return o>c},MiHBV:function(o,c){return o(c)},pIBtx:function(o,c){return o===c}},s={},i=[],a=await this[r(1122,"jhlg")+"st"](e,this[r(342,"L^u@")],-6550+2306*3+-368,0,i,"");if(a&&n[r(1284,"3J7Q")](a[r(906,"y412")],120*-9+-1*-1252+-172)&&(s[r(1068,"47(V")]=a),n[r(1343,"5&cU")](i[r(323,"3DX)")],0)){let o=await Promise[r(1365,"$r(y")](i[r(1244,"n(MT")](async c=>{let u=r;return this[u(769,"EdkW")+"fo"](c[u(648,"Z@sc")],c[u(342,"L^u@")],0,c[u(540,"47(V")],c[u(1371,"P(Jb")])}));o=o[r(678,"^*m#")](c=>c!=null),i=[...i,...o[r(1366,"1XpI")]()]}i&&Array[r(688,"2[yc")](i)&&await Promise[r(676,"L^u@")](i[r(557,"Y(gf")](async o=>{let c=r,u=o[c(1371,"P(Jb")]||o[c(1107,"oEMo")];!n[c(1121,"4PrE")](u,s)&&(s[u]=[]);let l=await this[c(1152,"JZfJ")+"st"](o[c(458,"1XpI")],o[c(667,"QFD%")],0,o[c(519,"y412")]);l&&n[c(1114,"Z@sc")](l[c(353,"CsF7")],-134*-8+-8086+-21*-334)&&s[u][c(554,"4PrE")](...l)}));for(let o in s)n[r(954,"H&b]")](s[o][r(323,"3DX)")],6562+-2*2735+13*-84)&&delete s[o];return Object[r(1275,"#rid")](s)[r(621,"1XpI")](o=>{let c=r;s[o]=s[o][c(1025,"o3rS")](u=>{let l=c;return{vod_id:[u[l(962,"ryF!")],u[l(1243,"jhlg")],u[l(1204,"XIxu")],u[l(1302,"ZfqP")],u[l(1145,"o#03")],n[l(846,"w*gd")](yur,u[l(447,"3J7Q")+"l"]||"")][l(1286,"Wd#O")]("*"),vod_name:u[l(1355,"Z%L#")],vod_size:u[l(832,"M]CY")]}})}),s}async[le(816,"3DX)")+"fo"](e,r,n,s,i){let a=le,o={cFgDK:function(y,g){return y===g},NxrAQ:function(y,g,b){return y(g,b)},HuOOP:function(y,g){return y||g},hUKMz:function(y,g,b){return y(g,b)},HTPqp:function(y,g){return y??g},JtOLa:function(y,g){return y+g},iZWDO:a(520,"2[yc"),NEjve:a(437,"o3rS"),RWVyG:a(1267,"0G^^"),agnKh:a(1165,"P(Jb"),aKRVZ:function(y,g){return y(g)},fkvur:function(y,g){return y!==g},EiFbt:function(y,g){return y>=g},WMqUb:function(y,g){return y(g)}},c=[],u=o[a(1018,"rgzd")](n,508*12+-1*1390+-4706),l=5*-787+19*-148+7*964,d=new Set,f=new Set,p=y=>!(y==null||y===""||y===0||y==="0"||y===-(2977*1+-5507+2531)||y==="-1"),m=8303+88*62+-4553*3;for(;;){let y=l+"|"+u;if(d[a(645,"4PrE")](y))break;d[a(495,"Cw#%")](y);let g=await he[a(775,"o#03")](o[a(573,"3DX)")](this[a(1382,"jhlg")],o[a(1354,"Z%L#")]),{headers:{},params:{limit:o[a(1013,"yDmj")],next:u,orderBy:o[a(1224,"3J7Q")],orderDirection:o[a(976,"w*gd")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(1131,"o#03")](String,l)}});if(o[a(1129,"ZfqP")](g[a(658,"M]CY")],1*6961+6750+-13511))break;if(o[a(355,"Z@sc")](g[a(1360,"3DX)")][a(828,"yDmj")],7121+-594*16+7486)){console[a(1038,"csNL")](g[a(1265,"L^u@")][a(814,"Wd#O")]);break}let b=g[a(459,"Fii^")][a(387,"3J7Q")];if(!b||!Array[a(901,"oEMo")](b[a(319,"XBJe")]))break;b[a(1029,"oEMo")][a(826,"5&cU")](A=>{let S=a;if(o[S(1189,"h#tw")](A[S(405,"Y(gf")],-7604+10*-479+-1*-12394)){let I=A[S(1258,"]g^X")]+"|"+o[S(1017,"Bp*y")](qV,o[S(594,"Bp*y")](i,""),A[S(526,"Mhe$")]);if(f[S(891,"h#tw")](I))return;f[S(542,"w*gd")](I);let R=o[S(1320,"h#tw")](qV,o[S(725,"MAI[")](i,""),A[S(652,"DhQd")]);c[S(969,"M]CY")]({filename:A[S(577,"o#03")],shareKey:e,SharePwd:r,next:0,fileId:A[S(948,"1XpI")],path:R})}});let x=b[a(865,"JZfJ")];if(o[a(380,"H&b]")](p,x)){u=x;continue}if(Array[a(628,"47(V")](b[a(523,"1XpI")])&&o[a(385,"w*gd")](b[a(819,"Bp*y")][a(1021,"ryF!")],m)){l+=273+-17*16,u=2801*-1+1*6337+-3536;continue}if(!o[a(1104,"P(Jb")](p,x))break}let h=await Promise[a(1298,"JZfJ")](c[a(720,"P(Jb")](async y=>this[a(999,"JkQT")+"fo"](e,r,-4*2091+-2*2732+-2*-6914,y[a(534,"n(MT")],y[a(1316,"n(MT")])));return h=h[a(485,"Fii^")](y=>y!=null),[...c,...h[a(1133,"Fii^")]()]}async[le(1142,"ZfqP")+"st"](e,r,n,s,i=null,a=""){let o=le,c={ldpoc:function(g,b){return g===b},FChAq:function(g,b){return g(b)},RXRfH:function(g,b,x){return g(b,x)},gmTUs:function(g,b){return g||b},byFpL:function(g,b){return g??b},hXstt:function(g,b){return g+b},Wsazq:o(671,"#rid"),hxLxD:o(1260,"P(Jb"),UEvYr:o(642,"P(Jb"),Gvojr:o(389,"EdkW"),BjsgG:function(g,b){return g(b)},lIsFd:function(g,b){return g>=b}},u=[],l=c[o(356,"H&b]")](n,-2230*-4+-9775+855),d=-226*-3+-3418*2+6159,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===0||g==="0"||g===-(-11509+5*2302)||g==="-1"),y=-52*-41+97*102+-11926;for(;;){let g=d+"|"+l;if(f[o(923,"Z%L#")](g))break;f[o(504,"o3rS")](g);let b=(await he[o(1283,"yDmj")](c[o(839,"2[yc")](this[o(1181,"L^u@")],c[o(837,"h#tw")]),{headers:{},params:{limit:c[o(1128,"^*m#")],next:l,orderBy:c[o(501,"oEMo")],orderDirection:c[o(469,"JZfJ")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(1341,"o#03")](String,d)}}))[o(703,"#rid")],x=b?.[o(1149,"1XpI")];if(!x||!Array[o(944,"Wd#O")](x[o(319,"XBJe")]))break;x[o(873,"5zx!")][o(677,"L^u@")](S=>{let I=o;if(c[I(939,"]g^X")](S[I(411,"$r(y")],-139+137*41+-5476)){let R=S[I(430,"QFD%")]+"|"+S[I(1070,"yDmj")];if(p[I(790,"csNL")](R))return;p[I(700,"XBJe")](R),u[I(697,"o#03")]({ShareKey:e,FileId:S[I(754,"MAI[")],S3KeyFlag:S[I(968,"2[yc")],Size:S[I(871,"$r(y")],Etag:S[I(1300,"P(Jb")],FileName:S[I(584,"n(MT")],DownloadUrl:c[I(537,"nsNg")](d8e,S[I(894,"QFD%")+"l"]||S[I(897,"2[yc")+"L"])})}else if(c[I(1274,"ZfqP")](S[I(756,"Z%L#")],-40*-159+-5063*1+-1297)&&Array[I(1035,"H&b]")](i)){let R=c[I(640,"1XpI")](qV,c[I(1159,"h#tw")](a,""),S[I(1191,"rgzd")]),w=S[I(1227,"H&b]")]+"|"+R;if(m[I(1346,"3DX)")](w))return;m[I(360,"2[yc")](w),i[I(1214,"P(Jb")]({filename:S[I(498,"5&cU")],shareKey:e,SharePwd:r,next:0,fileId:S[I(946,"pr%%")],path:R})}});let A=x[o(562,"nsNg")];if(c[o(583,"ryF!")](h,A)){l=A;continue}if(Array[o(688,"2[yc")](x[o(1094,"CsF7")])&&c[o(440,"CsF7")](x[o(701,"nsNg")][o(1130,"H&b]")],y)){d+=1,l=-8876+1*-7047+15923;continue}if(!c[o(674,"5zx!")](h,A))break}return u}[le(748,"M]CY")+le(533,"X&%&")](){return{Referer:Y0+"/"}}async[le(593,"EdkW")+"d"](e,r,n,s,i,a=""){let o=le,c={lZJDE:function(m,h){return m(h)},bsYbo:function(m,h){return m(h)},KLEAi:o(1016,"1XpI")+o(580,"ZfqP")+o(1290,"#rid"),tWKnk:o(334,"CsF7"),ZbVFC:o(517,"$r(y")+o(1047,"XIxu")+o(831,"5zx!")+o(827,"o3rS")+o(478,"^*m#")+o(404,"XBJe")+o(641,"Fii^")+o(1209,"QFD%")+o(549,"n(MT")+o(945,"]g^X")+o(471,"XIxu")+"6",IGJvH:o(854,"Z@sc")+o(572,"pr%%")+o(406,"h#tw"),pgcDU:o(1334,"oEMo")},u=c[o(474,"yDmj")](d8e,c[o(1093,"JZfJ")](gur,a));if(u&&this[o(368,"JZfJ")+o(810,"]g^X")])return u;if(await this[o(1027,"Mhe$")](),!c[o(864,"jhlg")](ii,this[o(921,"DhQd")]))throw new Error(c[o(637,"csNL")]);let l=JSON[o(883,"DhQd")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(1010,"Mhe$")],url:this[o(1336,"47(V")]+(o(376,"Mhe$")+o(926,"oEMo")),headers:{"User-Agent":c[o(1322,"M]CY")],Authorization:o(696,"XIxu")+this[o(1345,"3DX)")],"Content-Type":c[o(324,"3DX)")],platform:c[o(849,"0G^^")]},data:l},f=(await he[o(1096,"]g^X")](d))[o(672,"4PrE")][o(762,"MAI[")];return c[o(841,"5&cU")](hur,f[o(711,"csNL")+"L"])}async[le(627,"ZfqP")+le(1235,"y412")](e,r,n,s,i){let a=le,o={WHDLM:function(d,f){return d!==f},qatQz:a(755,"yDmj"),CWiQc:a(932,"H&b]")+a(1079,"MAI[")+a(1050,"Fii^")+a(390,"47(V")+a(715,"JZfJ")+a(320,"P(Jb")+a(653,"XBJe")+a(1281,"2[yc")+a(591,"CsF7")+a(1044,"^*m#")+a(336,"JkQT")+"6",bKsYT:a(924,"3J7Q")+a(941,"$r(y")+a(799,"o3rS"),VNfHL:a(1118,"5&cU")};await this[a(940,"47(V")]();let c={method:o[a(315,"Bp*y")],url:Y0+(a(546,"H&b]")+a(975,"Mhe$")+"fo"),headers:{"User-Agent":o[a(1201,"X&%&")],Authorization:a(1279,"Z@sc")+this[a(1289,"4PrE")],"Content-Type":o[a(1269,"#rid")],platform:o[a(1046,"rgzd")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await he[a(922,"Z@sc")](c))[a(1141,"CsF7")][a(672,"4PrE")][a(516,"XBJe")+a(798,"CsF7")],l=[];return u[a(638,"4PrE")](d=>{let f=a;o[f(1359,"rgzd")](d[f(792,"5&cU")],"")&&l[f(973,"y412")]({name:d[f(692,"y412")],url:d[f(1226,"csNL")]})}),l}async[le(898,"DhQd")+le(1062,"DhQd")](e="0"){let r=le,n={VdVhb:r(682,"Mhe$")+r(409,"csNL")+r(468,"1XpI")+r(669,"Z@sc")+r(531,"n(MT")+r(822,"JkQT")+r(737,"5zx!")+r(564,"Z%L#")+r(352,"y412")+r(1386,"Z%L#")+r(1255,"5zx!")+r(1132,"JZfJ")+r(990,"CsF7")+"2",QPkJn:r(1377,"2[yc"),eWZXK:r(1087,"oEMo"),bEtKy:r(778,"Bp*y"),ALQEL:function(i,a){return i(a)},SPLjM:function(i,a){return i||a},xJgsj:r(1228,"MAI["),BIrab:r(1028,"Y(gf")+"le"};return await this[r(662,"oEMo")](),(await he[r(1311,"n(MT")](Y0+(r(820,"rgzd")+r(1098,"DhQd")),{headers:{"User-Agent":n[r(484,"rgzd")],Authorization:r(527,"5zx!")+this[r(811,"#rid")]},params:{driveId:"0",limit:n[r(1239,"L^u@")],next:"0",orderBy:n[r(510,"nsNg")],orderDirection:n[r(880,"Mhe$")],parentFileId:n[r(1020,"QFD%")](String,n[r(644,"3J7Q")](e,"0")),trashed:n[r(396,"Fii^")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(659,"o#03")],operateType:"1",inDirectSpace:n[r(604,"3DX)")]}}))[r(908,"jhlg")]}async[le(874,"Y(gf")+le(530,"Mhe$")](e,r,n,s,i=""){let a=le,o={hPkkO:a(532,"2[yc"),sSVuv:a(492,"DhQd")+a(791,"Z@sc"),cbbUn:a(421,"jhlg")+a(736,"XBJe")+a(985,"1XpI"),oRCXC:a(1268,"5zx!")};await this[a(829,"5&cU")]();let c=JSON[a(391,"jhlg")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(322,"ryF!")],url:Y0+(a(1171,"4PrE")+a(739,"4PrE")+a(1034,"1XpI")),headers:{"User-Agent":o[a(1155,"ryF!")],Authorization:a(1192,"Wd#O")+this[a(1092,"h#tw")],"Content-Type":o[a(1234,"MAI[")],platform:o[a(1361,"o#03")]},data:c},l=await he[a(381,"L^u@")](u);return l?.[a(384,"Mhe$")]?.[a(338,"Cw#%")]?.[a(657,"JkQT")+"l"]||l?.[a(367,"5&cU")]?.[a(384,"Mhe$")]?.[a(1294,"Fii^")+"L"]||""}},ai=new GV;var A8e=Ce(Q0(),1),pC=Ce(Xn(),1);var zV="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",xg={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},y8e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},KV=async t=>{let e=pC.default.enc.Hex.stringify(pC.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},bur=async(t,e)=>{let r=pC.default.enc.Hex.stringify(pC.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function VV(t){t.get("/qrcode",async(e,r)=>{try{let s=(await he.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":zV,referer:"https://115.com/"}})).data.data,i=y8e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await A8e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=y8e.decode(n);if(!s)return r.send({code:0,data:{status:xg.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await he.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":zV,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await he.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":zV,referer:"https://115.com/"}});if(d.data.state===1){let f=wl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:xg.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:xg.NEW}})}else u===1?r.send({code:0,data:{status:xg.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:xg.EXPIRED}}):r.send({code:0,data:{status:xg.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:xg.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await KV(e.server)})}),t.put("/cookie",async(e,r)=>{await bur(e.server,e.body?.cookie??""),r.send({code:0})})}var E8e="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",eY="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",v8e="4.8.2",XV="OFFLINE$",S8e=15e3,I8e=1e3,_ur="115\u79D2\u4F20123",LB="PAN123_RAPID@",YV=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function C8e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function T8e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!C8e(e)}function w8e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function Eur(t={}){return String(t.sha||t.sha1||t.Sha1||"").trim().toUpperCase()}function vur(t){return`${LB}${Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}`}function Sur(t){let e=String(t||"");if(!e.startsWith(LB))return null;let r=e.slice(LB.length);if(!r)return null;try{return JSON.parse(Buffer.from(r,"base64url").toString("utf8"))}catch{return null}}function Iur(t){return String(t||"").startsWith(LB)}function Cur(t,e){let r=Eur(t),n=String(t.n||t.name||"").trim(),s=Number(t.s||t.size||0);return!n||!s||!/^[a-f0-9]{40}$/i.test(r)?null:{vod_id:vur({name:n,size:s,sha1:r,fid:t.fid||"",shareCode:e.shareCode,receiveCode:e.receiveCode}),vod_name:n,vod_size:s,vod_group:t.vod_group}}function Tur(t={}){let e=String(t.sha1||"").trim().toUpperCase(),r=Number(t.size||0);return e&&r>0?`${e}:${r}`:""}function JV(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function X0(t){let e=JV(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?JV(await KV(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return JV(s)}function wur(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Dc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function tY(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function ZV(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>ZV(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=ZV(s,e+1);return r}return typeof t=="string"?tY(t):t}function R8e(t){return{Cookie:t,"User-Agent":eY,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Rur(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function Nur(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Rur)}function N8e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function rY(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=rY(r,e+1);if(n)return n}return""}function O8e(t){return new Promise(e=>setTimeout(e,t))}function k8e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!w8e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function Our(t,e){let r=await X0(t);if(!r||!e)return[];let n=await he.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":E8e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function P8e(t,e,r="",n=0){if(!e||n>5)return[];let s=await Our(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=k8e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await P8e(t,o,u,n+1))}}return i}async function kur(t,e){let r=await X0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await he.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":eY,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function Pur(t,e){let r=await L8e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||rY(n)}function Dur(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function D8e(t){return(t?.state===!1||t?.errno)&&!Dur(t)}function B8e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Bur(t){return t?.server||t||null}async function L8e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await P8e(t,n);if(Dc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await kur(t,s),a=i.map(o=>k8e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return Dc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:tY(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function M8e(t,e="GET",r=null,n=null){try{let s=await he({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:wur(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function W8e(t,e){let r=await X0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:v8e});Dc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await M8e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",R8e(r),s.toString()),a=i.data||{};return Dc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:tY(typeof a=="string"?a:JSON.stringify(a))}),a}async function $8e(t){let e=await X0(t);if(!e)return[];let r=await he.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:v8e},headers:R8e(e),validateStatus:null}),n=Nur(r.data);return Dc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Lur(t,e,r={},n={}){let s=Number(n.maxWaitMs||S8e),i=Number(n.intervalMs||I8e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await $8e(t),u=c.find(l=>N8e(l,e,r));if(u){o=u;let l=await Pur(t,u)||u.pickCode||rY(u.raw);if(Dc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else Dc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await O8e(i)}return{pickCode:"",task:o}}async function x8e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await W8e(t,r);if(D8e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${B8e(n)}`};let{pickCode:s,task:i}=await Lur(t,r,n);return s?(Dc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await WB(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Mur(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await W8e(t,n);if(D8e(s))return Dc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:B8e(s)}),[];let i=Number(r.maxWaitMs||S8e),a=Number(r.intervalMs||I8e),o=Date.now();for(;Date.now()-o<=i;){let c=await $8e(t),u=c.find(l=>N8e(l,n,s));if(u){let l=await L8e(t,u);if(l.length>0)return l;Dc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else Dc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await O8e(a)}return[]}var b8e=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),U8e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,F8e=0x10001n;function q8e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function j8e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*nY(t,e,r=1){for(let n=t+r;n<e;n+=r)yield[t,n,r],t=n;t!==e&&(yield[t,e,e-t])}function _8e(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 Wur(t,e){let r=new Uint8Array(e),n=e*(e-1),s=0;for(let i=0;i<e;i++){let a=t[i]+b8e[s]&255;r[i]=b8e[n]^a,n-=e,s+=e}return r}function $ur(t){let e=t.length,r=new Uint8Array(128);return r.fill(2,1,127-e),r.set(t,128-e),j8e(r)}function MB(t,e){let r=new Uint8Array(t.length),n=t.length&3;n&&r.set(_8e(t.subarray(0,n),e.subarray(0,n)));for(let[s,i]of nY(n,t.length,e.length))r.set(_8e(t.subarray(s,i),e),s);return r}function Q8e(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 Uur(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(MB(MB(t,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(e.length/117)*128),n=0;for(let[s,i]of nY(0,e.length,117))r.set(q8e(Q8e($ur(e.subarray(s,i)),F8e,U8e),128),n,n+=128);return Buffer.from(r).toString("base64")}function Fur(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of nY(0,e.length,128)){let o=Q8e(j8e(e.subarray(i,a)),F8e,U8e),c=q8e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Wur(r.subarray(0,16),12),s=MB(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(MB(s,new Uint8Array([141,165,165,141])))}function qur(t){return`data=${encodeURIComponent(Uur(JSON.stringify(t)))}`}function jur(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function Qur(t){let{encrypted:e,payload:r}=jur(t);if(!e)return r||{};try{return JSON.parse(Fur(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function H8e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=H8e(e);if(r)return r}return""}function G8e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=G8e(e);if(r)return r}return""}async function z8e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=qur(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await M8e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=Qur(u.data),f=H8e(d);if(!f){let p=G8e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return Dc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:ZV(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function WB(t,e){let r=await X0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await z8e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:E8e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function Hur({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await he.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)w8e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function K8e(t,e=null){if(T8e(t)){let c=Bur(e);if(c){let u=await Mur(c,t,{maxWaitMs:12e3});if(u.length>0)return Is(await YV("115"),u)}return{from:await YV("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${XV}${t}`}}let r=C8e(t);if(!r)return{};let n=await Hur(r),s=n.map(c=>({vod_id:[r.shareCode,r.receiveCode,c.fid].join("*"),vod_name:c.n,vod_size:c.s,vod_group:c.vod_group})),i=Is(await YV("115"),s),a=n.map(c=>Cur(c,r)).filter(Boolean),o=Is(_ur,a);return o.from&&o.url?{from:[i.from,o.from].filter(Boolean).join("$$$"),url:[i.url,o.url].filter(Boolean).join("$$$")}:i}async function Gur(t,e){let r=Sur(e);if(!r)return{parse:0,url:"",msg:"115\u79D2\u4F20123 \u53C2\u6570\u9519\u8BEF"};let n=null;try{await J0(t);let s=Tur(r),i=ai.getPendingRapidCleanup();if(s&&i.resourceKey===s&&i.shareUrl)try{let c=await ai.getFirstSharePlayable(i.shareUrl);return ai.rememberPendingRapidCleanup(i),{parse:0,url:["\u539F\u753B",c.url],header:c.header}}catch{await ai.cleanupPendingRapidResources()}else await ai.cleanupPendingRapidResources();let a=await ai.rapidShareFromSha1({name:r.name,size:r.size,sha1:r.sha1});n={fileID:a.fileID,shareID:a.shareID,shareUrl:a.shareUrl,resourceKey:s};let o=await ai.getFirstSharePlayable(a.shareUrl);return ai.rememberPendingRapidCleanup(n),{parse:0,url:["\u539F\u753B",o.url],header:o.header}}catch(s){if(n)try{await ai.cleanupRapidResources(n)}catch{}return{parse:0,url:"",msg:`115\u79D2\u4F20123\u5931\u8D25: ${s?.message||s}`}}}async function sY(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(Iur(e))return await Gur(t,e);if(e.startsWith(XV)){let a=await x8e(t.server,e.slice(XV.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(T8e(e)){let a=await x8e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await WB(t.server,e);let r=await X0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await z8e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:eY,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var J8e=Ce(oC(),1),iY=Ce(Xn(),1);var Kur=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,V8e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},$B="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",X8e="netdisk;P2SP;2.2.91.136;android-android;",Vur="netdisk",Yur="https://pan.baidu.com/",Jur="https://pan.baidu.com/disk/main",Xur=200,Zur=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},Z8e=(t="",e=Jur)=>({"User-Agent":$B,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),Y8e=(t="",e=$B)=>({"User-Agent":e,Referer:Yur,...t?{Cookie:t}:{}}),elr=()=>({"User-Agent":Vur}),aY,oY={},cY={set(t,e){oY[t]=e,aY.push(`/baidu/${t}`,e)},get(t){return oY[t]}},$b=async t=>{aY=t.server.db,oY=await aY.getObjectDefault("/baidu",{})};var uY=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":$B,Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.shareCookie=""}get cookie(){return cY.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await fe.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=J8e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await fe.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":$B,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await fe.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,cY.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=V8e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await fe.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=V8e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return iY.default.SHA1(e).toString(iY.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await fe.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:this.headers})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${o}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),a}async getAppShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getRandsk(),a=await this.getUid(),o=Object.assign({},this.headers,{"User-Agent":X8e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await fe.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},$n=new uY;async function e$e(t,e){await $b(e),await $n.getSurl(t);let r=await $n.getShareList();if(!r)return null;let n=await Kur("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Is(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function t$e(t,e="/",r=1){await $b(t);let n=$n.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await fe.get(`${$n.api}/api/list?app_id=${$n.app_id}&web=1&num=${Xur}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:Z8e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function tlr(t,e){await $b(t);let r=$n.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await fe.get(`${$n.api}/api/mediainfo?${i.toString()}`,{headers:Z8e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var rlr={};async function UB(t,e){let r=String(t.body.id||"").split("*");if(await $b(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=Zur(r[2]||"");if(!$n.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await tlr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:elr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=cY.get(`baidu_share_${n}`);s&&($n.surl=s.surl,$n.pwd=s.pwd,$n.link=s.link,$n.uk=s.uk,$n.shareid=s.shareid,$n.shorturl=$n.surl?$n.surl.split("").slice(1).join(""):"",$n.shareCookie="",$n.pwd&&(await $n.getRandsk(),$n.headers.cookie=$n.shareCookie||$n.cookie));let i={...Y8e("",X8e)},a={...Y8e()};try{let c=await $n.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await $n.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function FB(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=rlr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Fl=Ce(Xn(),1);var Re=ta;(function(t,e){let r=ta,n=t();for(;;)try{if(parseInt(r(801,"5CRz"))/1*(-parseInt(r(1453,"[SG!"))/2)+parseInt(r(2030,"cuKs"))/3+parseInt(r(1952,"P6lM"))/4+-parseInt(r(1136,"*QbB"))/5+-parseInt(r(870,"6m#R"))/6+-parseInt(r(1102,"Ykeo"))/7+parseInt(r(839,"ddaz"))/8===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(jB,121079*-2+6455*-115+1743977*1);var qB,lY={};function jB(){let t=["WPZdKZzqW6W","zSk+u8kOBCkO","W6NdG8kUW7Pwe1y","WPJdV8knDSkpW5uHEevR","cmoeeG","WPO1W5v3WRJdICkwWOHGW4O","ltivWPhcTG","WR8vw8oUWOG","rITkWR/cJa","xmoWq0hcOq","CeDFWQZcSSkDW48Tj8kB","imofc0RdSSo2otG7WPW","W6W4WQiGWOJdSw/cVw5k","BSklzCoHaG","W5tcUmkH","W5HjWPz2jgtdRq","WPpcKCofuCki","W6HIWRCyrKVdK8oNW5ldKa","j1XxWOVcQmk2W61LmCkF","wSoUWRK","BCo9Du/cIG","WPlcNCoE","WRdcS8kpbJ/dLG","rCoWsG","m0pcO8k/aW","W50aeCkE","WPfeWPvYWOtdLmkEd8kakW","zCkDW4PfWOJcGapcO8kfsq","W5WRW4jUWPRcIf7dJLZdRq","W7v+WQDjwG","wtFcO0dcMW","W63cSv7cMZ9ndZedWRW","ge/cV8otWOKDWQ1yW6S","WPBcJ8ozC8kW","W4VcNCovDmkJ","W7OEW7fs","WRVcOmkbqdZcKW","rbhdUGZcVa","kL/cVmoZWQm","W7GFWO7dMSkv","W7NdG8k9W4HG","pCkzp8kF","Cmknnt40","qJlcLG","W6tcK8oZWOtcJCkjitamW4a","WPVcOmkBtcVcK18/","W7JdISktW5Lc","WRX5W6W0WOxdH37cVMea","FCo1F8kXpSolWQhcHvHL","WRZdG8kgo2anW5/cN8kKuG","e8kLcH3dTuamiYGj","WRhcV8kx","sWFcNqK7WR/cJYjnpq","W68xWO7dLCky","rH3dOadcRgtcOSkjWPK","W7VcU8oNWPjKW6tcVCocvG","rsNdR8kaW7G","vSk5EmkEDa","xSoNW4/cKXu","DcldNq","WQVcQwVcGSoEEY4oW5tdTq","WPJcK8olD8k2o8oDWO56vG","DmkSW650WQK","WQ0TWRCrWOJdNhlcThXS","x3tcNsRcJmo7qG","rIFdLsJcN1xcVSkOWRZcPa","WRJcSCoLWPO","W5NcPCkVeCoUWQTAELyX","jgfeWQOScZjuW6pcLG","57I75l6L55El","W4HteCkjW7fLh8oCW7m3","t8oGueW","m1BcQCkQWQfwWPWMW4rz","W4ZcVuldHg0FtcHbW6e","lLlcP8oVWOJMOi/LV7dLVy/LUPpVVBW","WOLvWPLYWO7cKW","DenyAmoJ","W7VcPmoIWR1T","W7ddLmo6WRZdLmohaYK","WQXjW5P8WOxdKmo5dSotka","WORdPmoZbSoJWQ1BnsnpWQ3dNte","57UL5l6S55Ai","nhxdGu19W7ldGKC9xW","fxXrW6K","WRFcR8kxgG","WQS4WQO","uHddM8kmW5W","CY/dNmkRW47cS8k0vxVcKa","W7zVWQi5W5RdJCkqFmotEq","W581uxa","ttJdU8oBW6OQW5tdJgBdOa","ELFdHfO","W5ZcSSkWv8k4W70Ypqe","xSo0sGRcOvamyHGZ","A8kjBW","oCk2bSkQaa","W5NcR8kJz8k1","WQBdONNcHmokCaSf","WRXwW5ldOCkzW5qoWOD9WPG","xgpcGb3cNmkGxgpdN8oT","ssacWQ10Eef4W4BcU8odxau","WPtcI8kjFa4","W50LW5zJ","W6m3uWje","vJ7cGXJcLSoHbNlcHmoU","qZpdRmoKW7CVW4pdMG","W5BdK8k3","W4JdK8oXWQZdTG","ztpcKKJcSdu","WRBcNmoEW5CkWQddQSkccga","WQxdONVcVSoaCIWIW5tdOq","tmkJrG","qgtcHZtcMmo6xJO","W4RdM8kMitBdTWiUrMW","W73dKSoXWPhdM8otgIq","lLtdUMNcS8o8e8khkH0","W797W7rPW57cMdVdUK5N","aueUASkMm1aKprW","eNpcV8k7WQX7WOJcKapcPa","W4ldK8k3sg7cQ18","x8klW6vrWRq","mfO/dSos","sSkkumk0wW","55IF5BYU5Awg6lE4","W4xcM8onWRLKW5NcIG","WR/cTCknxwpcHmoFW6K7W58","d1rWW5qa","hue0C8kNo0DYob4","WONcK8oqASoFyCkCW687aq","WPRcK8onFW","i0q/iSo2lZjzs3G","WOhcS8knrg7cN8kpW6nIWP8","W5FdK8kYE2lcTe4","W4tdL8oVWO/dJ8osbG","WOjvWPTqWQC","WO3dUSkQyhlcVXO0kxy","W5zNW4j7WPFdJKFdPeBdRG","cvupWQJcGvzqWOeCkG","dSk3W6ZdTmo8W73dGqqDWP7cRr9B","i2ddVJZcGmoX","CebGvSoeWRNdN8kw","jSoRu0HavSkPoSkeWPu","WOeOW5P3WRNdLCkyWP9r","CubN","W5ZdOCoEWOhdRq","W6xcPSo4WP5vW7FcRCousG","W6ldK8kGzwJdRHPdhJa","l0VdQZNcH8kJx8odjeq","WQlcTCkWbIJdJCobW7W","W6JdI8kjWONcKM9dW7bNWRC","W7dcSuNcGNrfadKbWRa","d8k5W6VdTSkVWQ/dHHC1W4i","kmkqW4JcLXW5nmoEzmoy","qe7cIGFcKmoQrcBcR8oI","omkVm8kNma","pKCXimo96l+h5P2477Yg6yEd5PAA","wsNdRSo8W7C4","FSo+u2/cVq","WQFdPCk8W4mnWQddTmoaFY3dUNFdSG","W5pcH8oSB3lcS1iVacC","lMddKIddLmkGumkiiei","n3LaWRvYCKCIWOFdIa","WPCZW55AWPldK8kx","m8oyWOORW4ZdGfldSCk0rq","dN9BW64","WQiNWRaZ","D2JcGZ/cSW","jWyImmo9BajJie4","W5hdMCkOA2NcMe55bIC","W4NdQSo2emoSWRqxpeHe","WRWNWQCoWQK","W4VcO8k0v8k1W78emHW","W7BdUCk5W6nkh1XIk8o2","WRrKW6nzix7cUCoEWR7dVW","WO4yu8ooWQCItmkDW5q/","WRH1bhakW44xzx1X","WP3cK8ojASo6zSkpW6yGcG","WQxdONVcQComyYScW5ddJG","zubNz8oBWQFdR8kskb0","W5xcU8oDW67cLG","ESknW5bEWPlcHaJcVCk1qq","A0T1sCkuWQFdJCkakZy","5y2a5yUI5Psn5lIbCSou","wSohrSk9y8kqW7FdNLLK","nSoqWPi6","WO98WPjvWPJcLuVdUrRdGq","zSkGv8k+vmkUW7C","u8oTu8kKlG","W4lcOCkGFCku","ifhdTIC","mSkmW5zZWOVcLKNcP8oRdW","DdpcTfhdNtzhW6vMWPm","c8odhuBdRq","W63cM8oXW4lcTG","mNtcNmo8WOtdPmo3t2RdUG","lCk4eSkvbG","5PUu5Pw8vCoxa24V5OID5yU2","z8kjDCkck0OrwsRdVq","W5pdG8koW5xdUd8BWROXW54","W4ldOCk7q14","W5BcUmkX","WOxcNSkirLpcINySvI4","ceBdKYxcOq","W6pdTSouWR/dGSohxhNdTZ0","zubNECoOWRBdNmkhoWe","W7GsuZPR","n1ZcVa","WQpdUHZdGxCuqMLhW6m","rSoogmkXiSkiWOpcQ0WM","WRDrWP8","zt3dGG","W6ldRmk5W7tdQbuWW7m3W64","e0/cPvZdUtFdJCoyW43dIW","W5hdQSotW6lcMSokbYFdL0q","W7FcU0S","WQ3dNmo+rGj2WQpcI8k0dG","ifRdQWJcGCoTga","W4KCfmohl8oJWONcMgu7","W55SWR1oCgW","rdyyWQFcHLzzWOKDEW","W6aXvW","WPmRzCo9WQu","WPJdQsTnW6OMW7pdNSokW4C","WQVdRr3dHdXgwZetW6q","xZ/cP0NdGG","ESoVt2NcRq","f0brW6i3","iMlcR8oMWO9wWPe5W7qz","WQlcQCkKoJy","W4RdJ8k2W4HY","W4ZdJWOdWR9ZWQ/dGCoaW5u","W5GVW4zmWPZcKLBdT1e","lwLLW7GP","amk7oSk0lq","WRhcV8kxndpdImok","CJFdHt3dTs7cI8orW5lcMG","td4eWRr3B0aSW6FcNW","kSkQWOeOW4/cGW7cSmkPrq","vWJdUSkr","W5pcImo+WQfO","bXmw","WPRcPmoqs8o3","BrXrWRVcS8kl","WQmKWQy0","DdVcQL3cU2C","AmomyxZcVG","W5xdL8kXFwi","W5tcVSkOvq","W6tdKSoRWQy","gw7dLH3cPY1NWRNdVNK","W4LzWRnmDW","W63dK8oRWR7dICkCqwpdKXq","W4pcLCoLW47dRSoU","yMBcKa7cPdvX","WOJcNmoVzSkTW6G","WOxcICoXBCkWW6npcSomWOu","B8oHWPVcJ8ky","WQZcQgxcNSogEW","W7WxWONdHCkVW5KfWOXV","t8kVB8ojkq","BIJdH8oQWPpdTSk2ccxdLG","ASoxWPFcT8kj","W4RcT8ovW7hcLa","kSkBj8kkjcdcNrFdOGa","lgpcV8ouWR0","WQRcK8kVW67dNSodgcxdKqe","rCk/WPfjWPBcVa7cNCkEsG","B8k1fa0","A8kUdHK","aX4d","jSkzomkses3cJJVdVWa","W7ZdG8kPW79mfefZ","W5ddGmkTW6hdSa","ch9FW78P5P2R6l635PYt776457Iz","W7JdRSonrNtcL8kyWQ9KWOS","W6xcVCo4WOm","uIJdOCoxW6m7W48","WOL6WOe","FuldIeHc","W4WCdSkPBmk7W53cN29z","kwFcTCkA","eM3cTmoL","o1/cRSkXhW","W7hcLCoKW47cTSkUoWS3","sr3dUa","EfpdH1HMW7C","FCopBG","CqBcV2NcPq","AsBdHmkG","zaZcLuxdKW","W7tdJSo3W6Xn","zXBdP2SYWQ7cL0y8ua","W7e5W753W4pcLJFcT2Su","xY7dQSo6W4SV","ebqCWRJcGq","ACk5p8kmkcxcMwFcP1S","W7xcS8o6WOnyW7JcPCoTrY8","WOdcNmo3Amk6W6vNgG","WPe0W5PCWRJdIq","W5yKW5TU","WRe2W6iljsZcUCkcW57dOG","W4JcPxO","WOyHW49j","kCopb0RdVCo/evm","zcJdHmoRW5lcO8kOfI/dIW","dSkXbmkSlW","omo9WPddI0n6yCorbSkn","W6hdLCo2WRJdN8kjgh3cNqi","FmolymohCxhcMc7dSfK","rSkYW43cGfWmomkqoSkb","W4VcLSkKuCk+","hSktoCoiC3pdNddcOfS","WPxcH8oY","h8ooWO7dOmo7W73dN0zQW5m","WQRdMhVcGSocCcW","zSkciSkqAa","AMyozCkImeK6nqO","k0S5imoGCZH+yue","nCodeeZdS8oZbYu8WOi","kuNcVSoJWOHuWPyRW5i","WPxdHM3cMSoM","WORcLSo2","W4tdLCkGA3tcTgv0gsK","gMNcVCooW5iEWPddMftdTa","W7tcHSoFW6hcKSkjxayfW4O","WR87WQy1WOpdJ3BcTW","cwnrW6GPib1P","lvZcMmo6WQqf","WO0jsCkiWRCUxCkvW4y/","W7OGrdTIW4KEm3S","WQzaWOvQWRtcNSorkmknbG","dmkghmkdjColWQdcHGaK","zfFdM1P8W6VdUafO","xNJcHq7cL8oUrZC","WPXBw8oemCoR","kKagW6ddNXqd","jvNcPNK","WRfpWP93","x3tcNtJcKCoUwdFcTmoQ","W7ZdHCkuW6TX","WQtcV8kfad/dL8ohW4qGW4q","W5CRW4b/W4BcK1FdSfRdPW","oglcTSkEjSkxwSo0WOP1","WQmMWQaRWPJdIN7cOq","55M45B6n5OII5yMc","t8kADCoYkG","iXqYWRJcOG","dhxcQNVdGfylWR3cLv0","phhdS8olFComdSk3W5iS","cSopbq","W6tcNSkJleyLW7xdGCoHtq","W6lcVmofW4dcKq","xmoiWPqZ","o3tcNSoU","WQL4W7jXWO/cMIVdQZ0z","ggNcHSoRWP8","qmo0sue","tCoLWQVcTCkVWR7cHq","C8ohW45PWPlcNq","Bmk2W5BcJbaXgmkv","WRtdRMVcImoBoNPpWOdcPW","WOy+W51VWQdcJfVdIbRdLW","W7rRWRDxE2pdPmoh","fIldUbRcV0dcJmkbWPBcRW","WRhcU8ottSo1","abOdWRW","x1pdNLmKW5BdKtLyoa","WO4JWO8KWP0","zCofWOxcK8khWOZcVtO","W5JdQCo7W4OlWR7dSG","W5FdISoInmoTWRaCtCohWOS","rJJdMmoTW6aaW4/dNrZcPW","W57dHCkIWP3dSCo6tcGsW4u","rH3dOadcRgtcTmke","zuPIC8o8","aX4dWPZcN0P2WOLcoG","W5SFWPtcGmoeWOfkWPa8W58","W5yKW5f2WOZcHfRdOG","WR3cKSk7WR8vsfn3fCkT","WRdcS8kpfXpdGa","p1S/n8o9yqPV","BCoLfmkPACkPW7BcMSkrWOS","j8ohCCkklZ3cKsRdUa4","W5W5WQNdOG","vCk8qSkzAq","W4iwdCkAsCk3W5xcItTL","WQzaWOvQWPZcKSomka","W6iUrdW","WRZdJG13","oe0PnCo8BHrV","hgtdKGdcPsmIWQNcHqu","xwpcMLBdNmk4AhFdGSk5","WRRdSMhcSSoizsS","WRWTtYTeW4eZbg0N","W7i5tZbfW5ijl2y5","umoJWRxcRmkCWQJcGWu4WPW","wsNdVCoHW6WSW4/dJ0O","xHNdHCo7W6C","mHhcRKRcNw4rW715WPq","WOPHW6y","twlcJbNcL8oUrZC","ESk2W5hcKbyNjq","W6pdI8o+WRO","WRfsdSoGWPnY","zJFdMCkPW4pcTCkNdIpdJq","W6WPEILz","zufWt8o6","5y6r5y6G55AK","WRSpWO5SWOxcKCoBjCogpq","uYddKfhdOeRcSSkJWOxdJW","rJldQa","m8kxfb8zs8oNi8koW7i","W6tdL8oVWQldK8ofdZJdMWS","lCkFiCkxjc3cTsW","cmoFymk8yNRdJI3dP0O","Bs9IWRNcKW","W5pdI8k5W43dTa","AbJdQSoJW40/W6RcN1y","W7O8jmk/p8kZW5FcIJTU","WP4ut8od","W4pdPmkRWQpdM8ouiaVdPGm","W4SzdCkzBq","dmkibmo6FmklW7tdIsq2","WOxdP8oOb8o3W70dEtbu","wG3dUdBcRNtcICki","vmoKz8kMba","W43dMCoaCCkPW6XlkCoaWOG","WO3cL8on","WPxdJKNcPmkjDdirW5ZdTq","xCoHvK3cT0ilAaq","eCkWW7tdSCo7W77dHvy/WPy","lCkBi8kF","W6ddLCkKzLdcS3W5mba","xdpcQ13dNvSDWRmNW40","WRi9WQ0RWOJdHW","oa5zWQpcSSkDW4LZACok","lu0UbmoJCcrRFL4","WQpdT2y","stZdU8oRW6O","WR/cHCkUg3RcNCkpW78XW50","FCkGW4xcLX01pmku","hvawpCoN","W7NcMmoJW5JcVCkOsGe8W6e","wLNcQ8kdW5yzWQvyWQzA","y8kUeY4nq8kU","W7RdG8kIW7SmcL53hCoX","kLBdQq7cSW","WOVdOmoOdCoTWRHfhY1t","WPeOW5PAWQG","WPOhWPat","t0PPt8ohWRVdJCoCBuC","W4NcPSoLWPXEW77dUq","keJdSsxcM8o4fmkCn1S","W43cNwJcTXy","c2iRDSo5yG5c","m2JdSdVcN8oncCkCibS","dNVcQmoeE8opg8o4W5uU","WPZdIbXuW48","WRGoW4CPW4VcJSoAj8k+pa","zSk2uq","D8k0gG","Cmo4FmkjiCoTWQVdLSopW5e","dmoAga","y8o6xK3cTuKdiuH0","W4VcO8kNsSkUW6S","WOtdI2hcOmol","eqGsWQ/dGKLgWOqCnG","fx5xW7yYjrv/","WP/cGSoq","mqhdRrOGW5ZcGLO+hW","ux/cIGFcJmoRtYe","dSoBCatdQbvmpKz6","nbldV8k6W5CtWO8HW4Oe","6l6c6zUi5PcY5Pw36zck5OY86i+h5yY65Aw06lsr","i1JdKddcTW","e07cRLNdVtNdJCoyWRJcQmkiWOtdPKy","DCoPhCkUACk1W77cLmkBW4u","W5WIW5m","F8kYW7tcLtfI","WRJcN8oztaRdHNDODNO","CCojtSk9imojWQxdHKj5","qCo1e8kldwLXAfVcHW","WRZcPCkzuWvWWR3cG8k/hG","ESkRdr0fumkMy8k4WQK","BGLdWRZcSCkxW4LK","WQFdOSo2W48","WRnZWR13WR4","W7/cI03cHY1m","zSo0y8kgnq","W6JcH8oxW5NcQSk7hq","ySkOqSkXAmk/W7RcJmkwWOu","B8knW5vVWPJcGbi","cNVcKvldP2GyW7ldMLu","W48RW5W0WOhcLvhdVu3dQW","AhDNtCoQ","W7lcPComW5ZcVW","hK/cPCkvWPqtWQnqW7Se","sCoVtvtdTqugAXS2","W7jevSoanSoYWO/cSbnC","WQxcSSkcad/dU8oCW681W58","W7lcNSoaW6RcKa","W5TdW44","WOWSW5rjWQNdN8kbW4vkW5e","amkLcHFdQHXuierJ","DJpcSLK","WQKGWQiyWPNdGxdcT2S","uCoXDSkfha","W6pdMCoGW4tcVmo3hayHW7O","W6LSWQzvzJJcPSkn","W5qPW6DoWQK","uCoXeCkwxYC7zutdTG","W6OFWPBdK8kVW5KlWPXVWOW","AmkAW4G","jxtcG8o/","WPFcKCoGC8k8","yINdIG","W6rvw8owumkbW7hcNYb5","W68qomksuG","6lYt6zUw5PgB5PsN5yYP5PAn5lQZ5A+a5PAC","CCoaDCkIlG","uGldRmoKW6SUW4JdNwZdUW","W6atWPtdKCkeW5i","W7lcS8o+WPy","W5/cI8k5bxNdHJHRFq4","W67dN8k3itldTa0Urxq","WQ3dJWC","W6FdISk/W7WzgfnIf8o3","W6NcHCo3W77cMq","CYJdUSkXW5JcV8kOhq","W7xdHSoTWQVdLmosmsxdLG","dNvsW6GImHHtW4dcKq","BCoQuHazr8kVomkIWQ8","BcldHW","WORcMmoSza","W5VdL8ktW7NdKI8rWQWlW6G","f3ddJb3dJSk2bSoDALu","WOFdK0VcPCoh","W5hdH8koW5BdIdihWRS","55U15B+Z5OUk5yIq","i8oWECkvvCkrW5FdLmoFWOy","pCkRhaiFBmkKEmk1WQm","wmk5t8oNhxGKFWFdLa","tmo0WRVcTmk/WR4","vHNdVWu","uSo8rCkGpmoDWRhcQdqN","WQ4TWRuUWO7dI1lcTG","W7ZdJ8k8W6zag0z/g8oX","lseYWOlcVhD0WQr+Aa","AmkZhamjBmk0y8kWWRi","BCkHvmkWqa","BCkbESkjzW","zXhcO8kOW64IW43dJbpdLq","WQ0Sr8oIWOq","AsVdTCobFSomxSk4W5mU","lv0jW6hdTmojWO4GdmkR","WQufW68","WP7dPdHrW6SWW6NcRSkpWPO","WRddRbRdKG","zCk3W4D2WPtcLGJcPCkfsq","vSoVWRtdR8oZW63cGqq+WOC","W7/cSCovWOrtW7hcTSoxBdq","W77cUCkRuCkZ","W4NcS2WgWR0cWQtdHSk5W5a","WRK8WQiZWPJdNq","WPdcOCo3zCkA","W5tdRmowWP/dIq","W63dPqpcGtfnctWtW7O","WRxcQmkgeY7dGCoPW7i4W44","t8osvCkGoCow","aHqfWRdcUv9hWPTBiq","hmkMerZdOrbuBZSsW6ZdN8oP","W70RW4f/W4/dLa","xNdcMWldLSk6gwxdNSk4","WOZcRmkxqa","W53cR8k2","tY8dW6dcGCkqW5rWg8oe","W7hcT8o+WQDAW77cISotxIu","W50CjSkDta","W6JdICkLW6RdJG","WR9kWPm5WQZcMmoDj8khCa","WQGxW4nVWP4","WP1muCoflSoQW4ldGMi+","W4NcPe3cMJO","WQflWRndDhddOmknWRJcSa","W7/dPSkqzM0","A8kYW5dcKra8mmkUiCkd","W6L3WQfr","W4/cO8km","xCowxq","oeZcPCo/WRa","lSoNbLNdHSoyfIrTW4y","WQKPWRCKWOu","W7dcS8o4WP4uWQxdT8kfhxm","C8k0dGu","W7vRWP5prq","6l+P5A+/5Psy5lI45OQQ5yI5","Aq/cV2hcO8oWhSkikKm","cZC2WO/dMePrWR1KgW","ytJdQSoWW6S","CCk9q8kOzmkVW68","WPaLW4HyWQldLmkaWP8","cKVcPa","WPaitmofWQ8QrSkqW78L","f0VcOuFdVdFdNCoiWRBcSW","A8khrSkYASk5W7u","W4ZcUmkTw8k15P6Y6l6Q5P2l772P57UG","W6NcTulcLJzj","WPVcJSkBCtW","bNhdMXVcU8oqnmobjLS","WOZcNSonE8o/","WOpdSYC","sNtcMb7cNmo8xG","W7ldHmkNafSU","W7pdR8kmW63dSa","W5hcPmkhtmkPW7Ku","E8kNW5lcJb0Zomkxla","jN/dUa","W6S0qYa","tdaCW40UlXrJW4pcJq","W5hdImkjW4JdNW","W5VdQmkzW5v7","BSk6W4ZcGaa","CCkhW4m","WQW9WO8sWOa","W73cNSk5gW","csBdNfZdISk3gwpdHCk+","xCotqmk8","hmkxqq3cQCk2iN8JW7e","hSoEefFdQ8oP","W5BdGSkIENlcTa","W4dcR8k+rSkJW6avlb1/","WP7dOc1lW6SNWQtdG8ojW5a","W6NcMmk6hvy","W4RdJCkt","uHNdPbRcQG","oKKOnSo2","WQBcG8ojlSoYrmkSW6eddq","uNrBW60Plr9TW5dcJG","Dur6uSoTWRJdNSkLnW0","tmk8mYeM","WOlcRM0tWR9JW7hcNCkAWOe","W6bTWQzn","DYRcO1VcP3ey","ytZdTSobyCoefCk5W5mS","v2lcMqZcRW","bSophW","5OYD5PYC55Us5B2Q5Asw55kz","ELb9ECozWRldISkbprO","WOqHW4LbW6lcJ8oaW40rWPa","W5zXWRWtitNcQCoAWRVcTW","pIvFWRxcR8kuW5DHE8oA","g14RlCor","wdlcILBdUKqZW6JdHvq","WRZcImkBndFdPCo1W749W5O","zvjYrmoz","W7jXWRvl","D8kWr8kZzCk5W6NdL8ooW5G","DWnvW6/cGCkDW5HRo8og","dfBdQ2BdGCkQr8ocDGi","WPfPWP1UWOq","C3nFxSok","W5tcQSoGWQbE","jqtcKaXLW4BdSsjuoG","BmoAW4foWOxcOrdcSmoIqG","WP7cKSotWP/cIZKAW7mbW5i","omkCgSkhbG","WPiHW4HBWPldMCkCWP5A","W7JcOmk7j0a","lCkti8odmZRcIs3cSbS","lLlcP8oVWOG","WPVcPmkzra","g2ZcPh3dSNKiW7NcHrO","mvWyWRORkbTPWPtcUq","W7qdWPtdQCkrW4Od","W4tcMSk9q18kW5hdQ8otvG","W7dcTsRdNSoOmhbtW6xdMq","W4lcV8oRFCkv","Aa0FWRNdT8oxW4TYpCkz","A8kEW63cSsK","DLz4ACoC","lxVcSSkEkG","6lY76zIf6l+v5A2g5AAO6lsR77+I5Pwz5Rkb6i+s","n2ddTgJcUKiNWPCxW7q","WRZcLmk/W74gsaaZr8oE","W4/dPCofCIhcMhi0mv0","rbhdUGZcHMu","C8kQfruu","brtcP8ojWOGu","pCkRW4XOWPlcNGpdVSoRfa","uG98WO3cIG","W4jOW7bGWPNdT8k/W5yFW48","qWJdVW","kGW8WRxcVW","WQJcGSoFt8o3","CLbGtG","tsJcLvS","W4PeoW","rmkPtCozeq","qrddTZBcU27cLSkfWPm","sYz7WOhcICkVW7u","WQ8JWOyFWQq","zXFdLahcOmoupmoazvG","kSkDhITFwmoWu8kqWRq","W7DTWODFBq","o8klaCkOjG","lYGHW6VcMeKcWQ4l","W7lcGmo3W5/cRCkP","E8kShCkTBCk9W7lcLSotW4O","wG3dMaiIWRhcKq","WOq7WO8QW5FdMbpdTeBcUq","W7xcH8kOabS","WP7dQYPnW7y","W5ZcTSkYxW","WQaMWQq2WRq","WRhcKmkRW7ZcISkFwGBdVYapvYm","n3pcQ8kx","zCoGDCkBgW","W4uIWP5/WPFdJxJdKXpdSW","rXhdRXJcLq","bSoMWR7dSCoZW7/dHe5LW4y","k10Ulq","ebmSW63cSGDfWP1qiG","h8k/uCozc258kX7dNa","oSkFjCkiiJO","x3tcNsRcICo/AtpcGmo/","jCkOu8kVzmkYW6/cP8kwWO4","kMBcP8kgoSkh","ECoyz13cGa","dvRdSGJcLW","W6JcMmkvASoHWRCBzuPM","WQeHW49+WQldNSk8WOPAW40","W4NcGCkkrSk6","WQRdKCkUW6hdISoubZRdMWG","EmoVWP/cPCkh","WPVdJwpcHSoL","CdpdHCoAW5u","dfVdTs/cKG","q3zyq8ozWRNdICkFD1S","l8kto8kBgcVcNtZdSWG","WPrhWO9ZWRi","jf07e8oa","W7j9WQy","pXu9h8khWRldGSoEdtO","z0z4sCkcW7FdR8kBkGy","wIFdTqxcPMtcK8kuWQlcKG","EaLcWQBdQConWOG3ESoC","nLlcQW","WPvLWPG","W4FdKmkuW5ddGNmcW697W6C","W7RcJSkNuSko","W5SRW4z7","qmo4D0RcSq","vMa2fmkzW7lcM8k3FvS","WQtcV8ksbZ/dL8oB","b1lcO8or","WQ7dQgG","xJJcKeBdSwGZ","FSkjW5rUWP7cMWFdVSkZtG","ifRdQWRcLCoPbmkplvu","W7NcHCkU","WO/dOc5xW60RW6ddNSksWPS","W5dcVmoNWPHt","mXCQfCoCWO7dUSk5adG","WPPBuCoa","ArddSCkgW6y","FHddG8kKWQiNW4/dGLBcSG","yJpcTuVcRwaBWRyTW78","pfZcVSoJW4KgW4X6WOvd","W4ldK8k3xw/cPKHLoIS","WPissmoj","WP1UWRvmWR8","AG3cPvtcM2yAWQyxW4K","Fmk3W5FcNWeamSofbSkI","WONcImkCCr4","W4K1WQ/dPmk5W64ZWRDEWQq","ddhdPSoLW6S/WPVcMapcOG","W7GOusfEW4SfpNeV","rmoWC0/cNq","W4RdJCkVnCo3WRmzsSkvW4O","WO7dLgFcVCo6","zbX0DmkJlLqZoHO","ivBdSZ3cKCoR","laZdO8o5WO5AWPOHW49F","dhBcQmoQWPi","WQeuW6H5WQS","W7LhWRfjFgFdP8owW5ldQG","tSkbW4n0","ArhdOKBdUJldISooW47dJq","oLxdHLi","eCklj8oolalcVHddGqC","AwJcMSo1WPVdTSk2fIVdLG","chldRJ/cKmoWqSklbWW","iCoZW6hcLqm4nmkMmmko","W5RcLSkRW7JcK8kgrGBdSZi","BHldGSoYW7C","W5XiuSoykmo+W53cKN9j","W7RcI3/cMZ5k","igddTGRdGZffW6mAW6m","pNFcSG","W7dcGSkOhubVWQpcNCk9hG","oCoLWPJdLufSyCojemk/WOXJg8kE","t8okD03cVKS","xHNdJmo5W6C","W4NcUu7cTdq","W6ZcLCoIW4JcSa","p3pcTmkBymobcmk3W40P","pxFcSmkBlmkrCSoK","cfBcTSk2jq","WRpdHCkKWPRdQCkibW","WRlcV8kvgZNdGCoMW78","DIdcR07cLYWcW6nNW5m","zmk9rSkzBSkRW7xcLmkqWOS","WQ4yWRCiWPW","tZZcKuFdT3mMW47dGv4","W6CmW4j8WOG","rHNdOGG","pvJcUmoCWOLxWRyP","y1v6","WO3dTcPl","W5FdVCkrW4/dItC","EHNdG0X9W7e","W4PXWQykidhcVSkmWR7cTq","W4CUtsfrW4yqEcTV","W7FcISoLWPTT","o1HFW60O","AH3dPmoDWO9DWPSIW5Wd","dN9cW7mJjai4WOq","cSoAbCkODCozW7FcLuCR","W6dcHmoMW4FcSCk5bry6W7W","W7xdU0BcGtzk","kMVdUHpcVq","W5JcTMOrWR56WRxcU8k2WRfQW7/cSa","uYldV0dcKxy8WOuYW5i","W6VdUmkLW4JdVq","qSoWsKpcRu0","l8kBjCkxAh3dJ3/cUfW","o8kFjSkliJVcIa","WOCqW5PqWPK","zYhcO0RcNgizWRC","WRi9WQ0yWOZdNNi","sSo0ueu","vwXvB8klWRBdNmkdmq0","6l656zUN5yEz6k2B5y6O6ik85BAc6l+l5P6RW4q","W4ZcHSk6pxu","bmkhauldSmk0igjGW54","5yI+6zIm5PA35lI55OUw5yMN","WOBcLCkWjG","BKP0","heRcJSoAWOq","BINdISkPW5/cSSkJcq","gSokxCk5jCorW7NdMeDN","W4WfeSkADSkXW4BcJJTL","Emk8f8oog3m7uL7dVa","W7pcGCoZWO3cRmkYeq8XW70","vGRdVWq","xmkpW6znWQW","bSocg2FdUW","W7BdGSoR","iNxcM8oGWPNcL8kGgYBdKq","mh7cO8kb","ivBdSYZcVCo9","WQKPW48hW7JcICoeW5qmWPu","kvtcTSoV","CSoeW68","gdNcOIpcRCoczN7dKmoN","WQpcVmov","twxcGutcISoMttZcMCoL","WP0ud8oeWQ4MamkyW5i/","uxRcJeVcVSoQstNcN8kI","xJdcG0JcKq","v1f1hG","W5/cHwRcPWm","WPFcNmo1","w3dcNqJcKq","tCkCtmoHmG","ofhcRCkrgG","smkXrSoYnmoVWQZdLSomW5W","BHZdNmodW6C5W4JdJf/cVq","W7SCW7TsWQW","W7tdI8ktWPdcK2DuWQzIWRu","m8k1fmkPca","FmkGW6ZcJYm","mHWIemooWRxcM8kspfG","zaNdPSooW7y","E8obWONcI8kVWR/cNXm9W5W","f23cOCkXWQ4UW4JcHgBdGq","W4pcPbRcHcPCfG9aWPW","tSkGW6u","W7JcISk5eG","rHH2WR7cPq","W4SZWQ4","wmk5t8oNgM4NFWZdHG","W4WsrmkdBmkZW4dcN29m","lK0SlmoWzs5U","WO/dQhxcHmofEsnoWOdcVW","hw/cHWxdT31XW7xcG1q","WPWCvCog","wxFdPxm0W7pdJGvLhW","WPZcH8k8xYO","DYRcO1S","d2byW7mZ","6l6O6zMD55Ik5B225AAV6lA/772u5PE35RoB6iYf","tIDJWPS","dNvhW6OOlWnP","W6tcT8o5WODuW77cT8ox","kmkkj8kslIVcNtZdVWa","WOufWPmlWQJdUL7dTZCD","W68eWP/dL8keW58SWOfMWO4","lmoAawldQ8oUma","pxpcSSkt","W5PVWOvEW5ZdL3VcT1/dQW","W6/cN8k/gLONW7RdLCo9","W6FcM8oKW67cUCk5da","qH3cLwW","vxtdHLRdICk3bgldNSk+","W6K5wX5j","eNxcU8oCWPi","EHxcH8ocWRj+WRnHWOSC","qmk6tLFcTKS","WOqVW4LfWPVdN8kbWOLwW4W","FmkyW5r2WPtcKaFcPCkZtW","WRO6WQWXWOtdIN7cOa","vvuuWR/cJaGfWO5wEa","WPZdKCknW4FdHdLjW7GJW6G","W7dcHmkQ","q8kTvCoBaa","WOJcOmkpEIVcMxGVi0a","EZdcTNtcKq","Eq1e","gNLyW78ojq","o8kFj8ksjIVcMq","WO3cHSoyBmoTFCk5W5aGdq","WOpcPZ/dHa","e8oquCkMjCodWR0","vSoJWR/cJCkLWQNcLbP+WR4","xSoGv0W","W47dK8kT","W7VcJSk5mKqWW5ddKSo0sG","WOZcQ8kujbm","WOJcKmoVAG","WR3cV8kn","WPerrmouW64","C1pdNxbWW7xdGGT4lW","eSoIeSkwwJXHxGJdKW","WP7cKmofsCkJ","W7/cKSks","u2yfWRuMnarKWPVcIG","lgdcQG","kqBcHWy+W7RdIuvzoa","uWDkWQBcQSkuW5OVyCob","ndqKWOK","W5NcP8k2uSkYW7SmiaXO","55IX5B296l6D5P2A776F6yEn5PEx55MX5B2B","W7BcUwxcSaO","5PsC5lII5yI35BIi5OMj5yQ7772G5B2q5AA86l65","W5hcVmkJhSkCW70opWOU","x8ojwCo7omowWPVcJrGG","i8oRWPBdHq","WOZcRCkmvY3cQx8/","k8o7vsyfxCkJEmkMWRu","WRxdI8kma0qSW7BdPmoHxa","k3FcT8khkSkhtW","W7pcKCoNW57cVCkPea","aaKEWQVcIHvdW5KDka","W7RdJSkVW6fhh0a5rCkT","i0m/zCouzqrHyqm","tCkqzmklrG","yMZdS3vB","WOxdSxFcGmoI","sbFdVWC","zqtdLSocW6W","W4HvWQvxwa","WORcPCowBmoYwSkxW4KXsG","W5aMWOiyW7VdNmkqWPSlW4u","Eq1eWOZcP8kiW49Jpmko","EtRcJCk6g8k5D8kSW4n2","WQBcRmk1eYG","W67cJSk8bLeZW6C","W754W7FVVyVNRQtLVkVLKjxPHj/OR5a","yCk4W4xdHtqXmSkAoSof","ESooyCkPjdhcQI3dRG","6l6C6zUL6l6Q5A6Q55QH5B6H5yIG5BM65AEs6ls/","WOmFW6HbWQRdLa","W7RdN8kNmW","5y+c5lI96l+u5yEs6k+t","xdZcJX3dRg4PW73dKfG","pKSYja","WRtcTmkhvr4","i03dTJ/cKCk2bSoDALi","WOZcLSkcFNFcQ19xeYa","vCofuCkzi8obWQhcHvGA","cLddPsdcMmo1eCodCbO","p0y2imo6lGrLyWu","W4eOq2CiWPLgEs13","a0dcLmkiba","jSkzWPKQW5pdI0RcTmk0gW","uSkPumondxG1","aSoDh0/dSCo7pgD8W50","gCofiLFdRmoZnNa","WQvrWPPWWP8","WPFcKCoGC8k8W59hgG","vSkbW5a1W4JdGfhdV8oPfG","W5OXFZbj","uZxcHg/cOW","prBdQe9IW7pdGJ9Pcq","WQ8VW4fbWQhdLSksW5ukWO0","CSkWgfeRvSkKFmk+W68","WQZcJmkcArK","FGJdImoRW6a","pt7cQv/cM20","h1FcGSotWRf5WRzIW6GH","WO3cKSoKiCkEW6vnfCokW4m","qZ7dKmo7W6OQW5tdJgZdPG","qSo8sK/cQG","W5uLW5T0","WPVcT8keuY3dMwbQAuG","sY3dV8oKW6SOW4FdNvRdVq","BZpdNCk1W5NdRmoPvtldJG","EGLeWQ4","WORcNCosE8o3","W7lcKCoI","WPZcQSkacZdcG3G3i0C","A8k5qmk4lSkUW77cI8klWOu","W7mTW6jgBYNcUmoRWRNdPa","teBcHHNcKSoBuYlcLCkK","fH4wWRa","a23dTJhcNq","WOfiWPGVW5/dHSkEnmoEBq","gmkEnmkTdW","eN9nW7SF","CfpdHv5R","WORdHtnaW7C","W5BdGSkXz2NcOfnMdW","kf14WRzNlrLNW5hdNG","xJldPmoTW6W","EmkYW5lcLHy","m8o4gSkkAmkYW7/cL8kiWPK","W7pcI1JcNtjbaG","W73dKSkOW6znhvTWdq","W5KQc8ksiG","tXBdVSkaW6W","yYJdKrJcUq","WQ/dHmk4WPRdQCoPuei9W7y","WQS8WQzRW43dJgK","BmkHW4NcKXz7j8oaESkk","WOJdRSo1dCoQWQaiBfuZ","kxpcTCkbomkBsCoK","cLJcRSoFWPqjWPTkW70b","W6FcM8oKW4BcJSk/fHe6W7W","EZtcJWxcOcbNW6NcGWu","WONcTCkGb8oQW7SmmLe3","WPVcLSkeAqa","zJpcR1q","tHFdSq","yL/dJvPG","W6pdHSo4WQVdSW","yu1YECoFWRJdH8kwnG","vJ7dMfVdMCo8tJNcPSoU","W7vXWQzjCa","m8o2aSoZmCoYWQVdMmkSWOS","tmoac0lcSH0","o8kFmCkmiJVcLbFdOGa","je0dh8oF","WRdcL8kPW7NcICkFxZJdGceHzrG","x3tcNtJcKCoUwdFcTmoU","wCopgSk3i8oiW6S","W57dQCkjW5S","WPqurmojWRvKh8osWPL2","DIhcMX7cMSoehqhdImoC","WRBcKCoIWOvuW73cOCkDaNq","n2NcMCoRWPRdUmo2wHNdGW","lCkVjCks","WOSpW5j9WO8","pIzKW6/dT8oiWPuWB8op","m0FdNcZcJq","rSoxD1BcKq","WPddNCotBCo2ya","WQlcUI8EWR5TWRC","WQ4PWRCM","kvdcSIRcLCo6gmkj","sGZdOHNcVdVdKSopWOxcLW","WRxcLmoqmsZdRSo6W4PGWPS","WRdcLSoWWPldQCk5bqrNWQm","WQ/dKSo1rWz1WQRcISoLdq","WReUW7jQDhFdVCokWR/dGa","FSkjW5b5WPu","tmkPDSoDcKaOEuBcGa","hNdcQSoTWR4","tmklW5xcQbC","WQhdL23cVCoJ","W5NdR8kRW4ddQq","WOBcUmkwnXC","WQ5+WPv1WOlcMmoqomk3ma","W6dcICkWW7Xmfa","W44Hg8kNsa","WPtcJmoYAq","cbqq","hCkSfbddQbvswsWsW67dNCor","W7fTWQfn","W5xcJwNcNaa","lNe0fmoN","x8kAlJOjqCkPCSk9W6K","rSkJu8o9cwGP","AtZdTSoCF8oAc8kGWRb7","AWJcJ3BdSG","W6xcU8oWWPi","yurJuSoiWR/dJCoCmqC","dvtcOSk8W5iiW581WP1e","WRpcNCk/iv8MW4pdH8oRcW","WQmKWPW0WOtdLh7dR1zM","CfFdNv4","WONcSmkKqWa","CSkFW4P2WPlcKGlcOCkOtW","ehLrW7qZBKaIWO3dNG","FCkYerqcuSkQCG","ybRdU8osWRauWPdcNGBcPW","W4ZdMCkTit7dP0PYgty","nhpcTG","hwfoW40+","W4OqfSkLD8kZW5xcNXzR","W6XvuSoF","gMVcR8ohW6m+W5ldGqhdKq","leq7mq","f3vnW6K","zfFdMKXnW7ZdIaXP","W4ldKSknW4RdJJ8vWQO9W64","FX1eWQC","WRlcQmkkbd/cI8ozWQP7W40","W7xcS8o6WOnyW7JcPCkDwI4","WRKZymojWPq","FSk2W5lcJbuThCkEmSkf","wwtcNqm","W6hdG8koW4pcKwG","F8otthpcR01BpXWr","E8k7W4hcLXylomkv","WRuPW5uEW7NcGCotWOijWPC","lCkFo8kBmY3cUIhdUGO","WRRdMgZcGCoaCcWvW6RdUa","f3vrW6PQibXLW4lcMW","D8k0ntGI","xCo3WO3cL8kq","EZhcO3xcNwCrWR5NW60","gNLyW78ykb5QW5S","F37cRa7cTa","AcpdJa","WQ0TWRCeWOZdNM/cSw1o","wdJdVSo9W6C4W5i","WO3cKSoDWO7dSduAWRO7W7y","tmoZuSoqcxKKuGddKq","WQ0TWRCYWPJdH38","mKxdGv5GW7RdUafOvG","W7xdHSoSWR3dPCofasJdLZS","WOOyuColWQaOsG","umoUWOxcQCkU","tCoKjqpcR8kQDIC1WPi","dZmfWOFcUW","6AMo6k2g56co55Qw5B+8","WOldOdng","W5xdJCkzW6/dOW","ECoUWPddI0r4k8kzEmkV","h8opaLpdSCo0k3i","FZpcTG","WOBcH8oxqCoRA8kiW4SXfG","s8kulIu","CSkgW7TZWPK","oNpcTSkglmkCwSoFWPD1","W7vhWRTbkctdR8olW6hdTW","CbpcMW03WQZdPK07kq","ufnbW7ldTSowWO0","W4NdN8kUz3pdUG8W","u0DYqmooWQxdM8obmWC","WOBcRCoACSoWA8kaW40lda","Amkqz8ktsq","W7fXW4mNW4NdJGK","WPyVW5bnWQm","W6CnrXf2","W6iGrs0sW44ui38O","wXpdKwpcPMnSW5/cGxm","WQBcR8kqgG","W5tcI8oZidddQ0bOwWe","xhdcNqO","WOSyvq","WO7cK8kHxsK","nmoiW6vQWO3cNWpcHSk/qG","WRBdPCoubqFcPua+nf0","FqZdUqlcQM8","DSkfqSknk1ettYtdOa","D37cJbhcSa","W6JdLmk1W6i","CmkTDmoHeq","imk4fraEqmkIy8oSWPm","W73cH8kH","D8opqmo7ECkwW7pdH0rH","mNC5kCo6zqL+uum","W410WOSiWQNdN8kfWPnCW4y","vxtcJqlcMmoqrdpcNCoU","W47cJmkfW5pdItarWRD6W6u","DmkeW4fPW4lcGWFcO8k/tG","hulcOSk+dCkcySo2WRfX","u8kPpbOo","WQvjWPDRWO7cOSoxka","WRHYbN0nWPO","WQhdM8oJsHGLW73cNSorBq","W4LtgmkFWQiVtSopWPnN","BqXfWQBcNG","qZNdTaJcIq","WQtdPuFcPSoJrsCvW40","vf3cGWlcUG","sgtcMGm","ECkjW5b7","w8oYWRpcTSkVW67cLXK9WPC","W5mLWR/dTCkLW6GJWRXtWRq","FqDuWQRcMCkmW5rRmCkb","u8orwSk4i8oeWQdcMqu4","WPVcTCkzgZBdImooWRrHWOu","W5ZdT8oAWPhdUCoPiXZdVIe","W7RdTmkkWPtdPr4","W7BdLSkBWP4","rtpdKmo8W60GW4pdHW","ssBdHmkGWOxcJSkVgYxdJW","xmoHWQ7cQCkLWQm","DCk9W6LRWR8","DSkRv8kVxSk1W78","FSoRWOZcRSkp","WReWcNGtWPjDmNb6","Aa/dOSk5W4GbW4HTW7Gr","Aa1cWQBcOmkrW5HHimkg","WQ0TWRCyWQ7dJ2VcPMzh","WOVcGmov","kc/dTSoCEmoyqCoOW45z","wmoLWQ7cN8kjWQZcGqiYWPS","WOhdOhZcI8oB","WQiPWReIW4ldIhlcVMbW","cNVcQG","EmkYW5lcGb0GdSkymq","W6tdUmkhxeJcJN4Tfs0","d8oOeghdSa","mCkLnmkslI3cKJZdIqy","WQikWPa1WQu","d3lcHGBdL8o3xZZcNmoU","W4dcM8kFWPBcKgOvW6PGWRC","exvqW7mMmG","l8o+o0ldPW","WQvvWPDTWP7cJG","W4ShdCkB","W6rUbhGmWOObo381","W4LtgmkvW69Y","E8k7W4hcLXy","ahJcK8ozWQTYWRmb","nZ3cRmkbimkA","WOait8o4WQa7rG","W5vDWPPiuG","dCkUW6NdRSo4W7RdKsuWWPu","pdBcLmo1WOtdRSoQhYtcMq","fdeyWOJcGq","aSk1W6O","W6NdICkvW6DR","CmoGD8kslW","f8kEaSo0","k1W/ACkZyHu","f8ocxuBdSmk3h1u1W4m","dCkYW7tdS8oKW7/dHLycWPi","bmkZhSk8ea","puNcTSoHWRC","W4CfaG","s8oPWQ7cRmkV","6l6F6zUk6l6G5A+s5P+m5A6/5OUV772b5P6b6i+h","ESknW5a","gv7cVmopWOijWRa","A1JcR0NcGflcQ8kfWO/cIa","jW8yWRBcRq","W6BcG8oHfLPTW5tdSCk/tW","dLxcRG","WPtdLmkLnZBcPfTMqNi","DZD9WQBdPSobWPTKmCkz","W6pcOulcRtHubq","W5Ggb8kemSkHW5tcLNXY","ifpcOSoyWOa","W4FdG8kjW4C","ESksW41QW5hdKWlcTmk8ta","WQfBWRPxEM/dRmknWRZcTW","W6BdHSoRWQ3dKG","k8o1tv9ChCo3n8kcWQC","bgvAW4uMnarK","WOGCuSouWP4OqmkyW4u","qxpcMuBdUNCIW7JcM1u","W67cMmkKhfPVWQBcGSk3dG","WP/cGSojCSoWBCkpW409cG","yCkZurqchSkavCoQWRC","d2/dMs/cTG","BbpdQmofW7q","W6dcT8o4WP5DW7NcP8otrYK","xJJcKv/dTxGI","W7OTuH9yW4G6pMPU","hmo8pvVdVW","W6yKws9jW4i","a8kIi8kkba","r8kPvCoRawWVtGJdHq","W5ZdTCkyW4jr","6AAP5Q6H6i2T5yYw6lYp6zI65y2U55wn6l6f5zIT","WRNcTmk8gZ4","zLD6umooW7JdMSocDXO","AIldTW","W73dG8kU","cYtdKexdI8k+h3lcQmop","6AMA6kYB56oI5BAa5y6l6ykL","AY3dHmo6W6u","zCoQymk8lG","WRP4bhSmWPiuBY51","g2WXk8o3","WPSCvCoeWQK","WQBcU8kqaqxdH8oaW78X","xgpcGb3cNmkGxgpdN8o4","WQ0TWRCdWOldMxxcVMPo","WPr1WRX4WPi","zdVcOL3cGcXmW7X9WPy","E8kTxmkcDmkVW77cISkGWOm","W74ZxIu","pvJcUa","wSk+rmoZkq","DaJcSxRdGSk5wmkNdwa","W67dOmo2WPVdIa","Dbq8r8oEWQpdHmoClGW","WOlcKmoTzmkqW6q","DvRdHq","WRTmWR9BWRG","FXhcR3RdMSkPxSovDqi","ysBcTfhcNgqDWRqX","qCk8sa","cqOhWO3cIG","W6ldOSk2W6XY","W6/dGCo8W7Pqg1vZsCoz","W4pdN8kVA3q","WOlcKmoVzq","WQFdQcOmWRTWWRBdN8oiW4m","WRaGW68IWOpcG1ZcKd5E","WPtdNJ1pW6CMW6/cHCkKWPW","WQGKz8ojWOO","WQ3cJSklxq8","WOivdCocWQ9MAmk+WPSN","bw7cVSoQWOa","s3dcJW7cMSoUwIBcK8oJ","W7lcV0NdKH5bdZSyW7W","AYBcNghcOW","WQyeWQKUWQ4","W7xcGmkOu3mLW7ddMmoRfW","WQVcO8oFw8oC","ifRdQW","WOaIqSolWQGUqCkiW78/","fH4rWQ/cIKLDWRDgiq","W4BdHmkyWP/dGt5hWR9NWRe","WQNcLSo7Amk1W6XpuCkqW4q","AXPC","W4lcNCobWRj1","j1RdRvj/W6G","sCk+W4TIWQ4","BmkYW5tcHa","WRZcImkhyqZdHhiJm3G","x8oovCklomokWQ/cJbK","WPKnuColWQGOtSkiW4K5","g8k9hmkirJnTAaFcJG","W5pcVCkNDSkWW7rgiCoeWP8","h8kIerpdQHXvo0HR","eh9t","vgn8umo8","W6NdJSoXWQu","jKRdQYe","mNfzW79OgrLTW5VcKW","lMFdQmk1W5RcUSkJls/dGa","W63cSZ/dJConCdqiW5BdTa","lLxcL8k6WRSoWO84W4KC","WPxcL8ox","W6lcUCoNW4dcLa","rZZdVW","lWVdGmkRW5/cRSoMtHxcLG","FCk6dXHdbSo0imo/W7u","W7hdSmoUnG","ASkjW6ZcGba","E8kNW4hcKqyN","WR/cKCoPWROvtaiUrmkV","zCk5qmk0lSoPWQJdJ8orW5K","ASoMtv9Bh8k9F8o8WOu","psRcS1y","W6VdQCkWW7BdVW","W7lcJCoRWOjpW7G","B8kBW411WPpdNfpdOmoPea","W6SgWQ7dU8kO","A8k/W4NcGb0GdSkymq","ENPWsSocWRldGSkhbWa","WOXVW5fBWQldLa","yxlcIgZdKJjeW7X4WPS","ECkAvSkkkKK","WQZcOmorw8k4","W7lcLCoWW47cU8k7fbyWW7S","W7/cSCoVWRPuW7tcOCoEha0","W6ddLCo5WR/dUq","W5pdJSkyW7hdGJ4/WRCGWQ4","W6tdTmoTWRRdVq","m1ddTcZcMG","rmkTvCoz","ACkTgmkPCxZdLwJdLX8","dNFcQmkvkG","xmoifXRcR8o5oxe6WOi","c13dVcdcPW","W6FcNCo6W47cTSk7cqC","nNhcQCkEgCkrsCoZWOP1","WR4GWRyPWONdI2NdVtqD","Cvv/t8oF","W7JcUCkmhW","sM3dLfxdUfH/WQtdTa","WORdLSkWmCo5W7nkfCoZWO8","W5pcICkEnx8","sHFdPr0","fSkGWPVcSmk6WQhcLce0WPe","WRiSW6rYDNVdN8ohW7u","qY/cMa","pee+imoHl18KoXW","uSkKsCopbG","iNldRM/cM20qWR0/W5m","umkpqSo5pq","W696W7eIWPZcIYNdOcaC","o8kyfqmdxSkIomoGW7i","WO/dKIPhW7G","xfnCW6GOlbuJWOxdIG","WQnHDJHnW4yuahSJ","vNjcsmom","W6/cN8kSb0eZ","bXOhWQNcJfjuW4DBia","W4BcSCoPWRnj","B8k2W5tcSXWWgmkv","BCoNWO3cICk/WRFcVq8","cHpdM8kOWRn7WOJcMqJcSG","WPldSCklWP/cK3C1WPaAW4u","WRldJmo1W4/dQ8oTaGnQW7u","jCkomCkzAahdJXZcPHG","qJBcIu3cMq","W4JdMmkNW4NdIq","WOJdUCo2emoRWRzDDdzM","W6JcOe3cHIXx","vCoWBSkrpq","DWrvWRW","o8kviCkxiY3cJG","pJ9/WPJdSmomWPiGfCkF","E1f1tCoD","ghtcRmkNkq","W6CwkSkIEq","fXObWRJcQvnzWO0","WP/dQt9rW6SCW6JcLq","W7RcVCoT","aHiBWRJcPL4","WO4srCoUWOu","BmoPz8ka","xJldNmo8W7aIW4JdJG","W6RdH8kUW64","W4NdN8kMyhpdQaOUt2i","W4KdWRFdS8kO","s2xcMWlcL8oOqZtcIq","qqBcNaHZW4RdJWXpiq","m1ddKYBcG8o8aSkVjeC","WPRcRCoyA8oTzG","qCo4qqVdQbvAie10","wmkCW7pcSq","W5RcI3JcVrjHiG","pbL1nSo7AqjMAGu","W4ZdQCkozYFdVHPKeZq","yZxdGmkZW4/dUCkWs2xdKq","wMZdJKddVhiIW73dKr4","WOBcT8kpFsW","WORdLSoRCSk2W64","nvRdRdNcM8o3a8kj","dSkIjCkqhq","WP9IW7LsWQ3cRxpcVqJdRG","W7P4W7m","wmodqSk9l8oaWO3cJq","WPuVW6XoWOy","xmozuexcIG","W57cU8kNsG","s8oKqNxcRq","CKrHvCoo","W4xcMSolW4y","Bs/dUbNcPW","ELb9ECokWQFdHq","mCkKa8oPFCoTWQRcHmooW5K","WOVcQSo3F8ol","W4ddS8oCWOy","WQrNW7j3W43dNx/cUvnk","A0L2vq","wZZcTupdLI0","WPFcNmoACSoSASklW4O","BXFdRadcO23cNmopW4JdLq","W74tWONdHSkFW5qzWO0","C8kecr4hvSkP","W4ldK8k3xw7cOfrdfZi","CbP1WQVcGa","tdCEWRpcMKivW5XTEG","W7ZcLmkvxmkn","WOVdMqPPW4C","WQdcPrhdGNCCqduzW64","WRDXgxerW48FEKSs","W5ddHCkMFgNcPLDL","gf7cVSojWO4vWQP3W5y","WOpcNmo1qmkPW7bTh8ovWP4","fJCdWRZcVa","DK1mr8oEWRpdHCkhzr0","W5adW79PWRy","C3ZcUJNcQa","f1lcTSoJWOPFWP5IWP5E","bfdcQmou","lKKUja","BGrvWPJcO8kAW7bPimoa","WRldN8oJqGrUWQdcISkWdG","WRPVb2ynWOrbD00G","W5JcICkHoMu","ncOaWRpcMW","W4aCd8ktqmkMW57cIJC","WPyHW5je","W7tcHmk+bW","W4ygW7PwWQG","B8k2W5tcSXyMomkxlmkV","EMRcG8oDW5ahW5zTW6Oa","D8kdDSkoxcjHtbNdHq","WPhdQSkhvIFcMa","W77dH8kPW7X8gv1YeCoa","rhldPCo7W60L","WOFdPda","zJFdNCkMW4lcTW","omkPd8oTl8oKWRFcNCkrW5e","tdldVCoLW5qUW5tdMLRdVq","WPlcN8okt8kr","jGNcSmk/WPOeWOn8WPKm","W6GtWOZdN8ktW58JWOW","CsjNWO7cQq","W5tdICkX","xSo1WQ7cQa","W7FcSCoPWPjiW6pcM8ogxcS","W5FcUmkKnSkBWQuCtmoaWPS","W6bOWQjjFghdQmowW6tdRa","n0HXWR/cTSkuW55xmCkn","bSk8qmolg1qIyG3dKa","dSo4d8kjwcvYnf3cHq","rr3dOG","WP8yvCosWRqIsW","DmkHfZyv","WPf6WPiYWQ7cIvhdTuFdTq","vSoBtbpcSmkIDhjGWOK","WQNcNSoKymkk","BYtcI8okgmketmk2WO1X","s8oVWRhcPCkKWPlcHq8HWPy","W7VcHCkKhq","WONdTmocvIdcN3m3iGe","rbNdPaddOdtdJSoxW5pdIa","naxcNmkH","W7lcPYFcUSoaEYyoW4ldOG","WQ0TWRCgWPJdMNm","CZFdVmoKW7y","cN9qW5md","WO/cRCkmvI3dKYrPyX0","W4WafSkE","WQ4sWO8tWP8","k8oVkgFdJG","WP/cGSoCESo/","E8kjW5zZW5ldHLxdPSo0eW","W5SVW4rZWPRcHxBdTq","C8k5qCkUxSk/W7tcNmkA","WRhcV8kxnJxdK8obW7C7W4O","WQ7cN8kPW64","nvRdRJZcKCoQba","o8k3W4xcHejMzSoiBmkn","ymkwF8ktsa","lftcQmoVWPqCW4DJWP5g","WPJdRJvgW6dOVOtMNP7VV73PHlBMLyu","nNFcMCo1WPRdPSo3","W6xcS8o8WPjPW7xcT8ohxZq","WQ8OW7WujdhcVCkcW6pdPG","wmk3fbqcr8krCSkJWRu","cturWR7cNq","WQX7W4OvW73cLmof","W7RdQ8kxW6PM","oe08n8o2CW9vEKu","W58bgSk6BG","E8kbW4H/WRtcLW","gfVcKCkAgq","E1VdJbaJWQ/cN0y8rq","sX7cL0FdTvegW5JdHeK","W4qWW5PpWQJdPCkhWPvuW4y","v8o/FSk+ja","WOpcNmo1uCk4W65Gh8oiWO8","zeL8sCoz","WQfaWQjPWQNdIW","CmkWu8kVzmkdW7lcNa","WPpcGSovW7hdJJiqWReJW7i","ge/cRmooWPij","W40VW4nVWPZcK0S","W63dK8oRWR7dICkCqwpdHqe","W6pdG8kPW7XchvC","qLVcHaBcUW","W6hdHSoRWQ8","DSont07cQq","W4W+W4bZWPFcH1BdT1e","WPToWOXWWOFcKCoFy8oDDW","sNtcJG7cGq","z3ZdTZVcM8o0fCodDaa","BePK","WOOosmoiWQ9KgSonWPnM","W4S6WP3dUmkC","W6mQuMH6W48sphfO","F8k+erqyvSkbFSk9WQm","WQdcSCkctI3cMa","sZJcLwddVhO1W7tdOem","sLDstCoj","WQj3WR1BWOa","gvhcPCoVWOHhWRyj","WPJdPc1x","WRVdLI1mW60","g3vaW54OnH5GW5VcNW","W7FcSulcLs1m","WOdcMmo1ya","DcZcKqpdV1efW4NdOLK","rmktySo5of8crsJdQG","W5S4W5TSWPZdJ0NcOaFdPa","CZ3dRa","WPaVW41bWQNdN8kb","B0rJ","rmo5v8k4jCoaWQRcNsG+","mSo7paeCx8kIqmk0WQq","e07cO8oLWOykWQ0","rrFdOdRcUG","W6ddO8kLWPzoW6tcRmkDqcK","W5ldQmoiW7JcJSkptG3dGHq","W5G5WRhdS8k+","WRDtWP82W57dJSkjySoBBW","xY/dOW","x8kyxXdcSmkOBZDDW5m","cIeBW7SYnrGJW4FcLW","s09hW73cI19dWOfrkW","WP8hW51GWPdcJfpdSaFcTW","ySkTrSk1","wSopwmkXbCob","W43dMCkWEG","WRdcKmk6cc4","WOxcJmo1Aq","iCo+fuxdLG","W73dPK3cLa","rhNdUMS","W4BcNCozWQm","WPFcJCoGDCkSW7m","W6VdKSo+WPJdQq","Fmk+csCjqCkUCCkOWOu","dmoAbuddTSo7","WRBdRNVcGCom","FdZcGLJdTxWIW5/dLfW","W5yHW5C6WR7cHvZdUKFcQW","W7dcJSksgLb9","d2rvW64YmG","kxddHrNdG8ot","BCo3wmkUBSkY","W6v5WQze","jmojhNNdKG","ACoshmk2eWxcSgtcTGm","W4tcUSoPC8k2W61luCkuW54","cSopbwFdSCoTnNTHW5m","k0PVj8kRmve4pbi","55MB5B6z5OIX5yIN","EGzQA8kJlLCQxuS","WOtcMSkvE8o3i8kPW7TVfa","xZJcLq","qqaHfmoFWQxdJCkamaW","W6NcHCkHfL1UW7ddNmoPeq","zfFdM0X3","ts3cIa","W7BdSSkOoG7dQCoJWRD0W4C","WPZcPmoBv8op","smkPqmoCdxKY","WRxcVCoXrCkZ","W50Owx4jWPfrlYH1","w2dcV8kMWRvNW5ZdGr7dKq","vSoSWOxcS8kJWRFcLeScWRO","rmotwSkllCoqWRdcGq","DebHt8onWQ7dOmkCpWa","WOJdPcHkW60MW4JcLq","W7dcPSofW7/cKq","WRdcJCoSsmkv","xcJcKLS","WO0PWRKWWPG","WRpcNCodD8o1ySkpWPzHsW","wSoBr2/cUW","dYSsWQxcNW","W4KqfmkFFmk3W67cNG","xCoWua","mKZdUJVcVCo9","mvJcOG","W7xcS8o+WPrt","zerHt8keW6lcN8oeDLO","W4aqtCohl8oQWONdINW/","W4xdG8kpW4/cIgLhW6L6WRi","mL00gSoJyrr5Euu","WOpcISk2W67dSXe4W7j0W60","W57cSCorBmo2y8klWPzLuq","W4RdJSkyW5xcMcWvWQWXW68","ECoaqxhcSq","WQ/cQmomq8k4","W58qe8kdESkHW5m","lu0UaCo8DWLMyuS","DGJcQN7dH8kQsmovCWu","W6ZdJmo6W67dVCoddsFdNu0","cColbui","WO3cL8oIBCkSW6rldq","aHaHWPZcMW","sZJcLq","W5/cSSkYESk0W68doaPM","WOWQtSovWQOFvSkmW4v5","W7hcLCoLW5JcH8k5cWy2W4W","j8ovpCknkcy","WR7cHSoYW5Hkffz5a8oS","BINdGmkX","lNpcR8kgcCkBsCowWOX+","B8k2W5tcOXO4na","ysBdM8kSWOxdO8o1twtcKq","E8kJW4ZcJaC","WPmytW","oSkFiW","crOh","W67cNmoNWO1+","WOFcMmoXDCk6W6HpuComWOq","W54ouCogWQiUeSoAW4y/","Bmk6kqeUbq","W6ddHmo0WQhcK8kglstdGaS","W6/cU3/cHITnaJC","tG7cQ1FdNq","wwhcMqFcKmoSsYBcMCoK","WRFdK8o7uW","uqZdPadcOwBcLmkgWOq","WRdcLmkQW7FcLmkux3NcKJW","WOmrdCkbCCk+W4JcMZz6","xhtcHqRcGa","kcpdM8kSW5ZcS8oPdhVcJq","cdhdGtZcKmoHtJ3cH8o4","F8kcW4nZWQK","W4ZdLmkwW43dNq","W77cUSk9gM0","WQe7qSo1WOK","WPdcHCo2nYNdTqS1vHO","WRBcNSkVW7RcI8kwxHVdOYWetaC","WOuLW49RWQZdISkhWPLxW4i","EW3dSchcRa","W683WRHwEMW","W7qoW47dJSkiW4itWPbYWPm","g3r8W5ec","W4pdN8kVA07cOW","ydFcOeRcL3aCWO08W48","zcBdNCkMW4i","wCoPWRBcPq","W7/cSvRcMZPbjtq","CX3cJCo6WPzFWPOAW44s","s3dcNW7cV8oMrJC","W6jWWRn6yw3dOSohW6m","F1tcVq","W5hcU8ofW78","tr7cILddGq","WR7cO8kmstVcKZnSaGS","W6NdG8kUW5Xlg0bZmmo6","BKb9qCoFWR8","WQxcOwCdW4eqW5FcLmkjWOy","p0xcVa","g3va","W43cJCkxW5xdIdi","WPBcISoOBSk3WQ8Bt8kwW5O","cqtdRNtdHmk3rG","d0NcPmomWOjvWRipWR0m","D3ZcQLFcLwOAW70+WPm","WQ9hWQDBWQy","iexdTJNdMmk5fmkji1G","u8k8tCorha","ECoAF8kPlIBcMcFdOrW","oe0Rmmo2CXm","W6VcTv/cGqzhaZqsWOO","yMpdU8ocyComf8oLWO0H","s3NcIbNcNmoqqZy","W7ldV8kfrYFcPKPWhYy","W6RdS8kOW6m","ESk/W7JcRYe","W4dcUSosW7NcL8ktie8WW7W","lSkFi8kTlYNcJI3dMGy","W6BdO8osrd/dHSkyW7OWWPO","xmoGvKdcQG","s8kHW6bFWRi","W4dcImkLuSkYW70didPU","qapdU8kA","WPNcRmkbqahcKG","mwFdLHZcRSoPp8kgCLG","xCo3qmkAlG","6lYb5A+Y5Awa6lsgWQtcUG","oKKPnSoKBXvU","tb5Ig8kBW7NcMG","WOChW41MWQe","W6StWO7dPCkyW5SyWO1oWO4","c0KanCo7","EH56cSoYDrnIpgK","W6uyWPNdMSkfW54pWPS","cWWzWRhcGfTrWPHaiq","FmkyW40","rduJW73dNGOBW5GjBG","vxhdGfnf","W4NcG8oNW7lcKq","wmohqmk1","W6ZcMSo4W5JcSG","WPddSZVcM8oOiJHvWOldPW","WP3cNCoummoHE8kaW5uXda","WRjaWOj4","W6rUxtTsW4q","W74zW7DfWQ3cUw/dLhFdGq","tcn3WRNcRW","v2nwvmoA","W43cPmkJtmksW7W","qWJdPGxcPMlcNmkuWPtcLa","W6xcKCoGW4lcU8k/lqy","W5OiDsX6","WQtdRMpcImoGCq","WR/cVmo9tmowr8kQWPq3cG","u3tcHW","WQ3dHCo0qrP5","A8knWOPIWOJcNqRcTmkZdG","CSkUFmklvmkyW53cKSkzWPK","WPNcL8onjmk2ASkCW5aIaa","5PsI5lMa5P+P5OMW5yI377+l5yIA6zMK5Awh6lwN","W6pdPSoPWQNdGW","aJVdVHVcOgZcMmopW4VdJa","W71lW4RcMmohWPyqWOaNWQG","yWGBnCoJBajDA0G","WQnsWPnRWRtcLmoA","WQtdRMpcImoA","veFcPGxcJW","W6RcKCo4"];return jB=function(){return t},jB()}function ta(t,e){let r=jB();return ta=function(n,s){n=n-457;let i=r[n];if(ta.qNvOwv===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};ta.AHFInG=l,t=arguments,ta.qNvOwv=!0}let o=r[-4314+-8622*-1+6*-718],c=n+o,u=t[c];return u?i=u:(ta.quzIMz===void 0&&(ta.quzIMz=!0),i=ta.AHFInG(i,s),t[c]=i),i},ta(t,e)}var ts={set(t,e){let r=ta;lY[t]=e,qB&&qB[r(1217,"S][D")](r(2187,"SER]")+t,e)},get(t){return lY[t]}},Ub=async t=>{let e=ta;qB=t[e(762,"SER]")].db,lY=await qB[e(981,"o3zZ")+e(1873,"V8k*")](e(1421,"yQcg"),{})},nlr=async t=>{let e=ta;return globalThis[e(1625,"4lNE")]?await globalThis[e(615,"cuKs")](t):t},dY=class{constructor(){let e=ta,r={mPmYZ:e(1521,"V8k*")+e(1568,"lk29")+e(866,"#uWk")+e(524,"cuKs"),BxjWe:e(2138,"LEbf")+e(1693,"yuFA"),HQWEF:e(769,"4Rvz"),fageI:e(925,"xQ@E")+e(1430,"0xQK"),uKgWY:e(1056,"fo9w")+e(505,"1[yj")+e(1031,"Kz0m"),vMqTV:e(2123,"Ykeo")+e(2008,"9aFJ")+e(1104,"#uWk"),OyjTJ:e(502,"*QbB")+e(1812,"SER]")+e(2188,"Kz0m")+e(1945,"xQ@E")+e(1222,"LEbf")+e(915,"V8k*")+e(2073,"KLxp")+e(994,"P6lM")+e(1462,"!Uxx")+e(1142,"LQOt")+e(1933,"ba!z")+"6",vZZJI:e(1177,"!Uxx"),PccDr:e(1853,"b6xp")+e(1976,"^k(F")+e(746,"V8k*")+e(786,"9aFJ"),woWfK:e(536,"*QbB")+e(1298,"Kz0m"),PQwnt:e(1299,"gUA&")+e(703,"PBAY")+e(1263,"BkCQ")+e(1218,"KLxp")+e(1832,"5CRz")},n=r[e(913,"0xQK")][e(1038,"1emX")]("|"),s=-167*21+6267+-2760;for(;;){switch(n[s++]){case"0":this[e(1426,"ddaz")]=r[e(700,"cuKs")];continue;case"1":this[e(2205,"^k(F")]=r[e(1079,"fo9w")];continue;case"2":this[e(1881,"*QbB")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"3":this[e(1489,"eBSR")]="";continue;case"4":this[e(624,"ddaz")+e(2156,"b6xp")]="";continue;case"5":this[e(2204,"o3zZ")]="";continue;case"6":this[e(1814,"xQ@E")+e(1073,"0v5g")]="";continue;case"7":this[e(1486,"6m#R")]="";continue;case"8":this[e(1451,"b6xp")]="";continue;case"9":this[e(1856,"sH$b")]="";continue;case"10":this[e(559,"0v5g")+"d"]=r[e(1094,"Ykeo")];continue;case"11":this[e(856,"5CRz")]=r[e(1126,"T[sg")];continue;case"12":this[e(705,"4Rvz")]="";continue;case"13":this[e(1664,"T[sg")]=r[e(812,"(g97")];continue;case"14":this[e(1711,"0xQK")]={"User-Agent":r[e(2038,"^k(F")],Connection:r[e(1006,"o3zZ")],Accept:r[e(1467,"cuKs")],"Accept-Encoding":r[e(1513,"4Rvz")],"Accept-Language":r[e(1552,"1[yj")]};continue}break}}async[Re(2171,"9aFJ")](){let e=Re,r={XFpfq:function(n,s){return n>s},DVIHU:function(n,s){return n/s},MfAvb:e(644,"P6lM")+e(1953,"ddaz"),LgLBL:e(2027,"Kz0m")+"\u767B\u5F55",NHVVG:e(1946,"lk29")+e(685,"o3zZ")};if(this[e(734,"ETwD")])try{let n=JSON[e(674,"Kz0m")](Fl.default[e(554,"fo9w")][e(1171,"PBAY")][e(1517,"5CRz")](this[e(663,"e7Kg")][e(1757,"ddaz")](".")[1])[e(1491,"0v5g")](Fl.default[e(498,"V8k*")][e(1256,"PBAY")]));r[e(853,"9aFJ")](n[e(1802,"lk29")],Math[e(460,"(x@V")](r[e(917,"9aFJ")](Date[e(2193,"4lNE")](),-1*7570+2214+-454*-14)))?console[e(1135,"1[yj")](r[e(558,"#uWk")]):console[e(1487,"cuKs")](r[e(728,"HvYk")])}catch{console[e(499,"vL7T")](r[e(1005,"V8k*")])}}get[Re(1569,"G]4n")](){let e=Re,r={nuaVS:e(1964,"P6lM")},n=ts[e(1923,"S][D")](r[e(1685,"Ykeo")]);return!n&&(n=this[e(1188,"vj0u")](),ts[e(1059,"xeQ!")](r[e(779,"Kz0m")],n)),n}get[Re(1950,"Ykeo")](){let e=Re,r={Kdjff:e(580,"0xQK")+"me"};return ts[e(1357,"lk29")](r[e(775,"yuFA")])}get[Re(523,"HvYk")](){let e=Re,r={QyQbn:e(1734,"Kz0m")+"rd"};return ts[e(1747,"ETwD")](r[e(2104,"!Uxx")])}get[Re(1956,"S][D")](){let e=Re,r={AGilW:e(1986,"Ykeo")};return ts[e(837,"LQOt")](r[e(1841,"o3zZ")])}get[Re(2212,"S][D")+Re(1871,"xeQ!")](){let e=Re,r={PdOuk:e(2222,"e7Kg")+e(1076,"xQ@E")};return ts[e(1357,"lk29")](r[e(1474,"yQcg")])}get[Re(1728,"yuFA")](){let e=Re,r={mLpYK:e(1355,"V8k*")+"d"};return ts[e(1386,"yuFA")](r[e(1214,"BkCQ")])}[Re(1773,"^k(F")](e){return new Promise(r=>setTimeout(r,e))}[Re(655,"T[sg")](e){let r=Re;return Fl.default[r(1303,"BkCQ")](e)[r(1037,"gUA&")]()}[Re(926,"LEbf")](e){let r=Re;return Fl.default[r(1518,"cuKs")](e)[r(1491,"0v5g")]()}[Re(1874,"2Cz1")](){let e=Re,r={bjgiT:function(n,s){return n|s},aSrtG:function(n,s){return n*s},TVoxS:function(n,s){return n===s},eiyqZ:function(n,s){return n|s},ZnJRW:function(n,s){return n&s},GLgNl:e(669,"P6lM")+e(1785,"G]4n")+e(2266,"BkCQ")+"xx"};return r[e(1643,"G]4n")][e(969,"SER]")](/[xy]/g,function(n){let s=e,i=r[s(1776,"LEbf")](r[s(1436,"Ykeo")](Math[s(645,"xQ@E")](),7499+-3*3009+772*2),8214+-5591*1+-2623);return(r[s(1394,"LEbf")](n,"x")?i:r[s(757,"b6xp")](r[s(774,"0v5g")](i,1791+149*-12),-3888+-18*-18+3572))[s(567,"fo9w")](9651+13*-451+-3756)})}[Re(2049,"sH$b")+Re(825,"LEbf")](e){let r=Re,n={FNgMv:function(s,i){return s+i},ytfkv:function(s,i){return s+i},DRixi:r(2176,"fo9w")+r(1772,"(x@V")+r(865,"!Uxx"),mnnsj:r(2250,"2Cz1")+r(1012,"4Rvz")+r(1389,"PBAY")+"21"};return this[r(902,"wnSv")](this[r(626,"e7Kg")](n[r(1329,"0v5g")](n[r(1482,"5CRz")](e,n[r(1065,"yuFA")]),n[r(1844,"xeQ!")])))}[Re(1269,"wnSv")+Re(1021,"4Rvz")](e){let r=Re,n={rurds:function(a,o){return a+o},GXrnZ:function(a,o){return a+o},ApKrg:function(a,o){return a+o},tXvdC:r(891,"0xQK")+r(1255,"PBAY"),neYZL:r(1365,"yuFA")+r(1278,"^k(F")+r(1932,"sH$b")+r(960,"vj0u"),govSu:r(1418,"2Cz1")+r(1571,"4lNE"),IRbiZ:r(1237,"LQOt")+r(2238,"o3zZ")+r(744,"1[yj"),EZtVS:r(2235,"b6xp")+r(471,"KLxp")+r(583,"#uWk")+r(493,"Kz0m"),ChQkS:r(518,"(g97")+"1",uXNaR:r(1049,"lk29")+r(1930,"ddaz"),eqfQt:r(2195,"0v5g")+r(1890,"HvYk")+r(1828,"yuFA")+r(1473,"SER]")+r(1245,"sH$b"),kHrZT:r(1172,"*QbB")+r(1120,"S][D")+r(2153,"lk29"),Rpahc:r(692,"S][D")+r(735,"(x@V"),dSiLH:r(2281,"b6xp")+r(1906,"4lNE"),FwBPb:r(1396,"(g97")+r(2233,"9aFJ")+r(1845,"sH$b")+r(741,"vL7T"),pLQTG:r(1216,"ETwD")+r(1887,"[SG!")},s;return s=n[r(1509,"SER]")](n[r(2136,"T[sg")](n[r(1345,"0v5g")](n[r(603,"4lNE")],n[r(1101,"Kz0m")]),e),n[r(1665,"b6xp")]),[n[r(1994,"V8k*")],n[r(2111,"cuKs")],n[r(1892,"*QbB")],n[r(1522,"ba!z")],n[r(1516,"*QbB")],n[r(1194,"1[yj")],n[r(621,"xQ@E")],n[r(1090,"(g97")],n[r(887,"lk29")],n[r(1967,"SER]")]][r(1760,"1[yj")](a=>{let o=r;s=this[o(2092,"(x@V")](n[o(1823,"*QbB")](s,a))}),s}async[Re(2058,"V8k*")](e){let r=Re,n={Yjslt:function(i,a){return i(a)}};this[r(793,"T[sg")]=e;let s=this[r(1639,"^k(F")][r(938,"yQcg")](e);s&&s[-2*621+9660+-19*443]&&(this[r(1628,"V8k*")]=s[223*23+1*-1538+-3590],this[r(1323,"eBSR")]=n[r(1593,"0v5g")](decodeURIComponent,s[2]||""))}async[Re(2065,"xeQ!")](){let e=Re,r={loHIN:e(1341,"LQOt"),AIWhV:e(1610,"fo9w"),JXttC:e(1990,"0v5g")+"7",vuUzx:e(1279,"PBAY")+e(2180,"SER]")+e(1472,"xeQ!")+"f1",RKGvi:e(1274,"KLxp")+e(2280,"1emX")+e(1151,"LEbf")+e(1093,"o3zZ"),BYalU:e(1240,"BkCQ"),LTdfH:e(2089,"(x@V")+e(520,"0xQK")+e(1122,"e7Kg")+e(2226,"vj0u")+e(934,"ETwD")+e(758,"wnSv")+e(2220,"LQOt")+"c",tMMeE:e(552,"T[sg"),LFCFc:e(836,"yQcg"),goOhH:e(2190,"gUA&")+e(847,"xeQ!"),HKMPX:e(715,"P6lM"),DilGQ:e(2260,"6m#R"),iDJnT:e(529,"V8k*")+e(957,"*QbB"),kYJjh:function(a,o){return a===o},YJlkL:e(577,"2Cz1")},n=JSON[e(1071,"KLxp")]({protocolVersion:r[e(1178,"vL7T")],sequenceNo:r[e(1620,"LQOt")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(1335,"SER]")],peerID:r[e(742,"[SG!")],appName:r[e(1850,"HvYk")],sdkVersion:r[e(788,"P6lM")],devicesign:r[e(1680,"gUA&")],netWorkType:"2G",providerName:r[e(1616,"2Cz1")],deviceModel:r[e(1296,"#uWk")],deviceName:r[e(1295,"2Cz1")],OSVersion:"12",creditkey:"",hl:r[e(1422,"PBAY")],userName:this[e(877,"yQcg")],passWord:this[e(1831,"Kz0m")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(2101,"2Cz1")],url:this[e(627,"#uWk")]+(e(481,"xeQ!")+e(1808,"yQcg")+e(1048,"yQcg")),headers:{"Content-Type":r[e(1934,"LEbf")]},data:n},i=await he[e(1307,"T[sg")](s);if(r[e(1624,"#uWk")](i[e(668,"KLxp")],-3737*1+-2*-3142+-1*2347))return console[e(2086,"xQ@E")](r[e(773,"sH$b")]),i[e(709,"(g97")][e(1539,"T[sg")]}async[Re(1686,"vL7T")+Re(1564,"fo9w")](){let e=Re,r={LbciS:e(768,"P6lM")+e(2200,"eBSR")+e(1259,"wnSv"),GUnEf:e(2255,"G]4n"),sjVAH:e(1390,"4lNE")+e(1970,"G]4n")+e(1981,"cuKs")+e(2183,"SER]")+e(1452,"wnSv")+e(900,"4Rvz")+e(1709,"S][D")+e(618,"1emX")+e(1640,"yuFA")+e(2172,"[SG!")+e(806,"lk29")+"6",DQFUZ:e(890,"(x@V")+e(1848,"BkCQ"),RmbFm:function(a,o){return a===o}},n=JSON[e(468,"*QbB")]({client_id:this[e(783,"b6xp")+"d"],action:r[e(1442,"yuFA")],device_id:this[e(1512,"#uWk")],captcha_token:"",meta:{phone_number:e(596,"xQ@E")+this[e(2197,"vj0u")]}}),s={method:r[e(1143,"ETwD")],url:this[e(501,"gUA&")]+(e(1919,"vj0u")+e(1466,"1[yj")+"it"),headers:{"User-Agent":r[e(539,"xeQ!")],"Content-Type":r[e(910,"xQ@E")]},data:n},i=await he[e(1035,"0xQK")](s);if(r[e(842,"xQ@E")](i[e(503,"P6lM")],323+1*-541+-2*-209))return i[e(879,"*QbB")][e(1900,"9aFJ")+e(1410,"ba!z")]}async[Re(1935,"vj0u")+Re(1183,"fo9w")](){let e=Re,r={VpfQn:e(1195,"sH$b"),PpHxt:function(o,c){return o===c},DOMzu:function(o,c){return o===c},gwabr:e(1926,"b6xp"),qRSTI:e(564,"6m#R"),gdciQ:e(1996,"cuKs"),kcUTP:e(1682,"o3zZ"),FEYDP:e(1445,"vj0u")+e(1578,"0xQK")+e(689,"HvYk")+e(1582,"9aFJ")+e(2163,"o3zZ")+e(1558,"lk29")+e(1332,"BkCQ")+e(1988,"vj0u")+e(2085,"Ykeo")+e(1898,"1emX")+e(1499,"*QbB")+e(2066,"fo9w")+e(923,"wnSv")+e(1300,"wnSv")+e(2055,"#uWk")+"6",AkVnE:e(944,"SER]")+e(1428,"4Rvz"),lVOnv:function(o,c){return o===c},UaJCu:e(1344,"S][D")};if(console[e(1893,"ba!z")](r[e(732,"ba!z")]),r[e(1041,"BkCQ")](this[e(932,"Kz0m")],"")||r[e(833,"0v5g")](this[e(2285,"SER]")],void 0)){let o=this[e(1580,"eBSR")]();ts[e(2015,"5CRz")](r[e(693,"5CRz")],o)}let n=await this[e(1557,"ddaz")+e(1687,"gUA&")](),s=JSON[e(1495,"^k(F")]({phone_number:e(1769,"e7Kg")+this[e(2234,"[SG!")],target:r[e(1719,"xeQ!")],usage:r[e(2278,"5CRz")],client_id:this[e(1387,"eBSR")+"d"]}),i={method:r[e(548,"9aFJ")],url:this[e(1708,"ETwD")]+(e(2031,"KLxp")+e(815,"BkCQ")),headers:{"User-Agent":r[e(1598,"gUA&")],"Content-Type":r[e(1262,"wnSv")],"x-captcha-token":n,"x-client-id":this[e(824,"[SG!")+"d"],"x-device-id":this[e(848,"S][D")]},data:s},a=await he[e(2229,"wnSv")](i)[e(964,"0xQK")](o=>o[e(576,"PBAY")]);r[e(1870,"^k(F")](a[e(581,"wnSv")],10640+-1305*8)&&(console[e(794,"sH$b")](r[e(1929,"V8k*")]),this[e(1330,"cuKs")+e(1339,"S][D")]=a[e(709,"(g97")][e(1903,"xQ@E")+e(1192,"wnSv")])}async[Re(2103,"9aFJ")](e){let r=Re,n={ovkkz:r(1683,"cuKs"),BeZdM:r(2094,"6m#R")+r(819,"Kz0m")+r(1674,"9aFJ")+r(635,"yuFA")+r(500,"V8k*")+r(1481,"HvYk")+r(1435,"PBAY")+r(2121,"ETwD")+r(804,"0v5g")+r(1898,"1emX")+r(1621,"o3zZ")+r(1780,"KLxp")+r(916,"0v5g")+r(1671,"gUA&")+r(631,"cuKs")+"6",rvXri:r(1398,"eBSR")+r(1562,"0v5g"),tskOw:function(s,i){return s===i}};if(e){let s=JSON[r(654,"ddaz")]({verification_code:e,verification_id:this[r(1265,"HvYk")+r(1203,"LEbf")],client_id:this[r(2099,"lk29")+"d"]}),i={method:n[r(1777,"PBAY")],url:this[r(476,"sH$b")]+(r(1361,"5CRz")+r(585,"2Cz1")+r(972,"#uWk")),headers:{"user-agent":n[r(556,"(x@V")],"content-type":n[r(1905,"4lNE")],"x-client-id":this[r(1662,"#uWk")+"d"],"x-device-id":this[r(2231,"ddaz")]},data:s},a=await he[r(1e3,"LQOt")](i)[r(1730,"cuKs")](o=>o[r(639,"4Rvz")]);if(n[r(718,"5CRz")](a[r(745,"xeQ!")],103*6+-7517*1+7099)){let o=a[r(1655,"4lNE")][r(2046,"eBSR")+r(1257,"0v5g")];await this[r(1717,"5CRz")+"n"](e,o)}}}async[Re(1169,"ddaz")+"n"](e,r){let n=Re,s={kNdYF:n(1500,"ddaz"),LbEpc:n(1959,"fo9w")+n(1549,"e7Kg")+n(2091,"1[yj")+n(1186,"PBAY")+n(1429,"yQcg")+n(1439,"SER]")+n(1548,"HvYk")+n(642,"b6xp")+n(1072,"!Uxx")+n(2018,"KLxp")+n(1985,"KLxp")+n(1771,"Ykeo")+n(1140,"vL7T")+n(1264,"lk29")+n(611,"^k(F")+"6",ePaxT:n(1164,"PBAY")+n(1784,"[SG!"),fDmcy:function(u,l){return u===l},QvqhB:n(2216,"V8k*"),AaZph:n(1986,"Ykeo"),vfKNH:function(u,l){return u+l},KqjpV:n(1899,"LEbf")+"d",APGqv:n(686,"5CRz")+n(643,"V8k*"),PYFnK:function(u,l){return u+l},GKSRh:n(1995,"1[yj")},i=await this[n(1982,"sH$b")+n(1913,"SER]")](),a=JSON[n(2043,"P6lM")]({username:n(1297,"#uWk")+this[n(2272,"^k(F")],verification_code:e,verification_token:r,client_id:this[n(1276,"SER]")+"d"]}),o={method:s[n(1973,"(g97")],url:this[n(1839,"LEbf")]+(n(1672,"!Uxx")+n(2209,"1emX")),headers:{"User-Agent":s[n(908,"yQcg")],"Content-Type":s[n(876,"4Rvz")],"x-captcha-token":i,"x-client-id":this[n(1375,"6m#R")+"d"],"x-device-model":"PC","x-device-id":this[n(1569,"G]4n")]},data:a},c=await he[n(2273,"ddaz")](o)[n(1789,"fo9w")](u=>u[n(1529,"G]4n")]);s[n(1070,"6m#R")](c[n(1465,"e7Kg")],-4482+3*-2031+10775)?(console[n(2086,"xQ@E")](s[n(690,"Kz0m")]),ts[n(896,"Ykeo")](s[n(1835,"Kz0m")],s[n(1948,"5CRz")](s[n(1567,"4lNE")](c[n(1248,"LEbf")][n(691,"ETwD")]," "),c[n(2001,"ba!z")][n(1573,"cuKs")+"en"])),ts[n(1759,"SER]")](s[n(1026,"(g97")],c[n(2174,"4Rvz")][n(1868,"1emX")]),ts[n(1931,"fo9w")](s[n(1080,"b6xp")],c[n(1317,"PBAY")][n(595,"6m#R")+n(571,"fo9w")])):console[n(1487,"cuKs")](s[n(1376,"eBSR")](s[n(2177,"SER]")],c[n(1317,"PBAY")]))}async[Re(1336,"0xQK")+Re(1913,"SER]")](){let e=Re,r={yLHLQ:e(574,"yuFA")+e(905,"^k(F"),DkLcp:e(941,"HvYk"),ozjGy:e(988,"HvYk")+e(1075,"V8k*")+e(2102,"6m#R")+e(1146,"lk29")+e(1463,"BkCQ")+e(2033,"!Uxx")+e(1735,"PBAY")+e(1050,"4lNE")+e(2167,"SER]")+e(1142,"LQOt")+e(1756,"fo9w")+"6",nyfmA:e(2214,"LQOt")+e(1288,"LQOt"),KOCUT:function(a,o){return a===o}},n=JSON[e(2191,"lk29")]({client_id:this[e(1387,"eBSR")+"d"],action:r[e(1556,"9aFJ")],device_id:this[e(1917,"(g97")],captcha_token:"",meta:{phone_number:e(996,"ddaz")+this[e(2234,"[SG!")]}}),s={method:r[e(2239,"vj0u")],url:this[e(640,"T[sg")]+(e(1505,"ETwD")+e(799,"6m#R")+"it"),headers:{"User-Agent":r[e(1581,"vL7T")],"Content-Type":r[e(588,"V8k*")]},data:n},i=await he[e(795,"ETwD")](s);if(r[e(809,"1emX")](i[e(2028,"0v5g")],9803*-1+-5751+1*15754))return i[e(470,"SER]")][e(624,"ddaz")+e(684,"gUA&")]}async[Re(1592,"vj0u")](){let e=Re,r={kPexp:function(n,s){return n===s},WAbwO:function(n,s){return n===s},ziDHz:e(1490,"#uWk"),fuLUm:e(1638,"1emX")+e(2203,"#uWk")+e(1840,"1[yj")+e(1066,"1emX")+e(1028,"KLxp")+e(1040,"LEbf")+e(2219,"ETwD")+e(1690,"9aFJ")+e(1736,"ba!z")+e(1321,"vL7T")+e(1414,"vL7T")+"6",ZqwVI:e(2284,"Ykeo")+e(1115,"ba!z"),RKfxG:e(2162,"2Cz1"),dKvTt:e(1716,"#uWk"),YFAOW:function(n,s){return n+s},tfulO:e(573,"PBAY")+"d",hUMqB:function(n,s){return n>s},cMMTZ:function(n,s){return n/s},aQtNb:e(1701,"0xQK"),dZLTr:e(991,"Kz0m")};if(r[e(2098,"!Uxx")](this[e(1165,"HvYk")],void 0)||r[e(2192,"sH$b")](this[e(1596,"(x@V")],"")){let n=await this[e(1531,"KLxp")+e(1025,"Kz0m")](),s=JSON[e(2191,"lk29")]({username:e(1826,"T[sg")+this[e(1538,"KLxp")],password:this[e(1085,"LQOt")],client_id:this[e(2044,"2Cz1")+"d"]}),i={method:r[e(983,"4lNE")],url:this[e(730,"b6xp")]+(e(1666,"cuKs")+e(1587,"e7Kg")),headers:{"User-Agent":r[e(662,"vj0u")],"Content-Type":r[e(977,"S][D")],"accept-language":r[e(1377,"(g97")],"x-captcha-token":n,"x-client-id":this[e(597,"LEbf")+"d"],"x-device-id":this[e(1726,"(x@V")]},data:s},a=await he[e(1185,"0v5g")](i)[e(1124,"LEbf")](o=>o[e(2143,"2Cz1")]);r[e(1725,"1[yj")](a[e(667,"gUA&")],200)&&(ts[e(1704,"ETwD")](r[e(646,"(g97")],r[e(755,"#uWk")](r[e(2016,"Ykeo")](a[e(1057,"HvYk")][e(1586,"wnSv")]," "),a[e(854,"b6xp")][e(2194,"KLxp")+"en"])),ts[e(1727,"*QbB")](r[e(1901,"[SG!")],a[e(1492,"2Cz1")][e(2034,"4Rvz")])),await this[e(1380,"^k(F")+"a"]()}else{let n=JSON[e(2118,"KLxp")](Fl.default[e(798,"e7Kg")][e(2124,"xeQ!")][e(673,"b6xp")](this[e(2120,"Ykeo")][e(1811,"0xQK")](".")[1])[e(2020,"S][D")](Fl.default[e(1891,"wnSv")][e(1961,"BkCQ")]));r[e(1260,"LEbf")](n[e(1802,"lk29")],Math[e(460,"(x@V")](r[e(717,"ddaz")](Date[e(1915,"ETwD")](),73*82+-6567+31*51)))?console[e(1092,"b6xp")](r[e(1829,"#uWk")]):(console[e(785,"lk29")](r[e(1597,"vj0u")]),ts[e(1978,"KLxp")](r[e(706,"e7Kg")],""),await this[e(1936,"^k(F")]())}}async[Re(1432,"xeQ!")+"a"](){let e=Re,r={UFErq:e(1862,"ba!z")+e(771,"Ykeo")+e(1916,"xeQ!")+e(813,"G]4n")+e(1966,"0xQK"),IIbLY:e(532,"9aFJ")+e(827,"o3zZ"),PaUYy:e(1859,"e7Kg"),gXTJI:e(1242,"eBSR")+e(2047,"BkCQ")+e(1606,"ddaz")+e(1681,"xQ@E"),DblIQ:e(1401,"*QbB")+e(2149,"9aFJ"),rqVVa:e(488,"vj0u"),znnRf:e(1119,"b6xp")+e(1315,"(x@V")+e(1706,"e7Kg")+e(515,"V8k*")+e(796,"LEbf")+"it",rLtaS:e(1044,"4Rvz")+e(723,"(g97")+e(1960,"1emX")+e(688,"[SG!")+e(1792,"lk29")+e(900,"4Rvz")+e(1510,"9aFJ")+e(1045,"vL7T")+e(1319,"[SG!")+e(2108,"!Uxx")+e(2063,"yQcg")+"6",AgBWQ:e(867,"xeQ!")+e(1694,"V8k*"),HrAkb:e(1310,"e7Kg")+e(987,"o3zZ")+e(1034,"LEbf")+e(1714,"0v5g")+e(1116,"6m#R"),RSBMr:e(484,"2Cz1")+e(1229,"vL7T")+e(1415,"KLxp"),ObSFK:e(929,"G]4n"),ZPShj:e(2019,"yuFA")+e(883,"gUA&")+e(906,"eBSR")+e(716,"HvYk")+e(2002,"Kz0m")+e(1250,"G]4n")+e(1668,"G]4n"),gdHKE:function(u,l){return u(l)}},n=JSON[e(1637,"9aFJ")]({client_id:this[e(559,"0v5g")+"d"],action:r[e(1851,"5CRz")],device_id:this[e(1512,"#uWk")],captcha_token:"",meta:{username:"",phone_number:this[e(2198,"!Uxx")],email:"",package_name:r[e(1878,"1[yj")],client_version:r[e(1228,"0xQK")],captcha_sign:r[e(1535,"6m#R")],timestamp:r[e(1551,"e7Kg")],user_id:this[e(1728,"yuFA")]}}),s={method:r[e(743,"SER]")],url:r[e(1316,"lk29")],headers:{"User-Agent":r[e(1514,"*QbB")],"Content-Type":r[e(894,"LEbf")],"accept-language":r[e(1238,"vL7T")],"content-type":r[e(1337,"2Cz1")]},data:n},i=await he[e(530,"LEbf")](s)[e(1925,"G]4n")](u=>u[e(943,"cuKs")]),a=i[e(1492,"2Cz1")][e(852,"ETwD")+e(1758,"eBSR")],o={method:r[e(1450,"e7Kg")],url:r[e(623,"KLxp")],headers:{"User-Agent":r[e(1541,"1[yj")],"accept-language":r[e(1648,"5CRz")],authorization:this[e(656,"BkCQ")],"content-type":r[e(1042,"yQcg")],"x-captcha-token":a,"x-client-id":this[e(1276,"SER]")+"d"],"x-device-id":this[e(1791,"xQ@E")]}},c=(await r[e(1786,"!Uxx")](he,o)[e(630,"vj0u")](u=>u[e(2261,"Kz0m")]))[e(1744,"gUA&")]}async[Re(797,"yuFA")+Re(2090,"[SG!")](e,r){let n=Re,s={FLnMb:n(675,"ba!z")+n(1764,"vL7T"),goqUW:n(1121,"xeQ!")+n(620,"(x@V")+n(2095,"xQ@E")+"6a",NwKhP:n(1965,"*QbB")+n(1938,"cuKs"),OyLlU:n(2206,"(x@V"),cBQzb:n(961,"1[yj")+n(2242,"4lNE")+n(1700,"Kz0m")+n(2208,"yuFA"),HYPZa:n(664,"^k(F")+n(2158,"SER]"),oJWAo:n(989,"1[yj"),ekEXI:n(519,"#uWk")+n(864,"lk29")+n(521,"e7Kg")+n(2003,"S][D")+n(999,"e7Kg")+n(1032,"BkCQ")+n(903,"^k(F")+n(696,"HvYk")+n(2270,"yQcg")+n(461,"#uWk")+n(1731,"5CRz")+"6",XpFqc:n(2214,"LQOt")+n(868,"xQ@E"),tDJse:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(2017,"cuKs")]({client_id:s[n(504,"sH$b")],action:i,device_id:s[n(2246,"5CRz")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(731,"1[yj")],client_version:s[n(2074,"yuFA")],captcha_sign:s[n(937,"(g97")],timestamp:s[n(1431,"4lNE")],user_id:this[n(2165,"0v5g")]}}),o={method:s[n(1570,"HvYk")],url:this[n(2081,"1emX")]+(n(821,"lk29")+n(1762,"4lNE")+"it"),headers:{"User-Agent":s[n(739,"vj0u")],"Content-Type":s[n(928,"HvYk")]},data:a},c=await he[n(2004,"KLxp")](o);if(s[n(2269,"0v5g")](c[n(1692,"!Uxx")],-7968+-1441*-5+963))return c[n(1547,"Kz0m")][n(1204,"LQOt")+n(2156,"b6xp")]}async[Re(1540,"4lNE")+Re(544,"vj0u")](e,r){let n=Re,s={bwWWZ:n(1060,"(g97")+n(676,"!Uxx")+n(1480,"SER]"),rlXJR:n(682,"LQOt")+"7",fJYzt:n(2084,"b6xp")+n(1511,"vj0u"),OYYJn:n(2110,"fo9w"),qUdYw:n(647,"yuFA")+n(2039,"Kz0m")+n(491,"yuFA")+n(2232,"sH$b")+n(1081,"xeQ!")+n(1063,"^k(F")+n(880,"5CRz")+n(2137,"Ykeo")+n(2181,"ddaz")+n(478,"S][D")+n(1029,"#uWk")+n(555,"(x@V")+n(1155,"KLxp")+n(2257,"(x@V")+n(829,"fo9w")+n(1566,"0v5g")+n(1096,"^k(F")+n(1325,"e7Kg")+n(2057,"9aFJ")+n(838,"e7Kg")+n(2283,"vL7T")+n(1924,"o3zZ")+n(2224,"LEbf"),kVHOX:n(2284,"Ykeo")+n(2129,"sH$b"),HZXnZ:function(l,d){return l===d}},i=r+":"+e,a=this[n(1266,"vj0u")+n(835,"xQ@E")](this[n(845,"LQOt")]),o=JSON[n(1770,"b6xp")]({client_id:this[n(1131,"1emX")+"d"],action:i,device_id:this[n(2245,"b6xp")],captcha_token:"",meta:{package_name:s[n(1179,"wnSv")],client_version:s[n(1819,"ddaz")],captcha_sign:"1."+a,timestamp:s[n(1678,"S][D")],user_id:this[n(1852,"P6lM")]}}),c={method:s[n(1009,"0v5g")],url:this[n(507,"ba!z")]+(n(605,"xQ@E")+n(1466,"1[yj")+"it"),headers:{"User-Agent":s[n(2026,"SER]")],"Content-Type":s[n(1914,"vL7T")]},data:o},u=await he[n(1035,"0xQK")](c);if(s[n(872,"PBAY")](u[n(1417,"ddaz")],269*1+1308+-1377))return u[n(1547,"Kz0m")][n(2048,"ba!z")+n(1563,"6m#R")]}[Re(694,"[SG!")](){let e=Re,r={vlIVa:e(614,"HvYk")+e(2271,"9aFJ"),FYEXg:e(1471,"PBAY")+e(1393,"o3zZ"),XCzpJ:e(702,"LEbf")+e(1590,"fo9w"),nrEdF:e(1225,"0xQK")+e(710,"ETwD")+e(1469,"wnSv"),kGiUr:e(1585,"LQOt")+e(2289,"0v5g"),IMwrM:e(1107,"^k(F")+e(1147,"e7Kg")+e(2196,"xeQ!")+"0S",IcoZL:e(636,"1[yj")+e(871,"yQcg")+e(1496,"o3zZ")+"rt",OWnph:e(2265,"BkCQ")+e(2275,"eBSR"),XXkjp:e(1062,"[SG!")+e(1099,"*QbB"),sDDNG:e(811,"ddaz")+e(459,"Ykeo")+e(1448,"ETwD"),dYnQt:e(1861,"V8k*")+e(830,"yuFA")+e(1622,"ETwD")+"Xs",khjDe:e(1656,"ETwD")+e(1526,"ETwD"),nmSnh:e(1285,"eBSR"),VFovW:e(1024,"ETwD")+e(1447,"S][D"),mivGG:e(1441,"gUA&")+e(1347,"BkCQ")+e(921,"5CRz")+"6a",tsLjP:function(o,c){return o+c},qVLxa:function(o,c){return o+c},TzkMt:e(1742,"yuFA")+e(2184,"KLxp"),nYHTf:function(o,c){return o<c}},n=[r[e(1918,"2Cz1")],r[e(2117,"*QbB")],r[e(1880,"HvYk")],"m2",r[e(1532,"HvYk")],r[e(1360,"Ykeo")],r[e(1010,"[SG!")],r[e(1696,"gUA&")],r[e(1519,"b6xp")],r[e(1636,"*QbB")],r[e(1998,"!Uxx")],r[e(1139,"Kz0m")]],s={ClientID:r[e(895,"gUA&")],ClientVersion:r[e(790,"*QbB")],PackageName:r[e(1403,"5CRz")],DeviceID:r[e(485,"yuFA")]},i=Date[e(1641,"5CRz")](),a=r[e(633,"[SG!")](r[e(920,"ddaz")](r[e(770,"P6lM")](r[e(1333,"gUA&")](s[e(1650,"lk29")],s[e(1613,"vL7T")+e(672,"PBAY")]),s[e(1689,"ETwD")+"e"]),s[e(2175,"gUA&")]),r[e(2097,"*QbB")]);for(let o=1350*1+-5801*-1+7151*-1;r[e(589,"V8k*")](o,n[e(1654,"xQ@E")]);o++)a=Fl.default[e(1272,"yuFA")](r[e(1221,"(g97")](a,n[o]))[e(1766,"xQ@E")]();return r[e(699,"5CRz")]("1.",a)}async[Re(1821,"SER]")+"st"](){let e=Re,r={UWMwC:function(c,u){return c===u},Keexi:function(c,u){return c===u},BnFER:e(492,"xQ@E"),rjtnx:function(c,u){return c(u)},dPtOq:e(2062,"LEbf")+e(487,"4Rvz"),UWrIv:e(2221,"gUA&"),oVTJB:e(2082,"b6xp"),HPFfB:e(933,"sH$b")+e(1629,"PBAY")+e(2188,"Kz0m")+e(1088,"ETwD")+e(1043,"o3zZ")+e(563,"KLxp")+e(2073,"KLxp")+e(1004,"Kz0m")+e(1698,"4lNE")+e(1109,"fo9w")+e(1419,"V8k*")+"6",bQpiY:e(1378,"eBSR")+e(1241,"e7Kg")+e(1536,"xQ@E")+e(1866,"G]4n")+e(1615,"4Rvz"),jQeML:e(828,"SER]")+e(1980,"yQcg"),sbPGW:e(1089,"P6lM")+e(592,"LQOt")+e(2095,"xQ@E")+"6a",xNmzE:function(c,u){return c in u},piDkS:function(c,u){return c!==u},nUsPg:function(c,u){return c>u},cNMNI:function(c,u){return c>=u}},n=r[e(851,"vj0u")],s=r[e(1958,"fo9w")],i=await this[e(1184,"vj0u")+e(1646,"(g97")](n,s),a={method:r[e(2217,"0xQK")],url:this[e(483,"vL7T")]+(e(849,"yQcg")+e(2213,"9aFJ")+e(1022,"KLxp"))+this[e(1039,"4lNE")]+(e(579,"vL7T")+"=")+this[e(1163,"o3zZ")]+(e(814,"0v5g")+e(1623,"4Rvz")+e(2254,"SER]")+e(1715,"wnSv")+e(2240,"wnSv")),headers:{"User-Agent":r[e(1328,"yuFA")],"accept-language":r[e(1778,"e7Kg")],authorization:"","x-captcha-token":i,"x-client-id":r[e(1896,"LQOt")],"x-device-id":r[e(2144,"PBAY")]}},o=await he[e(1605,"yuFA")](a);if(r[e(637,"0v5g")](o[e(668,"KLxp")],5419+-4*-572+-7507)){let c={},u=[],l=[];this[e(2070,"PBAY")+e(1058,"ba!z")]=o[e(751,"P6lM")][e(1750,"xeQ!")+e(1437,"yuFA")],o[e(927,"e7Kg")][e(1371,"KLxp")][e(1156,"LQOt")](f=>{let p=e;if(r[p(2133,"wnSv")](f[p(1927,"cuKs")],""))u[p(1134,"4lNE")](f.id);else if(r[p(1902,"yQcg")](f[p(777,"SER]")+p(649,"6m#R")],r[p(1928,"fo9w")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1651,"6m#R")](f[p(572,"4lNE")])?f[p(2228,"*QbB")][p(1191,"eBSR")](m,""):f[p(1196,"6m#R")];l[p(2152,"LQOt")]({name:h,size:r[p(750,"6m#R")](Number,f[p(612,"(g97")])||0,fileId:f.id,share_id:this[p(1816,"^k(F")],parent_id:f[p(568,"Ykeo")],pass_code_token:r[p(658,"PBAY")](encodeURIComponent,this[p(805,"yQcg")+p(2166,"1[yj")]),pass_code:this[p(2201,"BkCQ")]})}}),!r[e(1761,"cuKs")](o[e(789,"9aFJ")][e(1688,"sH$b")],c)&&r[e(616,"(x@V")](o[e(1635,"Ykeo")][e(719,"LQOt")],void 0)&&(c[o[e(709,"(g97")][e(1304,"wnSv")]]=[]),r[e(1379,"T[sg")](l[e(560,"G]4n")],0)&&r[e(2288,"PBAY")](o[e(1843,"#uWk")][e(1911,"G]4n")],void 0)&&(c[o[e(2237,"1[yj")][e(1097,"[SG!")]]=[...l]);let d=await Promise[e(1363,"o3zZ")](u[e(1760,"1[yj")](async f=>this[e(1103,"^k(F")+e(1554,"4Rvz")](f)));return d=d[e(820,"yuFA")](f=>f!=null)[e(1161,"Kz0m")](),r[e(1607,"V8k*")](d[e(2157,"o3zZ")],-3561*-1+-9654+6093)&&c[o[e(751,"P6lM")][e(719,"LQOt")]][e(2140,"vL7T")](...d),c}}async[Re(1799,"2Cz1")+Re(1091,"yQcg")](e){let r=Re,n={cTyQW:function(u,l){return u===l},dViUn:r(1824,"LEbf"),hBSrH:function(u,l){return u(l)},HHwVt:r(2062,"LEbf")+r(1286,"ddaz"),WUeUh:r(1803,"!Uxx"),apedf:r(929,"G]4n"),BfyjY:r(1723,"ba!z")+r(1970,"G]4n")+r(1981,"cuKs")+r(1999,"Kz0m")+r(1407,"fo9w")+r(826,"b6xp")+r(729,"4Rvz")+r(1381,"xQ@E")+r(2024,"ddaz")+r(1702,"Kz0m")+r(874,"SER]")+"6",EuMEX:r(1703,"ba!z")+r(1922,"*QbB")+r(1399,"0xQK")+r(834,"(x@V")+r(1207,"HvYk"),NTiFt:r(1055,"0v5g")+r(726,"T[sg"),eGvNl:r(1940,"!Uxx")+r(1627,"1emX"),JemAc:r(482,"T[sg")+r(1084,"P6lM")+r(2023,"wnSv")+"6a",rhhwn:function(u,l){return u===l}},s=n[r(955,"lk29")],i=n[r(1738,"*QbB")],a=await this[r(1782,"4Rvz")+r(1947,"1emX")](s,i),o={method:n[r(1599,"ba!z")],url:this[r(2264,"sH$b")]+(r(1351,"^k(F")+r(1215,"BkCQ")+r(1187,"0xQK")+"=")+this[r(997,"(g97")]+(r(764,"V8k*")+"=")+e+(r(1577,"0xQK")+r(490,"cuKs"))+n[r(1277,"vj0u")](encodeURIComponent,this[r(1190,"Ykeo")+r(1073,"0v5g")])+(r(889,"#uWk")+r(1884,"vj0u")+r(2253,"V8k*")+r(1148,"vj0u")+r(1287,"lk29")),headers:{"User-Agent":n[r(778,"1emX")],"accept-language":n[r(1494,"G]4n")],authorization:"","content-type":n[r(922,"0v5g")],"x-captcha-token":a,"x-client-id":n[r(1833,"4Rvz")],"x-device-id":n[r(767,"yuFA")]}},c=await he[r(875,"SER]")](o);if(n[r(1456,"0xQK")](c[r(1692,"!Uxx")],-1118*4+-7896+8*1571)){let u=[],l=[];c[r(1117,"vj0u")][r(2064,"gUA&")][r(2078,"lk29")](f=>{let p=r;if(n[p(2159,"yQcg")](f[p(1553,"(x@V")],""))u[p(1721,"ETwD")](f.id);else if(n[p(1133,"(x@V")](f[p(550,"G]4n")+p(1454,"ETwD")],n[p(2113,"ba!z")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1651,"6m#R")](f[p(754,"LQOt")])?f[p(754,"LQOt")][p(969,"SER]")](m,""):f[p(1963,"o3zZ")];l[p(1137,"[SG!")]({name:h,size:n[p(1114,"*QbB")](Number,f[p(901,"lk29")])||-7213+-775*6+11863,fileId:f.id,share_id:this[p(1173,"ddaz")],parent_id:f[p(1273,"ddaz")],pass_code_token:n[p(464,"#uWk")](encodeURIComponent,this[p(2202,"1emX")+p(1213,"4Rvz")]),pass_code:this[p(2130,"G]4n")]})}});let d=await Promise[r(1230,"e7Kg")](u[r(1412,"0v5g")](async f=>this[r(1834,"G]4n")+r(582,"b6xp")](f)));return d=d[r(1894,"S][D")](f=>f!=null),[...l,...d[r(2274,"Ykeo")]()]}}async[Re(1647,"ETwD")+"l"](e,r,n,s=""){let i=Re,a={Gazwu:function(p,m){return p!==m},MtnbL:function(p,m){return p===m},cHSkI:function(p,m){return p+m},mqpPe:i(1632,"Ykeo")+i(546,"xeQ!")+i(1860,"LEbf")+i(995,"#uWk")+i(541,"4Rvz")+"l=",PkwKd:function(p,m){return p(m)},YFcRH:i(1774,"fo9w")+i(553,"4lNE"),pJoUn:i(2141,"1[yj"),mWBQP:i(1795,"^k(F"),KkXLi:function(p,m){return p(m)},pRhsb:i(1545,"lk29")+i(1775,"^k(F")+i(2102,"6m#R")+i(918,"PBAY")+i(831,"ddaz")+i(1231,"#uWk")+i(1014,"LQOt")+i(1987,"yuFA")+i(1460,"vL7T")+i(1942,"eBSR")+i(687,"4Rvz")+"6",sGRvU:i(1374,"vj0u")+i(1241,"e7Kg")+i(1583,"gUA&")+i(1420,"vL7T")+i(2207,"1[yj"),fhMad:i(1118,"yuFA"),ZRRzK:i(2127,"4lNE")+i(651,"e7Kg"),YufHc:i(713,"e7Kg")+i(2199,"lk29"),HAaib:i(1312,"KLxp")+i(2262,"ETwD")+i(1822,"S][D")+"6a",hqhdx:function(p,m){return p===m}},o=a[i(1779,"eBSR")],c=a[i(1293,"1[yj")],u=await this[i(1013,"HvYk")+i(1224,"b6xp")](o,c),l=s||this[i(1350,"S][D")]||"",d={method:a[i(545,"#uWk")],url:this[i(1520,"5CRz")]+(i(1340,"5CRz")+i(1271,"vj0u")+i(2053,"5CRz")+i(1251,"HvYk")+"=")+a[i(617,"PBAY")](encodeURIComponent,n)+(i(1763,"eBSR")+i(1691,"e7Kg"))+e+i(1189,"o3zZ")+r+(i(531,"ETwD")+"e=")+l,headers:{"User-Agent":a[i(1872,"6m#R")],"accept-language":a[i(2287,"HvYk")],authorization:"","cache-control":a[i(2277,"BkCQ")],"content-type":a[i(1033,"LQOt")],"x-captcha-token":u,"x-client-id":a[i(1783,"b6xp")],"x-device-id":a[i(2122,"[SG!")]}},f=await he[i(1631,"9aFJ")](d);if(a[i(725,"vL7T")](f[i(1417,"ddaz")],-439*-1+-9073+1*8834)){this[i(1555,"e7Kg")]="";let p=[];return f[i(470,"SER]")][i(1181,"!Uxx")][i(1280,"!Uxx")][i(1661,"5CRz")](m=>{let h=i;a[h(1722,"vj0u")](m[h(2119,"P6lM")],null)&&(a[h(1979,"Ykeo")](this[h(1451,"b6xp")],"")&&(this[h(632,"vL7T")]=new URL(m[h(1404,"Ykeo")][h(1391,"HvYk")])[h(2037,"vj0u")]),p[h(1721,"ETwD")](m[h(1234,"^k(F")],a[h(2223,"xeQ!")](a[h(1368,"1[yj")],a[h(2029,"*QbB")](encodeURIComponent,m[h(978,"4lNE")][h(1670,"0v5g")]))))}),p}return[]}async[Re(1158,"(x@V")+"ta"](e){let r=Re,n={iVZEq:r(547,"[SG!")};if(e[r(970,"ba!z")](n[r(1478,"#uWk")]))return await this[r(681,"yQcg")](e),await this[r(807,"KLxp")+"st"]()}async[Re(1611,"cuKs")](e,r,n){let s=Re,i={mNfcr:s(1027,"yuFA")+s(898,"LQOt"),whDPQ:s(1579,"b6xp"),KmSRQ:function(f,p){return f(p)},lDlcQ:s(2225,"T[sg"),PaAOR:s(861,"BkCQ")+s(1812,"SER]")+s(1470,"0v5g")+s(1088,"ETwD")+s(465,"4lNE")+s(1989,"Kz0m")+s(1875,"P6lM")+s(1743,"Ykeo")+s(1108,"cuKs")+s(1098,"V8k*")+s(1733,"PBAY")+"6",bVbIV:s(2276,"fo9w")+s(1132,"2Cz1"),GvxmK:s(1951,"1emX")+s(462,"P6lM")+s(1815,"LQOt")+s(549,"0xQK")+s(2241,"cuKs"),lLjiC:function(f,p){return f===p},NGDYj:s(634,"Ykeo"),erfqC:s(738,"HvYk")},a=i[s(1614,"1[yj")],o=i[s(1888,"4lNE")],c=await this[s(763,"^k(F")+s(1095,"5CRz")](a,o),u=JSON[s(2268,"0v5g")]({parent_id:this[s(2116,"yQcg")],share_id:r,pass_code_token:i[s(1544,"^k(F")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(1369,"2Cz1")],url:this[s(1314,"xQ@E")]+(s(1504,"fo9w")+s(1061,"V8k*")+"re"),headers:{"User-Agent":i[s(2128,"wnSv")],"Content-Type":i[s(1710,"ba!z")],"accept-language":i[s(1007,"sH$b")],authorization:this[s(680,"[SG!")],"x-captcha-token":c,"x-client-id":this[s(1210,"ba!z")+"d"],"x-device-id":this[s(848,"S][D")]},data:u},d=await he[s(2229,"wnSv")](l)[s(1349,"eBSR")](f=>f[s(1199,"gUA&")]);return i[s(1246,"^k(F")](d?.[s(607,"#uWk")],-9413*-1+1933+-11146*1)&&i[s(1383,"vj0u")](d?.[s(948,"LQOt")]?.[s(538,"S][D")+"us"],"OK")?(console[s(785,"lk29")](i[s(1885,"0xQK")]),!0):(console[s(2282,"0v5g")](d?.[s(1695,"[SG!")]?.[s(587,"vL7T")+"us"]||s(1830,"gUA&")+(d?.[s(503,"P6lM")]||i[s(1434,"Ykeo")])),!1)}async[Re(1793,"^k(F")](e,r,n){let s=Re,i={mmIBS:function(a,o){return a!==o},DCSbV:s(720,"ba!z")+s(2279,"yuFA"),IAmJj:s(1020,"LQOt")};if(await this[s(606,"S][D")](),i[s(1364,"1emX")](this[s(1362,"4lNE")],"")&&i[s(992,"xQ@E")](this[s(1827,"(g97")],void 0)){if(!await this[s(1611,"cuKs")](e,r,n))throw new Error(i[s(1534,"P6lM")])}else throw new Error(i[s(2105,"SER]")])}async[Re(1991,"KLxp")](){let e=Re,r={BTJay:function(u,l){return u===l},ivdJy:e(787,"PBAY")+e(1525,"5CRz"),UNCZX:e(1803,"!Uxx"),kVDZd:e(904,"4lNE"),HwqYI:e(1857,"ba!z")+e(2009,"1[yj")+e(1252,"#uWk")+e(1354,"yQcg")+e(469,"wnSv")+e(1011,"ba!z")+e(457,"(x@V")+e(1673,"1[yj")+e(1258,"fo9w")+e(1503,"KLxp")+e(1180,"yQcg")+e(1801,"6m#R")+e(1997,"S][D")+e(2267,"wnSv")+e(1284,"BkCQ")+e(958,"4Rvz")+e(1449,"4lNE")+e(1424,"LEbf")+e(1160,"0v5g")+e(1106,"eBSR")+e(1533,"1[yj")+e(537,"(x@V")+e(971,"sH$b"),cxlVt:e(2080,"#uWk")+e(1537,"BkCQ")+e(1565,"V8k*")+e(666,"gUA&")+e(1212,"9aFJ"),ospgV:e(944,"SER]")+e(1288,"LQOt")};(r[e(1281,"gUA&")](this[e(1170,"^k(F")],void 0)||r[e(2227,"lk29")](this[e(1943,"*QbB")],""))&&await this[e(2088,"yuFA")]();let n=r[e(1975,"BkCQ")],s=r[e(659,"2Cz1")],i=await this[e(976,"e7Kg")+e(1794,"[SG!")](n,s),a=this[e(2148,"0v5g")]+(e(1658,"9aFJ")+e(1737,"PBAY")+e(1205,"[SG!")+e(2263,"^k(F")+e(1595,"(g97")+e(2286,"SER]")+e(714,"sH$b")+e(1849,"9aFJ")+e(945,"vj0u")+e(508,"o3zZ")+e(670,"6m#R")+e(1574,"4lNE")+e(897,"fo9w")+e(949,"9aFJ")+e(1542,"5CRz")+e(892,"xeQ!")+e(2151,"(x@V")+e(586,"1[yj")+e(1208,"KLxp")),o={method:r[e(2093,"eBSR")],url:a,headers:{"User-Agent":r[e(1842,"xeQ!")],"accept-language":r[e(954,"BkCQ")],authorization:this[e(665,"#uWk")],"content-type":r[e(683,"^k(F")],"x-captcha-token":i,"x-client-id":this[e(810,"yQcg")+"d"],"x-device-id":this[e(2169,"4lNE")]}},c=await he[e(1001,"xeQ!")](o);if(r[e(1353,"1emX")](c[e(1684,"4lNE")],-7821*-1+-1221+640*-10)){let u=c[e(543,"yQcg")][e(1909,"b6xp")][e(1372,"4lNE")](l=>l[e(2160,"fo9w")]===this[e(1153,"vL7T")]);u?this[e(1488,"1[yj")]=u.id:this[e(1619,"LEbf")]=""}}async[Re(946,"G]4n")](){let e=Re,r={UQfEE:function(n,s){return n===s},mvhJV:e(1166,"S][D")+e(1479,"HvYk"),gtzkQ:e(967,"HvYk"),PMqKW:e(1249,"wnSv")+"er",sduiX:e(1202,"vL7T"),bSJdI:e(1030,"yuFA")+e(1812,"SER]")+e(1193,"gUA&")+e(495,"LQOt")+e(1043,"o3zZ")+e(860,"[SG!")+e(956,"lk29")+e(907,"^k(F")+e(727,"LEbf")+e(1476,"P6lM")+e(784,"HvYk")+"6",pIBwA:e(1768,"^k(F")+e(1560,"(g97"),oIMsO:e(1374,"vj0u")+e(924,"0v5g")+e(1292,"fo9w")+e(1198,"ddaz")+e(747,"o3zZ"),QdcSH:function(n,s){return n===s},axeYn:e(993,"xQ@E")+"\u5B58"};if(await this[e(1755,"ddaz")](),r[e(1385,"ba!z")](this[e(899,"yuFA")],"")||r[e(591,"eBSR")](this[e(2251,"S][D")],void 0)){let n=r[e(1949,"cuKs")],s=r[e(1302,"lk29")],i=await this[e(2050,"5CRz")+e(737,"b6xp")](n,s),a=JSON[e(950,"e7Kg")]({parent_id:"",name:this[e(1443,"xeQ!")],kind:r[e(652,"PBAY")],space:""}),o={method:r[e(1243,"HvYk")],url:this[e(1289,"eBSR")]+(e(1083,"ddaz")+e(2115,"vj0u")),headers:{"User-Agent":r[e(1767,"ETwD")],"Content-Type":r[e(496,"6m#R")],"accept-language":r[e(1543,"9aFJ")],authorization:this[e(1675,"V8k*")],"x-captcha-token":i,"x-client-id":this[e(597,"LEbf")+"d"],"x-device-id":this[e(848,"S][D")]},data:a},c=await he[e(1813,"Kz0m")](o);r[e(1067,"SER]")](c[e(602,"vj0u")],6474+-1066*8+2254)&&(this[e(968,"!Uxx")]=c[e(1149,"o3zZ")][e(1790,"wnSv")].id,console[e(886,"5CRz")](r[e(1968,"P6lM")]))}}async[Re(1468,"ddaz")](){let e=Re,r={ZRWRy:e(1054,"(g97")+e(2115,"vj0u"),bBaBn:e(1306,"LEbf"),aqzWy:e(984,"P6lM"),VdpDh:e(1528,"b6xp")+e(1075,"V8k*")+e(1960,"1emX")+e(2248,"G]4n")+e(1407,"fo9w")+e(697,"yuFA")+e(1697,"SER]")+e(1944,"lk29")+e(1954,"o3zZ")+e(1550,"BkCQ")+e(1589,"b6xp")+"6",rSdrV:e(1327,"vL7T")+e(2013,"vL7T")+e(2164,"vj0u")+e(1268,"LQOt")+e(2125,"ETwD"),SIoLQ:e(959,"LEbf")+e(1507,"4lNE"),WMCyY:function(u,l){return u===l}};this[e(2042,"vj0u")]="";let n=r[e(527,"#uWk")],s=r[e(1275,"gUA&")],i=await this[e(976,"e7Kg")+e(2014,"4Rvz")](n,s),a=this[e(2264,"sH$b")]+(e(1971,"^k(F")+e(1236,"LEbf")+e(1078,"(x@V"))+this[e(2116,"yQcg")]+(e(474,"HvYk")+e(2109,"LEbf")+e(601,"6m#R")+e(722,"2Cz1")+e(721,"yQcg")+e(1254,"Ykeo")+e(791,"5CRz")+e(1705,"5CRz")+e(1206,"o3zZ")+e(1459,"vj0u")+e(1798,"(g97")+e(1400,"4lNE")+e(707,"SER]")+e(641,"eBSR")+e(1889,"[SG!")+e(936,"o3zZ")+e(1294,"wnSv")),o={method:r[e(1157,"!Uxx")],url:a,headers:{"User-Agent":r[e(2256,"V8k*")],"accept-language":r[e(2077,"BkCQ")],authorization:this[e(734,"ETwD")],"content-type":r[e(1046,"(g97")],"x-captcha-token":i,"x-client-id":this[e(559,"0v5g")+"d"],"x-device-id":this[e(1854,"xeQ!")]}},c=await he[e(1605,"yuFA")](o);if(r[e(766,"*QbB")](c[e(1630,"T[sg")],6962*1+3*3081+-16005*1)){let u=Array[e(653,"P6lM")](c[e(948,"LQOt")]?.[e(660,"ddaz")])?c[e(1438,"0xQK")][e(1869,"sH$b")]:[],l=u[e(458,"eBSR")](d=>d?.id);l&&(this[e(1197,"PBAY")]=l.id)}return this[e(1594,"!Uxx")]}async[Re(2e3,"ba!z")+"Id"](e=6238+-3*-3008+-15254,r=-9883+77*101+87*38){let n=Re,s={NYEnY:function(i,a){return i<=a},OoezI:function(i,a){return i<a}};for(let i=-1*-3828+-1257*6+3714;s[n(1138,"xQ@E")](i,e);i++){let a=await this[n(855,"lk29")]()[n(477,"0v5g")](o=>"");if(a)return a;s[n(1226,"^k(F")](i,e)&&await this[n(1069,"o3zZ")](r)}return""}async[Re(1645,"vL7T")](){let e=Re,r={OIjPl:function(n,s){return n!==s},ETDHn:function(n,s){return n!==s},QKIQs:e(1807,"T[sg")+e(1955,"!Uxx"),LShPS:e(1306,"LEbf"),MgeaS:e(1105,"2Cz1"),GhzII:e(1253,"S][D")+e(998,"vL7T")+e(2188,"Kz0m")+e(1713,"BkCQ")+e(1867,"Kz0m")+e(1373,"6m#R")+e(740,"yuFA")+e(1644,"BkCQ")+e(1108,"cuKs")+e(2178,"ddaz")+e(1600,"LEbf")+"6",rltef:e(867,"xeQ!")+e(651,"e7Kg"),PbuEM:e(756,"9aFJ")+e(781,"5CRz")+e(748,"9aFJ")+e(2041,"P6lM")+e(1806,"yuFA"),ibpLc:function(n,s){return n===s},rtxLq:e(884,"HvYk"),bZLec:function(n,s){return n===s},CTSQf:e(1863,"KLxp")};if(await this[e(2106,"S][D")](),r[e(2236,"ba!z")](this[e(968,"!Uxx")],"")&&r[e(575,"sH$b")](this[e(1787,"KLxp")],void 0)){let n=r[e(604,"Ykeo")],s=r[e(818,"sH$b")],i=await this[e(2247,"1[yj")+e(1397,"#uWk")](n,s),a=JSON[e(1077,"2Cz1")]({ids:[this[e(1676,"#uWk")]],space:""}),o={method:r[e(1584,"4lNE")],url:this[e(1289,"eBSR")]+(e(2179,"Ykeo")+e(565,"2Cz1")+e(1908,"(g97")),headers:{"User-Agent":r[e(1879,"eBSR")],"Content-Type":r[e(648,"ba!z")],"accept-language":r[e(1130,"S][D")],authorization:this[e(1679,"4lNE")],"x-captcha-token":i,"x-client-id":this[e(1232,"Kz0m")+"d"],"x-device-id":this[e(1726,"(x@V")]},data:a},c=await he[e(650,"^k(F")](o)[e(912,"^k(F")](u=>u[e(2012,"5CRz")]);r[e(966,"yQcg")](c[e(765,"LQOt")],-387+-45*30+1*1937)?console[e(1092,"b6xp")](r[e(1618,"(x@V")]):r[e(1416,"ddaz")](c[e(1282,"1emX")],404)&&console[e(661,"LEbf")](r[e(823,"4Rvz")])}}async[Re(1352,"vj0u")+Re(1657,"0xQK")+Re(1392,"cuKs")](){let e=Re,r={tDCqe:e(2069,"0xQK")+e(1501,"xQ@E"),tsGHl:e(1846,"ba!z")+e(1772,"(x@V")+e(1660,"4Rvz"),HQtvG:e(2079,"xQ@E")+"7",ytZYQ:e(2087,"e7Kg")+e(1571,"4lNE"),pCcAU:e(1796,"xeQ!"),cStdv:e(2083,"PBAY")+e(1324,"ETwD")+e(1838,"1[yj")+e(1455,"Kz0m")+e(2035,"LEbf")+e(494,"yuFA")+e(467,"sH$b")+e(1233,"4Rvz")+e(1406,"!Uxx")+e(1313,"HvYk")+e(1433,"cuKs")+e(1308,"b6xp")+e(598,"wnSv")+e(2142,"SER]")+e(679,"6m#R")+e(1087,"xeQ!")+e(1524,"vj0u")+e(1805,"4lNE")+e(1123,"[SG!")+e(1152,"!Uxx")+e(1413,"fo9w")+e(832,"Ykeo")+e(1159,"(x@V"),qfMyA:e(1318,"LEbf")+e(1298,"Kz0m"),sQZwg:e(1575,"[SG!")+e(1804,"PBAY"),zJmmB:function(o,c){return o===c}},n=this[e(2076,"5CRz")+e(840,"*QbB")](this[e(1718,"6m#R")]),s={client_id:this[e(1825,"P6lM")+"d"],action:r[e(841,"0v5g")],device_id:this[e(1854,"xeQ!")],captcha_token:"",meta:{package_name:r[e(2100,"S][D")],client_version:r[e(2161,"ETwD")],captcha_sign:"1."+n,timestamp:r[e(1382,"yQcg")],user_id:this[e(2165,"0v5g")]}},i={method:r[e(1458,"0xQK")],url:this[e(1708,"ETwD")]+(e(1588,"(g97")+e(1145,"5CRz")+"it"),headers:{"User-Agent":r[e(1461,"6m#R")],"Accept-Encoding":r[e(704,"SER]")],"Content-Type":r[e(534,"xeQ!")]},data:s},a=await he[e(1016,"e7Kg")](i);if(r[e(1634,"^k(F")](a[e(1477,"xQ@E")],-1*9307+453*-15+-66*-247))return a[e(948,"LQOt")][e(2168,"cuKs")+e(1858,"^k(F")]}async[Re(475,"Kz0m")+Re(2112,"1[yj")](){let e=Re,r={eRKnU:e(1656,"ETwD")+e(517,"ddaz"),ANAnU:e(2107,"b6xp")+e(535,"T[sg"),fkVAt:e(952,"yQcg"),itawP:e(1044,"4Rvz")+e(657,"!Uxx")+e(562,"(g97")+e(495,"LQOt")+e(1576,"HvYk")+e(2021,"PBAY")+e(1921,"e7Kg")+e(1384,"e7Kg")+e(1460,"vL7T")+e(1109,"fo9w")+e(844,"LQOt")+"6",uswnb:e(1326,"ba!z")+e(2230,"LEbf"),yrbXd:function(a,o){return a===o}},n=JSON[e(1366,"yQcg")]({client_id:r[e(525,"1emX")],action:r[e(1168,"eBSR")],device_id:this[e(1601,"9aFJ")],captcha_token:"",meta:{phone_number:e(2056,"LEbf")+this[e(2252,"Kz0m")]}}),s={method:r[e(1746,"1[yj")],url:this[e(1957,"vj0u")]+(e(1502,"Kz0m")+e(1167,"cuKs")+"it"),headers:{"User-Agent":r[e(2150,"o3zZ")],"Content-Type":r[e(671,"e7Kg")]},data:n},i=await he[e(792,"S][D")](s);if(r[e(1506,"(g97")](i[e(2170,"4Rvz")],3*-2771+1300+7213))return i[e(935,"eBSR")][e(2135,"SER]")+e(1895,"*QbB")]}async[Re(2005,"Ykeo")](){let e=Re,r={sAboe:e(2110,"fo9w"),jngqY:e(695,"V8k*")+e(2146,"S][D")+e(1390,"4lNE")+e(1457,"yQcg")+e(2185,"wnSv")+e(1667,"Ykeo")+e(2243,"0v5g")+e(486,"P6lM")+e(711,"!Uxx")+e(1765,"Ykeo")+e(953,"^k(F")+e(593,"HvYk")+e(1920,"#uWk")+e(982,"0xQK")+e(1939,"P6lM"),kHUNH:e(529,"V8k*")+e(1751,"SER]"),fAvgy:function(o,c){return o===c},Wenge:e(1201,"ba!z")+e(2186,"sH$b"),JWxGS:e(1984,"^k(F"),jeWkD:function(o,c){return o+c},MIIBW:function(o,c){return o+c},TUGcb:e(1877,"4Rvz")+"d"},n=await this[e(475,"Kz0m")+e(516,"9aFJ")](),s=JSON[e(1904,"T[sg")]({username:e(1604,"Ykeo")+this[e(479,"ddaz")],password:this[e(2258,"1emX")],client_id:this[e(1825,"P6lM")+"d"]}),i={method:r[e(2182,"P6lM")],url:this[e(1367,"0xQK")]+(e(570,"vL7T")+e(2061,"yuFA")),headers:{"User-Agent":r[e(752,"vj0u")],"Content-Type":r[e(1211,"V8k*")],"x-captcha-token":n,"x-client-id":this[e(1427,"5CRz")+"d"],"x-device-id":this[e(584,"vj0u")]},data:s},a=await he[e(1740,"(x@V")](i);r[e(1864,"Ykeo")](a[e(1692,"!Uxx")],1*-5930+-9463+15593)&&(ts[e(1342,"2Cz1")](r[e(1440,"LQOt")],a[e(1492,"2Cz1")][e(1788,"yQcg")+e(979,"S][D")]),ts[e(1931,"fo9w")](r[e(619,"4Rvz")],r[e(816,"*QbB")](r[e(1301,"SER]")](a[e(1395,"ddaz")][e(691,"ETwD")]," "),a[e(561,"cuKs")][e(2189,"Kz0m")+"en"])),ts[e(911,"4lNE")](r[e(1047,"0v5g")],a[e(1219,"^k(F")][e(1261,"V8k*")]))}async[Re(1699,"gUA&")+Re(1498,"ba!z")](){let e=Re,r={QDpDj:function(n,s){return n===s},CtokB:function(n,s){return n===s},rcNdR:e(1209,"5CRz")+e(2075,"Ykeo")+e(1154,"0v5g")+e(629,"gUA&")+e(540,"G]4n"),cPbPJ:e(1388,"1[yj")+e(1729,"lk29"),bqiuV:e(885,"S][D"),tVKBk:e(1003,"2Cz1")+e(817,"4lNE")+e(1883,"gUA&")+e(1752,"2Cz1")+e(1112,"HvYk")+e(1559,"0xQK")+e(1125,"0xQK")+e(1359,"yuFA")+e(590,"0v5g")+e(782,"5CRz")+e(1732,"(x@V")+e(1343,"^k(F")+e(776,"5CRz")+e(1291,"wnSv")+e(1669,"1emX"),PIBdG:e(990,"P6lM")+e(859,"o3zZ"),JcHTf:function(n,s){return n(s)},WgNPJ:e(2068,"0xQK"),QDknd:e(930,"0xQK")+e(1530,"vL7T"),GoEeM:e(1322,"!Uxx"),aCkcU:function(n,s){return n+s},YLThb:e(940,"gUA&")+e(1023,"o3zZ"),pvVar:function(n,s){return n>s},txCey:function(n,s){return n/s},nWXCL:e(2145,"!Uxx")+e(1941,"S][D"),AfjUf:e(1609,"6m#R")+"\u767B\u5F55"};if(r[e(846,"LQOt")](this[e(857,"6m#R")],void 0)||r[e(1309,"1[yj")](this[e(759,"Kz0m")],"")){if(this[e(1100,"SER]")+e(979,"S][D")]){let n=JSON[e(2017,"cuKs")]({client_id:this[e(1176,"sH$b")+"d"],client_secret:r[e(2211,"2Cz1")],grant_type:r[e(1128,"sH$b")],refresh_token:this[e(569,"!Uxx")+e(1563,"6m#R")]}),s={method:r[e(628,"lk29")],url:this[e(856,"5CRz")]+(e(985,"!Uxx")+e(1546,"T[sg")),headers:{"User-Agent":r[e(1649,"1emX")],"Content-Type":r[e(1855,"BkCQ")],"x-client-id":this[e(2025,"^k(F")+"d"],"x-device-id":this[e(1601,"9aFJ")]},data:n},i=await r[e(1484,"(x@V")](he,s)[e(1320,"Ykeo")](a=>a[e(1508,"yuFA")]);if(r[e(1712,"4lNE")](i?.[e(765,"LQOt")],1608+4*-352)){console[e(1983,"0xQK")](r[e(678,"vL7T")]),ts[e(1220,"eBSR")](r[e(1348,"Kz0m")],i[e(854,"b6xp")][e(1617,"Kz0m")+e(975,"KLxp")]),ts[e(780,"[SG!")](r[e(1182,"^k(F")],r[e(1797,"ETwD")](r[e(914,"LQOt")](i[e(1635,"Ykeo")][e(2040,"KLxp")]," "),i[e(1117,"vj0u")][e(1086,"T[sg")+"en"]));return}}if(await this[e(947,"gUA&")](),!this[e(1405,"yuFA")])throw new Error(r[e(1346,"#uWk")])}else try{let n=JSON[e(1074,"ddaz")](Fl.default[e(1876,"gUA&")][e(610,"9aFJ")][e(1707,"o3zZ")](this[e(1572,"wnSv")][e(939,"!Uxx")](".")[1])[e(1491,"0v5g")](Fl.default[e(1311,"T[sg")][e(909,"5CRz")]));r[e(1015,"S][D")](n[e(613,"P6lM")],Math[e(1626,"5CRz")](r[e(1113,"yuFA")](Date[e(2072,"P6lM")](),642+-139*29+4389)))?console[e(1402,"!Uxx")](r[e(803,"fo9w")]):(console[e(1886,"P6lM")](r[e(1483,"LQOt")]),ts[e(466,"ba!z")](r[e(772,"wnSv")],""),await this[e(1741,"Kz0m")+e(2011,"yuFA")]())}catch{ts[e(1059,"xeQ!")](r[e(2218,"1[yj")],""),await this[e(1748,"P6lM")+e(526,"xQ@E")]()}}async[Re(2052,"LEbf")+Re(1818,"2Cz1")](e,r,n){let s=Re,i={vuIfH:s(1305,"lk29")+s(2054,"cuKs"),mTeZI:s(594,"4Rvz"),PmwNA:s(1820,"xeQ!")+s(1235,"PBAY")+s(1036,"gUA&")+s(1608,"lk29")+s(1612,"[SG!")+s(1749,"eBSR")+s(1817,"KLxp")+s(1408,"sH$b")+s(472,"yQcg")+s(2032,"yuFA")+s(973,"wnSv")+s(1223,"(g97")+s(2132,"fo9w")+s(1444,"LQOt")+s(511,"lk29")+s(608,"1[yj")+s(497,"1emX")+s(1642,"eBSR")+s(1836,"Kz0m")+s(1493,"KLxp")+s(2007,"KLxp")+s(2244,"xeQ!")+s(2139,"*QbB"),tNcKb:s(2022,"xQ@E"),zvfCO:s(1659,"LQOt"),KCCZL:s(1810,"yuFA")+s(1082,"vj0u"),sbFzV:s(1575,"[SG!")+s(1288,"LQOt"),oKgpb:function(a,o){return a===o},TEHmG:s(2045,"[SG!")+"2",aXolV:s(1338,"wnSv")+s(1017,"vj0u"),yfQBM:function(a,o){return a===o},gMePu:s(965,"(g97")+s(858,"PBAY"),TWQng:s(522,"vL7T")+s(1882,"HvYk")+s(1064,"1[yj"),iOiUB:function(a,o){return a!==o}};try{await this[s(1753,"fo9w")](),await this[s(1603,"S][D")+s(1423,"cuKs")](),await this[s(1175,"SER]")](),await this[s(1485,"1[yj")](e,r,n);let a=await this[s(677,"5CRz")+"Id"]();if(!a)throw new Error(i[s(1150,"(g97")]);let o=await this[s(850,"V8k*")+s(1937,"b6xp")+s(2051,"xeQ!")](),c={method:i[s(869,"yuFA")],url:this[s(712,"G]4n")]+(s(1002,"1[yj")+s(749,"e7Kg"))+a+(s(962,"PBAY")+s(1409,"lk29")+s(599,"cuKs")+s(931,"(x@V")+s(1523,"Ykeo")),headers:{"User-Agent":i[s(882,"e7Kg")],Connection:i[s(1724,"*QbB")],Accept:i[s(2060,"P6lM")],"Accept-Encoding":i[s(2134,"xeQ!")],"x-captcha-token":o,authorization:this[s(1596,"(x@V")],"content-type":i[s(2096,"ETwD")],"x-device-id":this[s(1969,"sH$b")]}},u;try{u=await he[s(1605,"yuFA")](c)}catch(l){if(i[s(2059,"#uWk")](l?.[s(942,"!Uxx")]?.[s(1465,"e7Kg")],538*-7+1*-6021+129*79)){let d=i[s(1290,"[SG!")][s(1811,"0xQK")]("|"),f=-13*-151+-3338*1+1375;for(;;){switch(d[f++]){case"0":if(!a)throw l;continue;case"1":await this[s(736,"0xQK")](59*23+-1271+-1*-1114);continue;case"2":u=await he[s(638,"V8k*")](c);continue;case"3":c[s(986,"LQOt")]=this[s(878,"vj0u")]+(s(787,"PBAY")+s(980,"eBSR"))+a+(s(761,"0xQK")+s(760,"1[yj")+s(1051,"0v5g")+s(1370,"2Cz1")+s(1907,"9aFJ"));continue;case"4":a=await this[s(1754,"LQOt")+"Id"](1149+-1*1146,1200);continue;case"5":console[s(2086,"xQ@E")](i[s(862,"cuKs")]);continue}break}}else throw l}if(i[s(1809,"1emX")](u[s(2114,"HvYk")],1640+-32*45)){let l=u[s(1847,"1emX")][i[s(822,"T[sg")]]||u[s(1843,"#uWk")][s(1052,"*QbB")][i[s(1464,"5CRz")]][s(1391,"HvYk")],d=new URL(l)[s(1677,"KLxp")];return i[s(1111,"4Rvz")](this[s(625,"[SG!")],"")&&(l=l[s(1331,"ETwD")](d,this[s(2259,"BkCQ")])),l}}catch(a){return console[s(2086,"xQ@E")](a),""}}},bg=new dY;async function s$e(t,e){let r=Re,n={dBEkA:function(c,u){return c(u)},hqaUA:function(c,u){return c===u},WxLxt:r(2036,"!Uxx"),BcAKI:function(c,u,l){return c(u,l)},zOCWO:function(c,u){return c(u)},kzZon:function(c,u){return c(u)},WWsoc:r(473,"vj0u"),Fnmoh:r(2173,"6m#R")};await n[r(919,"SER]")](Ub,e);let s=await bg[r(2210,"^k(F")+"ta"](t);if(!s)return null;let i=await n[r(1475,"PBAY")](nlr,n[r(1652,"6m#R")]),a=[],o=[];return Object[r(1162,"!Uxx")](s)[r(1141,"0xQK")](c=>{let u=r,l={Cgsfr:function(m,h){return n[ta(2067,"SER]")](m,h)},dgOyC:function(m,h){return n[ta(566,"xeQ!")](m,h)},bMhCP:n[u(480,"Kz0m")]},d=Array[u(528,"xeQ!")](s[c])?s[c]:[],f=d[u(1200,"yQcg")](m=>{let h=u;return{vod_id:[m[h(724,"b6xp")],m[h(1239,"1emX")],m[h(2155,"xeQ!")],m[h(1561,"2Cz1")+h(708,"lk29")],m[h(1602,"V8k*")]||""][h(1053,"9aFJ")]("*"),vod_name:m[h(2160,"fo9w")],vod_size:l[h(1270,"sH$b")](Number,m[h(1144,"cuKs")])||-796*9+25*-13+7489,vod_group:l[h(513,"yuFA")](c,l[h(2154,"LQOt")])?"":c}}),p=n[u(1992,"LEbf")](Is,i,f);p&&p[u(1283,"(x@V")]&&p[u(1267,"ba!z")]&&(a[u(2140,"vL7T")](p[u(1227,"2Cz1")]),o[u(974,"*QbB")](p[u(551,"LEbf")]))}),a[r(2126,"4lNE")]?{from:a[r(1008,"b6xp")](n[r(800,"cuKs")]),url:o[r(808,"eBSR")](n[r(600,"P6lM")])}:null}var n$e=t=>{let e=Re,r={TtmIL:function(i,a){return i(a)},wegGC:function(i,a){return i||a}},n=r[e(2006,"1emX")](String,r[e(1912,"2Cz1")](t,""))[e(1497,"yuFA")+"e"]();if(!n)return 3319+-4*1229+1597*1;if(n[e(1527,"ba!z")]("\u539F\u753B"))return 74*-314+-34936+12*13181;if(n[e(888,"fo9w")]("4k"))return-2*-1769+3+-9*-51;if(n[e(1977,"0v5g")]("2k"))return 345*-21+-5835+1885*8;let s=n[e(843,"xeQ!")](/(\d+)\s*p/);return s?r[e(1720,"4lNE")](Number,s[1222*1+3677+-79*62])||4857+-4337*-2+13531*-1:n[e(888,"fo9w")]("\u84DD\u5149")?1*5798+139+-4737:n[e(506,"!Uxx")]("\u8D85\u6E05")?3817*-1+2118+2779:n[e(509,"^k(F")]("\u9AD8\u6E05")?88*7+385+-1*281:n[e(2215,"vj0u")]("\u6D41\u7545")?1*3983+187*29+-8926:n[e(1745,"4lNE")]("\u6807\u6E05")?-8181+-19*-459:n[e(1837,"G]4n")]("\u666E\u753B")?360:n[e(2249,"9aFJ")]("\u6781\u901F")?-1*3011+-3610+-2287*-3:-2906*-2+-2025+-3787*1},slr=t=>{let e=Re,r={zMVfN:function(s,i){return s<i},KQMBa:function(s,i){return s(i)},gpTMX:function(s,i){return s(i)},pbpyE:function(s,i){return s+i},gWxMY:function(s,i){return s||i}},n=[];for(let s=1*-1223+-3876+5099;r[e(1129,"PBAY")](s,t[e(1334,"BkCQ")]);s+=647*11+818*4+-10387*1){let i=r[e(1739,"4lNE")](String,t[s]||"")[e(1356,"BkCQ")](),a=r[e(1425,"G]4n")](String,t[r[e(1910,"lk29")](s,1)]||"")[e(893,"b6xp")]();r[e(2071,"KLxp")](!i,!a)||n[e(1247,"^k(F")]([i,a])}return n};async function i$e(t,e){let r=Re,n={zreKA:function(l,d){return l!==d},GHkwo:function(l,d){return l(d)},jRtkA:function(l,d){return l(d)},noyaX:function(l,d){return l<d},cMqkL:r(557,"1emX"),DXuMd:r(489,"5CRz")+r(1591,"sH$b")+r(510,"*QbB")+r(1174,"4Rvz")+r(1663,"vL7T")+r(1989,"Kz0m")+r(578,"V8k*")+r(1018,"ddaz")+r(1865,"b6xp")+r(542,"*QbB")+r(622,"[SG!")+r(802,"(x@V"),ocNqA:r(463,"b6xp"),aAbaF:r(512,"yuFA")};await n[r(698,"1emX")](Ub,t);let s=n[r(533,"5CRz")](String,t[r(1974,"9aFJ")].id||"")[r(1446,"5CRz")]("*");if(n[r(1068,"!Uxx")](s[r(1800,"5CRz")],-258*1+6193+-5931))throw new Error(n[r(1411,"xeQ!")]);let i={"User-Agent":n[r(1127,"ddaz")]},a=n[r(863,"!Uxx")](slr,await bg[r(1962,"0v5g")+"l"](s[3982*-2+7492*1+-8*-59],s[-1*9967+3508*-1+-1*-13476],s[5856+-1*7078+1225],s[-7155+-3737*1+908*12]||"")||[]),o=null;if(n[r(1993,"Kz0m")](ts[r(1306,"LEbf")](n[r(2131,"0xQK")])||"",""))try{let l=await bg[r(1653,"!Uxx")+r(1110,"SER]")](s[0],s[1],s[3]);l&&(o=["\u539F\u753B",l])}catch(l){console[r(963,"e7Kg")](r(881,"!Uxx")+" "+(l?.[r(1633,"2Cz1")]||l))}a[r(2147,"cuKs")]((l,d)=>n$e(d[6954+8547*-1+27*59])-n$e(l[0]));let c=[];o&&c[r(1897,"(x@V")](o),a[r(951,"xeQ!")](l=>{let d=r;n[d(1358,"0xQK")](l[5967+-1076*1+-4891],"\u539F\u753B")&&c[d(733,"5CRz")](l)});let u=c[r(1515,"P6lM")]();if(!u[r(873,"*QbB")])throw new Error(n[r(1244,"b6xp")]);return{parse:0,url:u,header:i}}var u$e=require("crypto");var alr="https://api.guangyapan.com",olr="https://account.guangyapan.com",l$e="aMe-8VSlkrbQXpUR",d$e=200,clr="0123456789abcdef0123456789abcdef",f$e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},ulr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],QB,fY={},ql={set(t,e){fY[t]=e,QB&&QB.push(`/guangyapan/${t}`,e)},get(t){return fY[t]}},llr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,hC=async t=>{QB=t.server.db,fY=await QB.getObjectDefault("/guangyapan",{})};function dlr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function p$e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function gC(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function flr(t){let e=String(t||"").toLowerCase();return ulr.some(r=>e.endsWith(r))}function plr(t,e){return t?`${t}/${e}`:e}function mlr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function m$e(){let t=mlr(ql.get("device_id"));if(t)return t;try{t=(0,u$e.randomBytes)(16).toString("hex")}catch{t=clr}return ql.set("device_id",t),t}function hlr(t=""){let e={...f$e,Did:m$e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function glr(){let t=m$e();return{...f$e,"X-Client-Id":l$e,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}async function mC(t,e,r=""){let n=await fe.request({url:`${alr}${t}`,method:"POST",headers:hlr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:p$e(n?.data)}}async function ylr(){let t=String(ql.get("refresh_token")||"").trim();if(!t)return"";let e=await fe.request({url:`${olr}/v1/auth/token`,method:"POST",headers:glr(),data:{client_id:l$e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=p$e(e?.data),n=String(r?.access_token||r?.accessToken||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${gC(r,`status=${e?.status||0}`)}`);ql.set("access_token",n);let s=String(r?.refresh_token||r?.refreshToken||"").trim();return s&&ql.set("refresh_token",s),n}async function pY(t=!1){let e=t?"":String(ql.get("access_token")||"").trim();return e||await ylr()}async function h$e(t){let{status:e,data:r}=await mC("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${gC(r,`status=${e}`)}`);return n}async function Alr(t,e="",r=0){let n={pageSize:d$e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await mC("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${gC(i,`status=${s}`)}`);return i?.data||{list:[]}}async function xlr(t){let e=await h$e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Alr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:plr(i,p)});return}flr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function mY(t,e,r=""){let{status:n,data:s}=await mC("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:gC(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function a$e(t,e){return{status:t,code:Number(e?.code||0),msg:gC(e,`status=${t}`),data:e?.data||{}}}function o$e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function g$e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}function blr(){return!!String(ql.get("refresh_token")||"").trim()}function _lr(t){let e=String(t?.msg||"");return g$e(t)||t?.code===207||e.includes("\u514D\u767B\u5F55\u4E0B\u8F7D")}async function c$e(t=!1){let e=await pY(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function y$e(t,e){let r="";try{r=await c$e(!1)}catch(i){return o$e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await mC(t,e,r),s=a$e(n.status,n.data);if(!g$e(s))return s;try{r=await c$e(!0),n=await mC(t,e,r),s=a$e(n.status,n.data)}catch(i){return o$e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Elr(t,e){let r="",n=String(ql.get("access_token")||"").trim();try{r=await pY(!1)}catch(i){return{status:500,code:0,msg:String(i?.message||i||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let s=await mY(t,e,r);if(!s.url&&n&&blr()&&_lr(s))try{r=await pY(!0),s=await mY(t,e,r)}catch(i){s={status:500,code:0,msg:String(i?.message||i||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return s}async function A$e(t,e=""){await hC(t);let r=await y$e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:d$e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function x$e(t,e){await hC(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await y$e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function b$e(t){let e=dlr(t);if(!e?.shareId)return{};let r=await xlr(e.shareId);return Is(await llr("guangyapan"),r)}async function _$e(t){try{await hC(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await h$e(e),s=await mY(r,n);return s.url||(String(ql.get("access_token")||"").trim()||String(ql.get("refresh_token")||"").trim())&&(s=await Elr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Bo=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,Cu=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};function vlr(t){if(!t)return!1;if(Array.isArray(t.urls)&&t.urls.length>0)return!0;let e=Array.isArray(t.url)?t.url[t.url.length-1]:t.url;return!!String(e||"").trim()}var Gt=O0,Slr=t=>t==null||t==="root"?"":String(t),hY=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Slr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function lr(t,e){return{}}async function Xt(t,e){t=Array.isArray(t)?t:[t];let r=t.map(u=>{let l=Si().find(f=>f.validator(u)),d=l?.key;return{key:d,name:l?.name||Cu(d),url:u,order:globalThis.Pans.findIndex(f=>f.key===d)}}).filter(u=>u.key);r.sort((u,l)=>u.order-l.order);let n=[],s=[],i=[];(await Promise.allSettled(r.map(async({key:u,url:l})=>{if(u==="ali")return await VLe(l);if(u==="quark")return await u5e(l);if(u==="uc")return await LMe(l);if(u==="tianyi"){let d=await _f.getShareData(l);if(!d)return null;let f=await Bo("tianyi");return Is(f,hY(d))}if(u==="yidong"){let d=await UV.getShareData(l),f=await Bo("yidong");return Is(f,hY(d))}if(u==="123"){let d=await ai.getShareData(l),f=await ai.getFilesByShareUrl(d),p=await Bo("123");return Is(p,hY(f))}return u==="115"?await K8e(l,e):u==="baidu"?await e$e(l,e):u==="xunlei"?await s$e(l,e):u==="guangyapan"?await b$e(l):null}))).forEach((u,l)=>{if(u.status==="fulfilled"){let p=u.value;p&&p.from&&p.url&&(n.push(p.from),s.push(p.url),i.push({name:r[l].name,url:r[l].url}));return}let d=String(r[l]?.key||"unknown"),f=String(u.reason?.message||u.reason||"unknown error");console.warn(`[Pan Detail] ${d} detail failed: ${f}`)});let o={};n.forEach((u,l)=>{o[u]?n[l]=`${u}-${++o[u]}`:o[u]=1});let c={};return i.forEach((u,l)=>{c[u.name]?i[l].name+=++c[u.name]:c[u.name]=1}),{froms:n.join("$$$"),urls:s.join("$$$"),links:i}}async function Zt(t,e){let r=t.params.site;if(r=="ali")return await Q4(t,e);if(r=="quark")return await K4(t,e);if(r=="uc")return await MMe(t,e);if(r=="baidu")return await FB(t,e)}async function er(t,e){let r=String(t.body.flag||"");if(r.startsWith(await Bo("ali")))return await H4(t,e);if(r.startsWith(await Bo("quark")))return await V4(t,e);if(r.startsWith(await Bo("uc")))return await WMe(t,e);if(r.startsWith(await Bo("tianyi"))){let n=t.body.id.split("*");await Wb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await _f.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=_f.getShareTextResolveReason?_f.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await _f.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Bo("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await UV.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Bo("123"))){await J0(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await ai.getDownload(...n)],header:ai.getDownloadHeader()}}else if(r.startsWith("115\u79D2\u4F20123")){let n=await sY(t,e);if(!vlr(n))throw new Error(n?.msg||"115\u79D2\u4F20123\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");return n}else{if(r.startsWith(await Bo("115")))return await sY(t,e);if(r.startsWith(await Bo("baidu")))return await UB(t,e);if(r.startsWith(await Bo("xunlei")))return await i$e(t,e);if(r.startsWith(await Bo("guangyapan")))return await _$e(t,e)}}async function S$e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),yC(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),yC(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),yC(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await v$e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await v$e(t,a,n)}return yC(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function v$e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),yC(s.json()),r.detail.list&&r.detail.list.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c<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 yC(t){t.statusCode&&t.statusCode==500&&console.error(t)}var Ilr={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"},jl=t=>{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||Ilr[t]||""},Si=()=>[{key:"quark",name:Cu("quark"),validator:$4,pic:jl("quark")},{key:"uc",name:Cu("uc"),validator:U4,pic:jl("uc")},{key:"ali",name:Cu("ali"),validator:W4,pic:jl("ali")},{key:"baidu",name:Cu("baidu"),validator:OLe,pic:jl("baidu")},{key:"xunlei",name:Cu("xunlei"),validator:kLe,pic:jl("xunlei")},{key:"tianyi",name:Cu("tianyi"),validator:TLe,pic:jl("tianyi")},{key:"yidong",name:Cu("yidong"),validator:wLe,pic:jl("yidong")},{key:"123",name:Cu("123"),validator:RLe,pic:jl("123")},{key:"115",name:Cu("115"),validator:NLe,pic:jl("115")},{key:"guangyapan",name:Cu("guangyapan"),validator:PLe,pic:jl("guangyapan")}];var Clr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],gY=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||Clr,Tlr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},wlr=async t=>{await t.db.delete("/duoduo/urls")};async function yY(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await gY(e.server)})}),t.put("/urls",async(e,r)=>{await Tlr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await wlr(e.server),r.send({code:0})})}var AY,HB=t=>{if(!AY){let e=Date.now();AY=new Promise(async r=>{let n=await gY(t),s=await Zn(n,{"User-Agent":Gt});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return AY},Fb={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function Rlr(t){try{if(!Fb.url)return;let e={"Content-Type":"application/json"};Fb.key&&(e.Authorization=`Bearer ${Fb.key}`),await fe(Fb.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Fb.sendTimeout||1200,receiveTimeout:Fb.receiveTimeout||1500})}catch{}}function Nlr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"<!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 xY(t){let e=await fe.get(t,{headers:{"User-Agent":Gt}});return Nlr(e.data)}function bY(t){return String(t||"").replace(/\/$/,"")}function Olr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function klr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[20]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function Plr(t,e){let r=await HB(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=parseInt(s,10);(!a||a<1)&&(a=1);let c=bY(r)+"/index.php/vod/show";i.area&&(c+=`/area/${i.area}`);let u=i.by||i.sort;u&&(c+=`/by/${u}`),i.class&&(c+=`/class/${i.class}`),c+=`/id/${n}/page/${a}`,i.year&&(c+=`/year/${i.year}`),c+=".html";let l=await xY(c),d=De(l),f=d("#main .module-item").map((m,h)=>{let y=d(h).find(".module-item-pic a").attr("href"),g=d(h).find(".module-item-pic img").attr("alt"),b=d(h).find(".module-item-pic img").attr("data-src")||d(h).find(".module-item-pic img").attr("src"),x=d(h).find(".module-item-text").text().trim();return{vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x}}).get().filter(m=>m.vod_id&&m.vod_name),p=Olr(d,a);return{page:a,pagecount:p,limit:72,total:72*p,list:f}}async function Dlr(t,e){let r=await HB(t.server),n=bY(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await xY(`${n}${a}`),c=De(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((y,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await Xt(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),Rlr({detail_url:`${n}${a}`,html:o,parsed:{vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_content:u.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function Blr(t,e){let r=await HB(t.server),n=bY(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await xY(u),d=De(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),y=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:y.attr("data-src")||y.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var I$e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",lr),t.post("/home",klr),t.post("/category",Plr),t.post("/detail",Dlr),t.post("/play",er),t.post("/search",Blr),t.get("/test",S$e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:HB};var Sw=Ce(Xn(),1),Uct=Ce(Q0(),1);var kct=Ce(require("http"),1);var Ew=Ce(require("fs"),1),oce=Ce(require("path"),1);var C$e=Ce(require("os"),1),Llr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Mlr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Wlr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),_Y=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),$lr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},EY=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Ulr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),vY=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Flr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:_Y(t.ip)||(e+=180),Ulr(t.name)&&(e+=80),EY(t.name)&&(e-=320),vY(t.name)&&(e-=260),_Y(t.ip)&&(e-=220),e},Z0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Mlr(t))return t;let e=C$e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!Llr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||$lr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Flr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=EY(a.name),c=vY(a.name);return!o&&!c&&!_Y(a.ip)});if(s)return s.ip;let i=n.find(a=>Wlr(a.ip)&&!EY(a.name)&&!vY(a.name));return i?i.ip:"127.0.0.1"};kt();dr();vt();lL();Un();kt();vt();dr();mo();function Idr(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function Cdr(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||e.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function Tdr(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a<r;a++){let o=Math.floor(a*s);i.push(t[o])}return i}function FC(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,y,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),y=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),y=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let x=f.p.split(",");h=parseFloat(x[0]).toFixed(2),y=x[1]||0,x.length===4?g=x[2]||16777215:x.length>=8?g=x[3]||16777215:g=x[3]||x[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,y,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return E("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);E("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),E("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(`
|
|
`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));E("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Idr(c,O.groupMinute,s),l=Cdr(u),d=Tdr(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let y=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(y===4||y===5)&&(f++,y=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let x=O.colorPool.split(",").map(S=>parseInt(S.trim(),10)).filter(S=>!isNaN(S)&&S>=0&&S<=16777215),A=x[Math.floor(Math.random()*x.length)];if(O.convertColor==="color"&&g===16777215&&g!==A&&(p++,g=A,b=!0),b){let S=[h[0],y,g,...h.slice(3)].join(",");return{...m,p:S}}return m}),f>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:$o(f.m)})),E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),E("info",`[Utils] [Danmu] danmus_original: ${r.length}`),E("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),E("info",`[Utils] [Danmu] danmus_group: ${u.length}`),E("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),E("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function fJ(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function Jb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function wdr(t){let e=`<?xml version="1.0" ?>
|
|
`;e+=`<i>
|
|
`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=Ndr(n);e+=' <d p="'+Odr(s)+'">'+kdr(n.m)+`</d>
|
|
`}return e+="</i>",e}function Rdr(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function Ndr(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Rdr();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Odr(t){return t?String(t).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"):""}function kdr(t){return t?String(t).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"):""}function Og(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),E("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=wdr(t);return wUe(n)}catch(n){return E("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),We(t)}return We(t)}dr();var Rf=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Gr(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,e);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(e){return{ok:!1,error:e.message}}}};var Ia=Ce(require("fs"),1),CL=Ce(require("path"),1);TC();kt();vt();mn();mo();var Hn=null,SL=0,Uo=!1,vL=0,Xb="0.00",qC=!1,cm=new Map,YUe="custom",JUe=null,XUe=null,IL=CL.default.join(process.cwd(),".cache"),rFe="bangumi-data-cache.json",Pdr=2e4,kg=new Map,ZUe={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/[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"]},Ddr="@wan0ge/bangumi-data",Bdr="bangumi-data",Ldr=/(?:普通[è¯è©±]|[国國][è¯èªž]|䏿–‡é…音|ä¸é…|䏿–‡|[粤粵][è¯èªž]é…音|[粤粵]é…|[粤粵][è¯èªž]|[å°è‡º]é…|[å°è‡º][è¯èªž]|港é…|港[è¯èªž]|å—幕|助[å¬è½]|æ—¥[è¯èªž]|æ—¥é…|原版|原[声è²])(?:版)?/,nFe=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五å…七八ä¹å]+)\s*[壿œŸéƒ¨]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,Mdr=/\s+/g,Wdr=/[,,]/,$dr=/[::]/;function mJ(t){let e=new Map,r=t.length;for(let n=0;n<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)}}cm=e}function eFe(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 Udr(t,e){let r=eFe(t),n=eFe(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 tFe(t){try{let e=`https://registry.npmjs.org/${encodeURIComponent(t)}/latest`;E("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let r=await Qb(e,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(8e3)});return r.ok&&(await r.json())?.version||null}catch(e){return E("warn",`[Utils] [Bangumi-Data] \u67E5\u8BE2 ${t} \u7248\u672C\u53F7\u5931\u8D25: ${e.message}`),null}}async function Fdr(){try{let[t,e]=await Promise.all([JUe||tFe(Ddr),XUe||tFe(Bdr)]);if(t&&(JUe=t),e&&(XUe=e),!t||!e)return E("info",`[Utils] [Bangumi-Data] \u7248\u672C\u68C0\u6D4B\u4E0D\u5B8C\u6574 (custom=${t}, official=${e})\uFF0C\u9ED8\u8BA4\u4F7F\u7528\u81EA\u5B9A\u4E49\u6E90`),"custom";let n=Udr(t,e)>=0?"custom":"official";return E("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return E("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function TL(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?Ia.default.existsSync(IL)?n=CL.default.join(IL,rFe):qC||(E("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),E("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),E("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),qC=!0):qC||(E("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),qC=!0),Uo&&Date.now()-vL>Pdr&&(E("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Uo=!1),Hn){if(s>0&&Date.now()-SL<i)return;e&&!Uo&&(E("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Uo=!0,vL=Date.now(),pJ(n).finally(()=>{Uo=!1}));return}if(n&&Ia.default.existsSync(n))try{let a=Ia.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(Ia.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=sFe(Hn),Ia.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),mJ(Hn.items)):Hn?.items?.length>0&&mJ(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;Xb=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);SL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${Xb} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!Uo&&(E("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Uo=!0,vL=Date.now(),pJ(n).finally(()=>{Uo=!1}));return}catch(a){E("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(Uo){if(e){E("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Uo;){if(a>150){E("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Uo=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{E("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Uo=!0,vL=Date.now();let a=pJ(n).finally(()=>{Uo=!1});e?await a:(E("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(E("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var qdr=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function sFe(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(qdr.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;u<c.length;u++)i+=c[u]}let a=zt(i);s._flatText=Dr(a).toLowerCase().replace(nFe,""),e.push(s)}return{items:e}}async function pJ(t){E("info","[Utils] [Bangumi-Data] \u5F00\u59CB\u4F18\u9009\u8282\u70B9\u4E0B\u8F7D\u6700\u65B0\u6570\u636E\u5E76\u6267\u884C\u7CBE\u7B80...");try{let e=process.memoryUsage().heapUsed,r=Date.now(),n=0;YUe=await Fdr();let s=ZUe[YUe]||ZUe.custom,i={headers:{"Accept-Encoding":"br, gzip, deflate"}},a=s.map(()=>new AbortController);s.forEach(p=>{E("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],y=await Qb(p,{...i,signal:h.signal});if(!y.ok)throw new Error(`HTTP error ${y.status} from ${p}`);let g=await y.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let x=Date.now(),A=sFe(g),S=Date.now()-x,I=null;return t&&!h.signal.aborted&&(I=`${t}.tmp${m}`,Ia.default.writeFileSync(I,JSON.stringify(A),"utf-8")),{index:m,url:p,tempFilePath:I,resultData:A,pruneCost:S,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(Ia.default.existsSync(h))try{Ia.default.unlinkSync(h)}catch{}}}),Ia.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);E("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),Hn=c.resultData,n=c.pruneCost,mJ(Hn.items),kg.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);Xb=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);SL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${Xb} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;E("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Ru(t,e){if(!Hn||!Hn.items)return[];let r=kg.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,zt(t),$o(t)])]}catch{}let d=[zt(t)].map(h=>{let y=h.replace(nFe,"");return y=Dr(y).toLowerCase(),y.length>=2?y:Dr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof cm<"u"&&cm.size>0&&d.length>0){let h=new Set;for(let y of d){let g=Array.from(new Set(y.replace(Mdr,"")));if(g.length===0)continue;g.sort((A,S)=>{let I=cm.get(A)?.length||0,R=cm.get(S)?.length||0;return I-R});let b=cm.get(g[0]);if(!b||b.length===0)continue;let x=new Set(b);for(let A=1;A<g.length;A++){let S=cm.get(g[A]);if(!S){x.clear();break}let I=new Set(S);for(let R of x)I.has(R)||x.delete(R);if(x.size===0)break}for(let A of x)h.add(A)}f=Array.from(h)}else f=Hn.items.map((h,y)=>y);let p=Hn.items,m=u.length;for(let h=0;h<f.length;h++){let y=p[f[h]],g=!1;for(let b=0;b<m;b++){let x=u[b];if(xt(y.title,x)){g=!0;break}if(y.titleTranslate)for(let A in y.titleTranslate){let S=y.titleTranslate[A];for(let I=0;I<S.length;I++)if(S[I]&&xt(S[I],x)){g=!0;break}if(g)break}if(g)break}if(g){let b=[y.title];if(y.titleTranslate)for(let x in y.titleTranslate){let A=y.titleTranslate[x];for(let S=0;S<A.length;S++)b.push(A[S])}c.push({item:y,titles:b})}}return c})(),kg.size>100){let c=kg.keys().next().value;kg.delete(c)}kg.set(t,r)}let n=await r,s=n,i=$t(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Tt(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p<f.length;p++){let m=Tt(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=Ldr,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],y=[];if(d.comment){let b=d.comment.split(Wdr),x=new Map;if(d.related&&Array.isArray(d.related))for(let A of d.related)A.id&&x.set(String(A.id),A.season_id||null);for(let A of b){let S=A.split($dr);if(S.length>=2){let I=S[0].trim(),R=S[1].trim();R&&a.test(I)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${I}${m}`,season_id:x.get(R)||null})}else if(S.length===1&&S[0].trim()){let I=S[0].trim();a.test(I)&&y.push(I)}}}let g="";y.length>0&&(g+=` ${y.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function iFe(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,SL=0,kg.clear(),cm.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);E("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${Xb} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),Xb="0.00",qC=!1}if(t&&Ia.default.existsSync(IL))try{let e=CL.default.join(IL,rFe);Ia.default.existsSync(e)&&Ia.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;Ia.default.existsSync(n)&&Ia.default.unlinkSync(n)}E("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){E("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}kt();dr();vt();mo();lL();HT();Un();CY();mn();kt();vt();dr();mo();var w5=new Map;async function GT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await Ae(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return E("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function R5(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await GT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await GT(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return E("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function mxr(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await GT(n,r)}async function bat(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await GT(n,r)}async function hxr(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await GT(n,r)}function gxr(t,e,r=""){let n=t?.data?.results||t?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!Cf(i(c))),o=>!Cf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return E("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function yxr(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(Cf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;E("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await hxr(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=gxr(a,i,r);return o?(E("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(E("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return E("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function D1(t,e=null,r="Unknown"){let n=Sat(t);if(n!==t&&E("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Ru(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return E("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!O.tmdbApiKey)return E("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=w5.get(n);if(s)E("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=k=>{let B=k.genre_ids||[],M=k.genres||[],D=B.length>0?B:M.map(W=>W.id),L=k.original_language||"";return D.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:L==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${L}, genres: ${D.join(",")})`}},d=(k,B)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::ã€ï¼Œã€‚ï¼ï¼Ÿï¼›""''()ã€ã€‘《》]/g,"").trim(),D=M(k),L=M(B);if(D===L)return 1;let Z=D.length<L.length?D:L,W=D.length>=L.length?D:L;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let U=k.length>B.length?k:B,z=k.length>B.length?B:k;if(U.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Te=ue;for(let Ne=0;Ne<=se.length;Ne++)if(ue===0)oe[Ne]=Ne;else if(Ne>0){let je=oe[Ne-1];J.charAt(ue-1)!==se.charAt(Ne-1)&&(je=Math.min(Math.min(je,Te),oe[Ne])+1),oe[Ne-1]=Te,Te=je}ue>0&&(oe[se.length]=Te)}return oe[se.length]};return(U.length-j(U,z))/U.length};if(E("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await R5(n,"multi",{signal:u});if(!f||!f.data)return E("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let p=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!p.results||p.results.length===0)return E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let k of p.results){let B=l(k);if(B.isValid)m.push(k);else{let M=k.name||k.title||"\u672A\u77E5";h.push(`${M}(${B.reason})`)}}if(m.length===0)return E("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;E("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let y=null,g=-1,b=null,x=0,A=5,S=!1;for(let k of m){let B=k.name||k.title||"";if(!B)continue;let M=d(n,B),D=k.original_name||k.original_title||"",L=D?d(n,D):0,Z=Math.max(M,L);if(Z===1&&!S){S=!0,E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,y=k,b=B);continue}let W,U,z=B.toLowerCase().trim()===n.toLowerCase().trim();if(S||z)W=B,U=Z,S&&z?E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}%`);else{if(x<A)try{W=await yxr(k,u,n),W!==B&&x++}catch(se){if(se.name==="AbortError")throw se;E("error",`[Utils] [TMDB] \u5904\u7406\u7ED3\u679C\u5931\u8D25: ${se.message}`),W=B}else W=B,E("info",`[Utils] [TMDB] \u5DF2\u8FBE\u5230\u522B\u540D\u83B7\u53D6\u4E0A\u9650(${A})\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${B}`);let j=d(n,W);U=Math.max(j,L);let J=W!==B?`"${B}" (\u522B\u540D: ${W})`:`"${B}"`;E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 ${J} - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}%`),U===1&&!S&&(S=!0,E("info","[Utils] [TMDB] \u901A\u8FC7\u522B\u540D\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22"))}U>g&&(g=U,y=k,b=W)}if(!y||g<.4)return E("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${y?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;E("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=y.media_type||(y.name?"tv":"movie"),w=await mxr(R,y.id,{signal:u}),N;if(!w||!w.data)N=y.name||y.title,E("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let k=typeof w.data=="string"?JSON.parse(w.data):w.data;N=k.original_name||k.original_title||k.name||k.title,E("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(E("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(E("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{w5.delete(n)})},w5.set(n,s),E("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{w5.get(n)===s&&(s.refCount--,s.refCount<=0&&(E("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(E("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function _at(t,e=null,r=null){if(!Cf(t))return t;if(O.useBangumiData){let i=Sat(t),a=Ru(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!Cf(u))||o.titles[1];if(c&&!Cf(c))return E("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await R5(t,s);if(!i.data.results||i.data.results.length===0)return E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!Cf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(E("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return E("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var Eat=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五å…七八ä¹å]+)\s*[壿œŸéƒ¨]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,xat=/[ ::~~]/;function vat(t){let e=t.match(Eat);return e?e.index:t.length}function Sat(t){let e=vat(t);return e<t.length?t.substring(0,e).trim():t}function B1(t,e){if(!t||t.length===0||!e)return;let r=0;for(let i of t)i._displayTitle=i._displayTitle||i.title||"",i.isLocalPriority||i._displayTitle.includes(e)||r++;if(r===0)return;E("info",`[Utils] [TMDB] \u542F\u52A8\u667A\u80FD\u66FF\u6362\uFF0C\u76EE\u6807\u522B\u540D: "${e}"\uFF0C\u5F85\u5904\u7406\u6761\u76EE: ${r}`);let n=t.map(i=>{let a=i.org_title||i.title||"";return a.substring(0,vat(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c<a.length&&a.charAt(c)===o.charAt(c);)c++;s=a.substring(0,c)}s&&s.length>1&&E("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,E("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(xat);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&Eat.test(c)){let l=u.trim().match(xat),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,E("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,E("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else Cf(a)?(i._displayTitle=e,E("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):E("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}kt();vt();Un();mo();mn();var Wu="$$$",Kg="&",Axr=!1,di=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),ad=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function ht(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!Axr||E(t,...e)}var xe={Lang:{CN:/(普通[è¯è©±]|[国國][è¯èªž]|䏿–‡é…音|ä¸é…|䏿–‡|[粤粵][è¯èªž]é…音|[粤粵]é…|[粤粵][è¯èªž]|[å°è‡º]é…|[å°è‡º][è¯èªž]|港é…|港[è¯èªž]|å—幕|助[å¬è½])(?:版)?/,JP:/(æ—¥[è¯èªž]|æ—¥é…|原版|原[声è²])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[è¯è©±]|[国國][è¯èªž]|䏿–‡é…音|ä¸é…|䏿–‡|[粤粵][è¯èªž]é…音|[粤粵]é…|[粤粵][è¯èªž]|[å°è‡º]é…|[å°è‡º][è¯èªž]|港é…|港[è¯èªž]|å—幕|助[å¬è½])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(æ—¥[è¯èªž]|æ—¥é…|原版|原[声è²])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[è¯è©±]|[国國][è¯èªž]|䏿–‡é…音|ä¸é…|䏿–‡|[粤粵][è¯èªž]é…音|[粤粵]é…|[粤粵][è¯èªž]|[å°è‡º]é…|[å°è‡º][è¯èªž]|港é…|港[è¯èªž]|å—幕|助[å¬è½]|æ—¥[è¯èªž]|æ—¥é…|原版|原[声è²])(?:版)?/g,CN_STD:/普通[è¯è©±]|[国國][è¯èªž]|䏿–‡é…音|ä¸é…|䏿–‡|[粤粵][è¯èªž]é…音|[粤粵]é…|[粤粵][è¯èªž]|[å°è‡º]é…|[å°è‡º][è¯èªž]|港é…|港[è¯èªž]|å—幕|助[å¬è½]/g,JP_STD:/æ—¥[è¯èªž]|æ—¥é…|原版|原[声è²]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:å£|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五å…七八ä¹å]+)\s*å£/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五å…七八ä¹å]+\s*(?:å£|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[ã€])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[ã€])/i,SUFFIX_SEQUEL:/(?:ç»ç¯‡|ç»é›†|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/ã€.*?】/g,REGION_LIMIT:/(\(|(|\[)ä»…é™.*?地区(\)|)|\])/g,PUNCTUATION:/[!ï¼??,,.。ã€~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(ç»ç¯‡|TV版|æ— ä¿®|æœªåˆ å‡|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[ã€]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[ã€::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五å…七八ä¹å]+\s*å£|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[è¯è©±é›†])?(?!\s*[壿œŸéƒ¨])/gi,PUNCTUATION:/[!ï¼??,,.。ã€~~::\-–—]/g,DANDAN_TAG:/^ã€(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|åŠ‡å ´ç‰ˆ|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[å£S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[å£s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[è¯è©±é›†])?(?!\s*[壿œŸéƒ¨])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:è¯|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第å£é›†è¯partEPep._\-–—::ã€ã€‘()()]/gi}},k5=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],xxr=[{regex:/(?:第)?\s*(\d+)\s*(?:å£|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(ç»ç¯‡|ç»é›†)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],bxr=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];function Bat(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Toe(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function Ao(t){if(!t)return"Unspecified";let e=t.toLowerCase();return xe.Lang.CN.test(e)?"CN":xe.Lang.JP.test(e)?"JP":"Unspecified"}function Lat(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of bxr){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(Bat(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function mm(t){if(!t)return"";let e=zt(t);return e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Season.PART_NORM,"part $1"),e=e.replace(xe.Season.PART_NORM_2,"part $1"),e=e.replace(xe.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(xe.Season.NORM,"\u7B2C$1\u5B63"),e=e.replace(xe.Season.CN,(r,n)=>`\u7B2C${Gl(n)}\u5B63`),e=e.replace(xe.Season.ROMAN,(r,n,s,i)=>`${n}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${i}`),e=e.replace(xe.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(xe.Lang.JP_DUB_VER,""),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Wc(t){if(!t)return"";let e=Lat(t);e=zt(e);let r=e.match(/^(?:ã€|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.FROM_SUFFIX,""),e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Clean.PARENTHESES_CONTENT,""),e=e.replace(xe.Season.INFO_STRONG,""),e=e.replace(xe.Season.PART_INFO_STRONG,""),e=e.replace(xe.Clean.MOVIE_KEYWORDS,""),e=e.replace(xe.Lang.KEYWORDS_STRONG,""),e=e.replace(xe.Clean.LONE_VER_CHAR,""),e=e.replace(xe.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function L1(t){if(!t)return"";let e=zt(t);return e=e.replace(xe.Episode.SUFFIX_DIGIT,""),e=e.replace(xe.Episode.FILE_NOISE,""),e=e.replace(xe.Episode.SEASON_PREFIX," "),e=e.replace(xe.Episode.CLEAN_SMART," "),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(xe.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Iat(t){return t?t.replace(xe.Clean.PARENTHESES_CONTENT,"").trim():""}function Roe(t){if(!t)return"";let e=String(t).split(Wu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function Cat(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function _xr(t,e){let r=t.length,n=e.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function Exr(t,e){if(!t||!e)return 0;let r=new Set(t.replace(xe.Clean.WHITESPACE,"")),n=new Set(e.replace(xe.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s<i?[r,n]:[n,r];for(let u of o)c.has(u)&&a++;return 2*a/(s+i)}function pm(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 A=o/a;if(A>.5)return .8+A*.2}let c=_xr(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(xe.Clean.WHITESPACE,"")),d=new Set(n.replace(xe.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let m=0,[h,y]=f<p?[l,d]:[d,l];for(let A of h)y.has(A)&&m++;let g=2*m/(f+p),b=0,x=Math.min(f,p);return x>2&&(b=m/x,b>.6&&x/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function xo(t,e="",r=[]){let n=new Set,s=mm(e||""),i=l=>{let d=mm(Lat(l)),f=d.replace(xe.Season.PART_ANY,""),p=f.match(xe.Season.CN_STRUCTURE);if(p){let y={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};y[p[1]]&&n.add(y[p[1]])}if(xxr.forEach(y=>{let g=(y.useCleaned?f:d).match(y.regex);g&&n.add(y.prefix?`${y.prefix}${parseInt(g[1])}`:y.val)}),!k5.some(y=>{if(y.regex.test(f))return n.add(y.val),!0})){let y=f.match(xe.Season.SUFFIX_AMBIGUOUS);if(y){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=y[1].toUpperCase();g[b]&&n.add(g[b])}}xe.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[y,g]of Object.entries(h))d.includes(`\u7B2C${y}\u5B63`)&&n.add(`S${g}`)};[t,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function wi(t,e="",r=[]){let n=xo(t,e,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function Vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function M1(t,e,r){if(r&&xe.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return xe.Category.ANIME_KW.test(n)?"ANIME":xe.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function vxr(t,e,r=!0){if(!t||!e||Wc(t)===Wc(e))return!1;let n=d=>{if(!d)return"";let f=zt(d);return f=f.replace(xe.Clean.META_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(xe.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length<i.length?[s,i]:[i,s];if(l.startsWith(u)){if(l.length===u.length)return!1;let d=l[u.length];if(xe.Clean.SUBTITLE_SEPARATOR.test(d)){let f=l.slice(u.length).replace(xe.Clean.SUBTITLE_SEPARATOR,"").trim();if(!r&&f.length>1||f.length>2)return!0}}return!!(o&&c&&Exr(o,c)<.2)}function Mat(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?zt(c).replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(xe.Clean.SPACE_STRUCTURE.test(a)&&xe.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(xe.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(xe.Season.PURE_PART.test(u)||xe.Season.PURE_PART.test(l))}return!1}function Sxr(t,e,r,n,s,i,a="",o=""){let c=M1(t,r,a),u=M1(e,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=Vg(t,r),x=Vg(e,n);return!b||!x||b===x||Mat(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function Ixr(t,e,r,n,s=[],i=[]){let a=xo(t,r,s),o=xo(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!Mat(t,e,r,n):!1}function Cxr(t,e,r,n,s=[],i=[]){let a=xo(t,r,s),o=xo(e,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function Txr(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function wxr(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function N5(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Ca(t,e=""){let r=!1,n=e;if(t){let m=t.match(xe.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();(xe.Episode.SPECIAL_START.test(m)||xe.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=mm(t||""),a=xe.Episode.MOVIE_CHECK.test(i),o=xe.Episode.PV_CHECK.test(i),c=null,u=null,l=N5(t),d=o||r||!!l||xe.Episode.SPECIAL_CHECK.test(i),f=i.match(xe.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(xe.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(xe.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(xe.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Noe(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";ht("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Tat=new Map;function O5(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Tat.get(r);if(!d){let f=Bat(r);d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Tat.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(xe.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let p=0;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(xe.Clean.REDUNDANT_UNSAFE_END.test(u)){let l=u.slice(0,-1).trim();return l.length>=2&&s.startsWith(l)?l:""}return u.length>=2&&(xe.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(ht("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function wat(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s<t.length;s++){let i=t[s].title||t[s].name||"",a=Ca(i,e);a.num!==null&&!a.isSpecial&&!a.isPV&&a.num%1===0&&(n=s)}return t.forEach((s,i)=>{let a=s.title||s.name||"",o=Ca(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i<n&&r.add(o.num)}),r}function Rat(t,e,r,n){let s=[],i=[],a=0;t.forEach(o=>{let c=o.title||o.name||"",u=Ca(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),ht("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function Nat(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=O5(t,a,s),u=O5(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,k)=>{let B=R.link.title||"",M=l(B,k),D=Ca(M,w),L=Ao(M),Z=L!=="Unspecified"?L:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,U=L1(M),z=W==="CN"?M.replace(xe.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:D,effLang:W,specialType:N5(M),cleanEpText:U,strictCnCore:z}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let y=m!==null&&h!==null?m-h:null,g=15,b=y!==null?-y:0,x=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),A=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),S=0,I=-9999;for(let R=x;R<=A;R++){let w=0,N=0,k=0,B=new Map,M=!1,D=null;for(let L=0;L<e.length;L++){let Z=L+R;if(Z<0||Z>=t.length)continue;let W=f[Z],U=p[L],z=W.info,j=U.info,J=0;z.isMovie!==j.isMovie&&(J+=di.EP_ALIGN.MOVIE_TYPE_MISMATCH),(z.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!z.isSpecial)&&(J+=di.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=U.effLang==="Unspecified"?"JP":U.effLang;se===oe?J+=di.EP_ALIGN.LANG_MATCH:J+=di.EP_ALIGN.LANG_MISMATCH,z.season!==null&&j.season!==null&&z.season!==j.season&&(J+=di.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||U.specialType)&&(W.specialType!==U.specialType?J+=di.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=di.EP_ALIGN.SPECIAL_TYPE_MATCH),z.isSpecial===j.isSpecial&&(J+=di.EP_ALIGN.IS_SPECIAL_MATCH),y!==null&&!z.isSpecial&&!j.isSpecial&&z.num-j.num===y&&(J+=di.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&U.effLang==="CN"&&W.strictCnCore&&U.strictCnCore&&(W.strictCnCore.includes(U.strictCnCore)||U.strictCnCore.includes(W.strictCnCore))?ue=z.num!==null&&j.num!==null&&z.num===j.num?di.EP_ALIGN.CN_STRICT_MATCH:di.EP_ALIGN.CN_STRICT_MISMATCH:ue=pm(W.cleanEpText,U.cleanEpText),J+=ue,N+=ue,z.num!==null&&j.num!==null&&z.num===j.num&&(J+=di.EP_ALIGN.NUMERIC_MATCH);let Te=1;if(z.num!==null&&!z.isSpecial&&(D!==null&&z.num-D>1?Te=.1:D=z.num),J*=Te,ue*=Te,N+=ue,w+=J,z.num!==null&&j.num!==null){let Ne=(j.num-z.num).toFixed(4);B.set(Ne,(B.get(Ne)||0)+Te)}k++}if(k>0){let L=w/k,Z=0;for(let j of B.values())Z=Math.max(Z,j);let W=Z/k,U=N/k;W>.6&&(M||U>.33)&&(L+=di.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),L+=Math.min(k*.15,1.5);let z=B.get("0.0000")||0;z>3?(L+=di.EP_ALIGN.ZERO_DIFF_BONUS_BASE,L+=z*di.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):z>0&&(L+=z*2),L>I&&(I=L,S=R)}}return I>.3?S:0}function Rxr(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(M1(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(Vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=wi(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Noe(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=mm(h).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(xe.Episode.SPECIAL_CHECK.test(g)||xe.Episode.DANDAN_IGNORE.test(g))||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p<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)&&ht("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5:
|
|
${s.join(`
|
|
`)}
|
|
=> \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Nxr(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 Oat(t,e){let r=t.link,n=r.title||r.name||`Episode ${t.originalIndex+1}`,s=r.url||"";s&&(s=Roe(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 Oxr(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=Ca(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,p=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||p&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Oat(p,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(p=>p.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),t.links.unshift(...n.map(l=>Oat(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&ht("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168:
|
|
${c.join(`
|
|
`)}`)}function kxr(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=mm(i).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of k5)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(xe.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(e.set(String(s.id),i),ht("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return e}function Pxr(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(y=>{let g=(y.title||y.name||"").toLowerCase();return!xe.Episode.PV_CHECK.test(g)&&!xe.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(y=>L1(y.title||y.name||"").replace(/\d+/g,"").trim()).filter(y=>y.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=Ao(o.join(" ")),l=Ao(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h<d;h++){let y=Math.floor(h*o.length/d),g=Math.floor(h*c.length/d),b=pm(o[y],c[g]);h<3&&m.push(`"${o[y]}" vs "${c[g]}" (${b.toFixed(2)})`),b>.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function Ooe(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=wi(t.animeTitle,t.typeDescription,t.aliases),s=wi(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=zt(a||"").toLowerCase().replace(xe.Clean.FROM_SUFFIX,""),u=zt(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/ã€.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:ã€|\[)(.+?)(?:】|\])/);if(f){let p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连ç»å‰§|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|å°å‰§|çŸå‰§|å¾®çŸå‰§|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(xe.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(xe.Season.INFO_STRONG,"")),c=c.replace(xe.Clean.MOVIE_KEYWORDS,""),{target:Dr(c).replace(/\s+/g,""),rule:Dr(u).replace(/\s+/g,"")}};for(let a of r){let o=y=>String(y).split(Kg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Kg),d=String(e.source).split(Kg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function Dxr(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(xe.Clean.YEAR_TAG,"").replace(/ã€(电影|电视剧)】/g,"").trim(),a=!!i.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:Cat(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=Ao(s),d=mm(i),f=Wc(i),p=xo(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],y=kxr(h),g=y.has(String(t.animeId)),b=y.get(String(t.animeId)),x=r.has(t.animeId),A=(w,N)=>{ht("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},S=[],I=0;for(let w of e){let N=w.animeTitle||"",k=Ooe(t,w);if(k){if(k.action==="block"){A(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=Ao(N);S.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),ht("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){A(N,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let B=r.has(w.animeId),M=x||B,D=w.source==="hanjutv",L=N.includes("N/A")||D?{year:null,month:null}:Cat(w.startDate),Z=Ao(N),W=N.replace(xe.Clean.YEAR_TAG,"").replace(/ã€(电影|电视剧)】/g,"").trim(),U=!!W.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(W),z=a||U,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=mm(X[0]);if(d===ie){A(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if(Sxr(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=M1(s,t.typeDescription,t.source),ie=M1(N,w.typeDescription,w.source);A(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${Vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${Vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&L.year!==null,se=vxr(s,N,J);if(y.has(String(w.animeId))){let X=y.get(String(w.animeId));if(f===Wc(X)&&!(xe.Season.SUFFIX_AMBIGUOUS.test(d)||k5.some(ce=>ce.regex.test(d)))){A(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&Wc(W)===Wc(b)){A(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){A(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=Cxr(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Te=Pxr(t,w),Ne=s.search(xe.Clean.MOVIE_KEYWORDS)!==-1,je=N.search(xe.Clean.MOVIE_KEYWORDS)!==-1;if(Ne!==je){let X=xo(N,w.typeDescription,w.aliases),ie=Oe=>Wc(Oe.replace(xe.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),me=ie(N);if(pm(ce,me)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){A(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${Ne?"Movie":"TV"}] vs [${je?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:Txr(c,L,z);if(Fe===-1){let X=ue;if(Te.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&L.year&&Math.abs(c.year-L.year)>2&&!Te.isStrongMatch&&!M&&(X=!1),!X){A(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${L.year}, IsDub:${z})`);continue}}if(!M&&Ixr(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Te.isStrongMatch)ht("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{A(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let ve=X=>X?String(X).replace(xe.Clean.YEAR_TAG,"").replace(/ã€(电影|电视剧)】/g,"").trim():"",F=Array.from(new Set([i,...t.aliases||[]].map(ve).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(ve).filter(Boolean))),K=0,q=0;for(let X of F){let ie=Iat(X);for(let ce of G)K=Math.max(K,pm(X,ce)),q=Math.max(q,pm(ie,Iat(ce)))}let Q=Math.max(K,q),ee=Q;se&&(Q+=di.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(Q+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?Q+=di.LANG_MATCH_CN:ne!==re&&(Q+=di.LANG_MISMATCH),Te.isStrongMatch?(ht("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${Q.toFixed(2)}) -> ${ad.SIMILARITY_STRONG}`),Q=Math.max(Q,ad.SIMILARITY_STRONG)):Te.isStrongMismatch&&(A(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),Q=0),Q<ad.SIMILARITY_MIN){let X=f,ie=Wc(W);A(N,`\u76F8\u4F3C\u5EA6\u4E0D\u8DB3: ${Q.toFixed(2)} (Raw:${ee.toFixed(2)}, CleanA:"${X}", CleanB:"${ie}")`)}else Q>I&&(I=Q),S.push({anime:w,score:Q,lang:Z,debugTitle:N}),ht("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${Q.toFixed(2)} (BestSoFar=${I.toFixed(2)})`)}if(S.length===0||I<ad.SIMILARITY_MIN&&!S.some(w=>w.isCustomMapped))return[];let R=S.filter(w=>{if(w.isCustomMapped||w.score>=I-ad.TIER_DEFAULT||w.lang==="CN"&&w.score>=I-ad.TIER_CN)return!0;let N=xo(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(B=>B.startsWith("P"))&&w.score>=I-ad.TIER_PART){let B=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&B.length>0){if(m.some(D=>B.includes(D)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Bxr(t){let e=new Set;if(!t||t.length===0)return e;let r=new Map;t.forEach(n=>{let s=O.animes.find(d=>String(d.animeId)===String(n.animeId))||n,i=xo(s.animeTitle,s.typeDescription,s.aliases);if(i.has("MOVIE")||i.has("OVA")||i.has("SP")||i.has("SEQUEL"))return;let a=zt(n.animeTitle||""),o=a.match(/^(?:ã€|\[)(.+?)(?:】|\])/);if(o){let d=o[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(d)||(a=a.replace(o[0],d+" "))}a=a.replace(/第([一二三四五å…七八ä¹å]+)å£/g,(d,f)=>`\u7B2C${Gl(f)}\u5B63`);let c=a.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.META_SUFFIX,"").replace(xe.Lang.KEYWORDS_STRONG,"");if(k5.forEach(d=>c=c.replace(d.regex,"")),c=c.replace(xe.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!c)return;let u=M1(n.animeTitle,s.typeDescription,s.source),l=`${c}|${u}`;r.has(l)||r.set(l,[]),r.get(l).push(n)});for(let[n,s]of r.entries()){if(s.length<2)continue;let[i,a]=n.split("|"),o=s.map(d=>` - [${d.source}] ${d.animeTitle}`).join(`
|
|
`);ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${i}" [${a}] (\u5305\u542B ${s.length} \u4E2A\u6761\u76EE):
|
|
${o}`);let c=new Map,u=0;if(s.forEach(d=>{let f=O.animes.find(g=>String(g.animeId)===String(d.animeId))||d,p=xo(f.animeTitle,f.typeDescription,f.aliases),m=1;for(let g of p)if(g.startsWith("S")){let b=parseInt(g.substring(1));isNaN(b)||(m=b)}if(m===1){let g=p.has("SEQUEL")||xe.Season.SUFFIX_SEQUEL.test(f.animeTitle),b=p.has("AMBIGUOUS")||xe.Season.SUFFIX_AMBIGUOUS.test(f.animeTitle);(g||b)&&(m=2,ht("info",`[Merge-Check] [Detail] [${f.source}] "${f.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}m>u&&(u=m);let h=0;f.links&&(/^(dandan|animeko)$/i.test(f.source)?h=f.links.filter(g=>{let b=g.title||g.name||"",x=b.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();if(xe.Episode.SPECIAL_CHECK.test(x)||xe.Episode.DANDAN_IGNORE.test(x))return!1;let A=mm(b);return!(xe.Episode.SPECIAL_CHECK.test(A)||xe.Episode.DANDAN_IGNORE.test(A)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(b))}).length:h=f.links.length),c.has(f.source)||c.set(f.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let y=c.get(f.source);y.seasonCounts[m]||(y.seasonCounts[m]=0),y.seasonCounts[m]=Math.max(y.seasonCounts[m],h),m>y.maxSeason&&(y.maxSeason=m),m===1&&y.s1Candidates.push({anime:f,originalCount:h})}),u<=1)continue;let l=Array.from(c.keys());for(let[d,f]of c.entries()){if(f.maxSeason>1)continue;let p=0,m=!1;for(let y of l){if(y===d)continue;let g=c.get(y);g.seasonCounts[1]&&(m=!0,g.seasonCounts[1]>p&&(p=g.seasonCounts[1]))}if(!m)continue;let h=p+ad.COLLECTION_DIFF;f.s1Candidates.forEach(y=>{let g=p>0?y.originalCount/p:0;if(y.originalCount>h){if(g>ad.COLLECTION_RATIO){ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${d}] ${y.anime.animeTitle} (Ratio too high: ${g.toFixed(2)} > ${ad.COLLECTION_RATIO})`);return}e.add(y.anime.animeId),ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} > Thr:${h}, Ratio:${g.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} <= Threshold:${h})`)})}}return e}async function woe(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return ht("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let y=Toe(e);if(!y.links){let D=O.animes.find(L=>String(L.animeId)===String(e.animeId));y.links=D?.links?Toe(D.links):[]}if(!y.links||y.links.length===0)return ht("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),b=[],x=[e.animeId],A=!1,S=Ao(e.animeTitle),I=O5(y.links,e.animeTitle,u),R=f.has(e.animeId),w=(D,L)=>D?L&&D.includes(L)?D.replace(L,""):D:"",N=Wc(e.animeTitle),k=n.filter(D=>Wc(D.animeTitle)===N),B=Rxr(k,o,f);if(B.size>0){let D=Array.from(B.entries()).map(([L,Z])=>`S${L}=${Z}`).join(", ");(R||r.some(L=>n.some(Z=>Z.source===L&&f.has(Z.animeId))))&&ht("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${D} }`)}let M=[];for(let D of r){let L=n.filter(z=>{if(z.source!==D)return!1;let j=Ooe(e,z);if(j)return j.action==="block"?(ht("info",`${l} \u62E6\u622A: \u526F\u6E90 [${z.source}] ${z.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(z.animeId),se=p&&p.has(z.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let z of L)W.has(z.animeId)||(W.add(z.animeId),Z.push(z));if(L=Z,d&&(L=L.filter(z=>Ao(z.animeTitle)===d)),L.length>1&&L.sort((z,j)=>{let J=Ao(z.animeTitle)==="CN",se=Ao(j.animeTitle)==="CN";return J===se?0:J?1:-1}),L.length===0)continue;let U=Dxr(e,L,f,h);M.push(...U)}if(M.length>0){if(M.length>1&&(R||M.some(D=>f.has(D.animeId)))){M.sort((L,Z)=>{let W=wi(L.animeTitle,L.typeDescription,L.aliases)||1,U=wi(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==U)return W-U;let z=r.indexOf(L.source),j=r.indexOf(Z.source);return z-j});let D=M.map(L=>`[${L.source}]S${wi(L.animeTitle,L.typeDescription,L.aliases)||1}`);ht("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${D.join(" -> ")}`)}for(let D of M){let L=D.source,Z=Ooe(e,D);if(Z&&Z.action==="block"){ht("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${L}] ${D.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(D.animeId))&&!Z&&s.has(D.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(D.animeId));if(!W?.links)continue;let U=Toe(W),z=[],j=new Set,J=[],se=[],oe=U.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),ue=wat(y.links,u),Te=wat(U.links,L),Ne=new Set([...Te].filter(Pe=>!ue.has(Pe))),je=new Set([...ue].filter(Pe=>!Te.has(Pe)));je.size>0&&Rat(y.links,je,u,`\u4E3B\u6E90:${u}`),Ne.size>0&&Rat(U.links,Ne,L,`\u526F\u6E90:${L}`);let Fe=U.links,ve=Noe(y.links,o,u),F=Noe(Fe,o,L),G=Ao(U.animeTitle),K=ve,q=F,Q=0,ee=0,ne=f.has(D.animeId),re=(Pe,qe,Ye)=>{let Je=0,et=qe;if(Ye&&Ye>1){let st=!1,ut=Pe?e.animeId:D.animeId;if(m&&m.has(ut)){let rt=m.get(ut),Pt=Ye-1;if(rt[`S${Pt}`]!==void 0){let dt=rt[`S${Pt}`]+1;dt>0&&dt<qe.length&&(et=qe.slice(dt),Je=dt,ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u5386\u53F2\u63A8\u65AD\u547D\u4E2D: \u6839\u636E S${Pt} \u7ED3\u675F\u4F4D\u7F6E (Index ${rt[`S${Pt}`]}), \u8BBE\u5B9A S${Ye} \u8D77\u70B9\u4E3A Index ${dt}`),st=!0)}}if(!st){let rt=0;for(let dt=1;dt<Ye;dt++)rt+=B.get(dt)||0;let Pt=rt;if(Pt>=qe.length){let dt=(Ye-1)*12;dt<qe.length&&(ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u8D77\u70B9\u8D8A\u754C\u4FEE\u6B63: \u539F\u8BA1\u7B97 ${Pt} > Total ${qe.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ye} -> Index ${dt})`),Pt=Math.max(0,dt-2))}if(Pt>0&&Pt<qe.length){let dt=rt+(B.get(Ye)||999),Be=Math.min(dt,qe.length);et=qe.slice(Pt,Be),Je=Pt;let Xe=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${Xe}\u4E3A\u5408\u96C6 (Target: S${Ye}): \u65E0\u5386\u53F2\u63A8\u65AD(Defensive Fallback)\uFF0C\u4FE1\u4EFB\u5730\u56FE\u5207\u81F3 ${Pt}~${Be} (\u5171 ${et.length} \u96C6) \u53C2\u4E0E\u5BF9\u9F50`)}else ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u653E\u5F03\u5207\u7247: \u8BA1\u7B97\u8D77\u70B9 ${Pt} \u8D85\u51FA\u8303\u56F4 (Total: ${qe.length})`)}}else if(Ye===1){let st=B.get(1);if(st&&st<qe.length){et=qe.slice(0,st);let ut=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${ut}\u4E3A\u5408\u96C6 (Target: S1): \u4F7F\u7528 Index 0~${st} \u53C2\u4E0E\u5BF9\u9F50`)}}return{sliceStart:Je,slicedList:et}};if(R&&!ne){let Pe=wi(U.animeTitle,U.typeDescription,U.aliases),qe=re(!0,ve,Pe);K=qe.slicedList,Q=qe.sliceStart}else if(!R&&ne){let Pe=wi(e.animeTitle,e.typeDescription,e.aliases),qe=re(!1,F,Pe);q=qe.slicedList,ee=qe.sliceStart}y.animeId=Nxr(y.animeId,D.animeId,c),y.bangumiId=String(y.animeId);let X=0,ie=O5(U.links,U.animeTitle,L),ce=Pe=>Pe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,me=new Map,Oe=0;if(Z&&Z.hasRoutes){ht("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${D.animeTitle}`);let qe=Nat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee;Oe=qe;let Ye=new Map;for(let Je of Z.routes){let et=Je.sec.end-Je.sec.start+1,st=Je.prim.end-Je.prim.start+1;if(et!==st){ht("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Je.sec.start}~E${Je.sec.end} > E${Je.prim.start}~E${Je.prim.end}`);continue}for(let ut=0;ut<et;ut++)Ye.set(Je.sec.start+ut,Je.prim.start+ut)}for(let Je=0;Je<F.length;Je++){let et=F[Je],st=et.link,ut=st.name||st.title||`Index ${Je}`,rt=w(st.title||st.name,ie),Pt=Ca(rt,L),dt={link:st,originalIndex:et.originalIndex,relativeIndex:-1,info:Pt},Be=Pt.num;if(Be===null&&!Pt.isStrictSpecial&&(Be=Je+1),Be===null||!Ye.has(Be)){dt.relativeIndex=Je+qe,z.push({idx:dt.relativeIndex,text:` [\u672A\u8DEF\u7531\u843D\u5355] ${ut} (\u5E94\u7528\u63A8\u65AD\u504F\u79FB\u4F4D\u7F6E)`}),se.push(dt);continue}let Xe=Ye.get(Be),pt=ve.findIndex((nt,_t)=>{let yn=Ca(w(nt.link.title||nt.link.name,I),u),It=yn.num;return It===null&&!yn.isStrictSpecial&&(It=_t+1),It===Xe&&!yn.isSpecial&&!yn.isStrictSpecial});if(pt!==-1){me.set(Je,pt),dt.relativeIndex=pt;let nt=ve[pt].originalIndex,_t=y.links[nt],yn=_t.name||_t.title||`Index ${nt}`,It=Roe(st.url),wr=_t.url,js=`${L}:${It}`;wr.includes(Wu)||wr.startsWith(u+":")||(wr=`${u}:${wr}`);let Lr=`${wr}${Wu}${js}`,Qs=_t.title;if(Qs){let Hs=L,bs=(st.title||"").match(/^ã€([^】\d]+)(?:\d*)】/);bs&&(Hs=bs[1].trim()),Qs=Qs.replace(/^ã€([^】]+)】/,(Gs,Ku)=>`\u3010${Ku}${Kg}${Hs}\u3011`)}z.push({idx:pt,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${yn} <-> ${ut} (Rule: E${Be}>E${Xe})`}),j.add(pt),X++,J.push({linkIndex:nt,newUrl:Lr,newTitle:Qs})}else dt.relativeIndex=Je+qe,z.push({idx:dt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Xe} <-> ${ut}`}),se.push(dt)}}else{Z&&ht("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${L}] ${D.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Oe=Nat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee,Oe!==0&&ht("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${L}): Offset=${Oe} (P:${ve.length}, S:${F.length})`);let qe=new Map,Ye=null;F.forEach((ut,rt)=>{let Pt=ve[rt+Oe];if(!Pt)return;let dt=w(Pt.link.title||Pt.link.name,I),Be=w(ut.link.title||ut.link.name,ie),Xe=Ca(dt,u),pt=Ca(Be,L);if(Xe.num===null||pt.num===null||ce(Xe)||ce(pt))return;let nt=Xe.num-pt.num,yn=1+(pm(L1(dt),L1(Be))>.45?1:0);Ye!==null&&Xe.num-Ye>1?yn=.1:Ye=Xe.num,qe.set(nt,(qe.get(nt)||0)+yn)});let Je=qe.size>0?[...qe.entries()].reduce((ut,rt)=>rt[1]>ut[1]?rt:ut)[0]:null,et=ve.reduce((ut,rt,Pt)=>{let dt=Ca(w(rt.link.title||rt.link.name,I),u);return ce(dt)&&!dt.isPV&&ut.push(Pt),ut},[]),st=0;for(let ut=0;ut<F.length;ut++){let rt=ut+Oe,Pt=F[ut],dt=Pt.link,Be=dt.name||dt.title||`Index ${ut}`,Xe=w(dt.title||dt.name,ie),pt=Ca(Xe,L),nt={link:dt,originalIndex:Pt.originalIndex,relativeIndex:rt,info:pt},_t=ce(pt);if(Je!==null&&pt.num!==null&&!_t){let yn=pt.num+Je;if(rt=ve.findIndex(It=>{let wr=Ca(w(It.link.title||It.link.name,I),u);return wr.num===yn&&!ce(wr)}),rt!==-1)nt.relativeIndex=rt;else{let It=-.5;for(let wr=ve.length-1;wr>=0;wr--){let js=Ca(w(ve[wr].link.title||ve[wr].link.name,I),u);if(js.num!==null&&!js.isSpecial&&js.num<yn){It=wr;break}}nt.relativeIndex=It+ut*.001+.1}}else if(_t){let yn=-1,It=.65,wr=L1(Xe);for(let js of et){let Lr=w(ve[js].link.title||ve[js].link.name,I),Qs=Ca(Lr,u);if(pt.isPV!==Qs.isPV)continue;let Hs=pm(wr,L1(Lr));Hs>It&&(It=Hs,yn=js)}yn===-1&&!pt.isPV&&st<et.length&&(yn=et[st]),pt.isPV||st++,rt=yn,nt.relativeIndex=rt!==-1?rt:ve.length+ut*.001}else nt.relativeIndex=rt!==-1?rt:ut+Oe;if(rt>=0&&rt<ve.length){me.set(ut,rt);let yn=ve[rt].originalIndex,It=y.links[yn],wr=It.name||It.title||`Index ${yn}`,js=w(It.title,I),Lr=N5(js),Qs=N5(Xe),Hs=Ca(js,u);if(pt.isPV&&!Lr){z.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${wr} =/= ${Be} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(nt);continue}if(Lr!==Qs){z.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${wr} =/= ${Be} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(nt);continue}let bs=Hs.isStrictSpecial||Hs.num!==null&&Hs.num%1!==0,Gs=pt.isStrictSpecial||pt.num!==null&&pt.num%1!==0,Ku=!Hs.isSpecial&&(Hs.num===null||Hs.num%1===0),Co=!pt.isSpecial&&(pt.num===null||pt.num%1===0);if(bs&&Co||Gs&&Ku){z.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${wr} =/= ${Be} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(nt);continue}let Hc=Roe(dt.url),La=It.url,An=`${L}:${Hc}`;La.includes(Wu)||La.startsWith(u+":")||(La=`${u}:${La}`);let Ma=`${La}${Wu}${An}`,Ed=It.title;if(Ed){let To=L;if(dt.title){let tA=dt.title.match(/^ã€([^】\d]+)(?:\d*)】/);tA&&(To=tA[1].trim())}Ed=Ed.replace(/^ã€([^】]+)】/,(tA,fW)=>`\u3010${fW}${Kg}${To}\u3011`)}z.push({idx:nt.relativeIndex,text:` [\u5339\u914D] ${wr} <-> ${Be}`}),j.add(rt),X++,J.push({linkIndex:yn,newUrl:Ma,newTitle:Ed})}else z.push({idx:nt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${Be}`}),se.push(nt)}}for(let Pe=0;Pe<ve.length;Pe++)if(!j.has(Pe)){let qe=ve[Pe].originalIndex,Ye=y.links[qe],Je=Ye.name||Ye.title||`Index ${qe}`;z.push({idx:Pe,text:` [\u843D\u5355] ${Je} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(D.animeId),qe=!1;if(Z?qe=X>0:qe=wxr(X,ve.length,F.length,u,L,Pe),qe){for(let Be of J){let Xe=y.links[Be.linkIndex];Xe.url=Be.newUrl,Xe.title=Be.newTitle}let Ye=Be=>Be?Be.replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",Je=Ye(y.animeTitle);y.aliases=[...new Set([...y.aliases||[],...U.aliases||[],...D.aliases||[],Ye(U.animeTitle)])].filter(Be=>Be&&Be!==Je),ht("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${L}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),z.length>0&&(z.sort((Be,Xe)=>Be.idx-Xe.idx),ht("info",`${l} [${L}] \u6620\u5C04\u8BE6\u60C5:
|
|
${z.map(Be=>Be.text).join(`
|
|
`)}`)),y.mergedChildren=y.mergedChildren||[],y.mergedChildren.some(Be=>String(Be.animeId)===String(D.animeId)&&Be.source===D.source)||y.mergedChildren.push({animeId:D.animeId,animeTitle:D.animeTitle,source:D.source,episodes:U.links?U.links.length:0,imageUrl:D.imageUrl||""});let et=O.animes.find(Be=>String(Be.animeId)===String(D.animeId)&&Be.source===D.source);if(et&&(et.isHiddenChild=!0),m&&(ne||R)){let Be=-1;if(R&&!ne){for(let Xe=0;Xe<F.length;Xe++){let pt=me.has(Xe)?me.get(Xe):Xe+Oe;if(j.has(pt)){let nt=ve[pt].originalIndex;nt>Be&&(Be=nt)}}if(Be!==-1){let Xe=wi(U.animeTitle,U.typeDescription,U.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let pt=m.get(e.animeId);X>=3&&(pt[`S${Xe}`]=Be)}}else if(!R&&ne){for(let Xe=0;Xe<F.length;Xe++){let pt=me.has(Xe)?me.get(Xe):Xe+Oe;if(j.has(pt)){let nt=F[Xe];nt.originalIndex>Be&&(Be=nt.originalIndex)}}if(Be!==-1){let Xe=wi(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(D.animeId)||m.set(D.animeId,{});let pt=m.get(D.animeId);X>=3&&(pt[`S${Xe}`]=Be,ht("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${D.animeId}]: S${Xe} -> MaxIndex ${Be}`))}}}let st=wi(e.animeTitle,e.typeDescription,e.aliases)||1,ut=wi(U.animeTitle,U.typeDescription,U.aliases)||1,rt=Z&&st!==ut;f.has(D.animeId)||rt?ht("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${L}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):Oxr(y,se,L);let Pt=[],dt=[];y.links.forEach(Be=>{let Xe=Be.title.replace(xe.Clean.SOURCE_TAG,"").trim();xe.Episode.SINK_TITLE_STRICT.test(Xe)?dt.push(Be):Pt.push(Be)}),dt.length>0&&(y.links=[...Pt,...dt],ht("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${dt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),A=!0,b.push(L),x.push(D.animeId)}else ht("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${L}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(ve.length,F.length)})`)}}}if(A){let D=x.join("|");if(a.has(D))return ht("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${D})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(D);let L=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);L&&(L.isHiddenChild=!0);for(let W=1;W<x.length;W++){let U=x[W];f.has(U)?ht("info",`${l} \u5408\u96C6\u4FDD\u7559: ID [${U}] \u662F\u5408\u96C6\uFF0C\u4FDD\u7559\u4EE5\u4F9B\u540C\u7EC4\u590D\u7528\u3002`):s.add(U),i.add(U)}let Z=b.join(Kg);return y.animeTitle=y.animeTitle.replace(`from ${u}`,`from ${u}${Kg}${Z}`),y.source=u,y}return null}async function Wat(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(y=>y.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let y of m)h.secondaries.includes(y)||h.secondaries.push(y)}if(!i||i.length===0)return;ht("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Bxr(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let y=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;ht("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((B,M)=>{let D=m.get(B.source)??99,L=m.get(M.source)??99;if(D!==L)return D-L;let Z=J=>{let se=xo(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||Vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(B),U=Z(M);if(W!==U)return W-U;let z=wi(B.animeTitle,B.typeDescription,B.aliases)||1,j=wi(M.animeTitle,M.typeDescription,M.aliases)||1;return z-j});let k=w.map(B=>{let M=wi(B.animeTitle,B.typeDescription,B.aliases)||1,D=xo(B.animeTitle,B.typeDescription,B.aliases).has("MOVIE")||Vg(B.animeTitle,B.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(B.source)??"?"}] [${D}] [${B.source}] ${B.animeTitle}`});return ht("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F:
|
|
${k.join(`
|
|
`)}`),w},x=[];h.forEach(w=>{t.filter(k=>k.source===w&&!g.has(k.animeId)&&Ao(k.animeTitle)==="CN").forEach(k=>x.push(k))});let A=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&Ao(N.animeTitle)==="CN")){A=!0;break}if(x.length>0&&A){ht("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${x.length} \u4E2A CN \u8D44\u6E90\u3002`),b(x,"Phase 1");for(let w of x){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let S=[];for(let w=1;w<h.length;w++){let N=h[w];t.filter(B=>B.source===N&&!g.has(B.animeId)&&Ao(B.animeTitle)==="CN").forEach(B=>S.push(B))}if(S.length>=2){ht("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${S.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),b(S,"Phase 1.5");for(let w of S){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let I=[];h.forEach(w=>{t.filter(k=>k.source===w&&!g.has(k.animeId)).forEach(k=>I.push(k))});let R=new Set(I.map(w=>w.source));if(I.length>0&&R.size>=2){ht("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${I.length} \u4E2A\u8D44\u6E90\u3002`),b(I,"Phase 2");for(let w of I){if(g.has(w.animeId))continue;let N=m.get(w.source),k=h.slice(N+1);if(k.length===0)continue;let B=xo(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(B).some(Z=>Z.startsWith("P")),D=null;if(M){D=new Set;let Z=wi(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let U=O.animes.find(J=>String(J.animeId)===String(W));if(!U||!k.includes(U.source))continue;let z=xo(U.animeTitle,U.typeDescription,U.aliases);if(Array.from(z).some(J=>J.startsWith("P")))continue;let j=wi(U.animeTitle,U.typeDescription,U.aliases)||1;Z===j&&D.add(U.animeId)}}let L=await woe({pAnime:w,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:D,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Bt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?ht("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${t.length}`):ht("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function kat(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Pat(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function Dat(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。ï¼ï¼Ÿã€""''()ã€ã€‘《》;:~~]/g,"").toLowerCase()}function $at(t,e){let r=[...t||[],...e||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function Uat(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return ht("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=Dat(Pat(u)),d=kat(u);l&&(!c.has(l)||d<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(A=>{let S=Dat(Pat(A)),I=kat(A);if(p.push({danmu:A,time:I}),S&&c.has(S)){m++;let R=Math.round(I-c.get(S));f.set(R,(f.get(R)||0)+1)}});let h=0,y=0;f.forEach((A,S)=>{A>y&&(y=A,h=S)});let g=Math.min(o,u.length),b=y/g,x=m>0?y/m:0;if(m/g<n||b<.05||x<.15){ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5339\u914D\u7387\u6216\u96C6\u4E2D\u5EA6\u8FC7\u4F4E (\u6709\u6548:${(b*100).toFixed(1)}%, \u96C6\u4E2D\u5EA6:${(x*100).toFixed(1)}%)\uFF0C\u8DF3\u8FC7\u5BF9\u9F50`);return}if(Math.abs(h)<s){ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u6700\u4F73\u504F\u79FB ${h}s \u4F4E\u4E8E\u9608\u503C\uFF0C\u65E0\u9700\u5BF9\u9F50`);return}ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5E94\u7528\u504F\u79FB ${h}s (\u83B7 ${y} \u7968)`),p.forEach(({danmu:A,time:S})=>{let I=Math.max(0,S-h);typeof A.p=="string"&&(A.p=A.p.replace(/^[^,]+(?=,)/,I.toFixed(2))),A.t!=null&&(A.t=I),typeof A.progress=="number"&&(A.progress=Math.round(I*1e3))})}),t}ws();function Qat(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function Lxr(t=""){return cL(Tg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Mxr(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Lc(Cg(r))}var Hat="6.8.2",Wxr="a_8280",$xr="xiaomi",Gat="Redmi Note 12",Uxr="Xiaomi",zat="14",Fxr=`HanjuTV/${Hat} (${Gat}; Android ${zat}; Scale/2.00)`,Kat=14*24*60*60*1e3,Fat="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Vat="f349wghhe784tqwh",Yat="d3w8hf94fidk38lk",qxr="34F9Q53w/HJW8E6Q",qat="fb3597b87601d5a7";function KT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):Tg(t)}function jxr(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Lc(t)}function Jat(t,e){let r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t[n]^e[n];return r}function Qxr(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 Hxr(t){return t.replace(/[\u0000-\u001f\u007f-\u009f]/g,"")}function W1(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 jat(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n+r)%4)];return e}function qn(t,e){let r=0,n=t,s=e;for(let i=0;i<8;i++){s&1&&(r^=n);let a=n&128;n=n<<1&255,a&&(n^=27),s>>=1}return r}function Gxr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],2)^qn(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^qn(n[1],2)^qn(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^qn(n[2],2)^qn(n[3],3),e[4*r+3]=qn(n[0],3)^n[1]^n[2]^qn(n[3],2)}return e}function zxr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],14)^qn(n[1],11)^qn(n[2],13)^qn(n[3],9),e[4*r+1]=qn(n[0],9)^qn(n[1],14)^qn(n[2],11)^qn(n[3],13),e[4*r+2]=qn(n[0],13)^qn(n[1],9)^qn(n[2],14)^qn(n[3],11),e[4*r+3]=qn(n[0],11)^qn(n[1],13)^qn(n[2],9)^qn(n[3],14)}return e}function Kxr(t,e){let r=new Uint8Array(t);r=W1(r,e,0);for(let n=1;n<=9;n++)r=aL(r),r=jat(r),r=Gxr(r),r=W1(r,e,n);return r=aL(r),r=jat(r),r=W1(r,e,10),r}function Vxr(t,e){let r=new Uint8Array(t);r=W1(r,e,10);for(let n=9;n>=1;n--)r=NC(r),r=RC(r),r=W1(r,e,n),r=zxr(r);return r=NC(r),r=RC(r),r=W1(r,e,0),r}function Yxr(t,e,r){let n=Qxr(t,16),s=oL(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o<n.length;o+=16){let c=n.slice(o,o+16),u=Jat(c,a),l=Kxr(u,s);i.set(l,o),a=l}return i}function Jxr(t,e,r){if(t.length%16!==0)throw new Error(`\u5BC6\u6587\u957F\u5EA6\u4E0D\u662F16\u7684\u500D\u6570: ${t.length}`);let n=oL(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=Jat(Vxr(o,n),i);s.set(c,a),i=o}return s}async function P5(t,e,r){let n=KT(e),s=KT(r),i=KT(t),a=Yxr(i,n,s);return cL(a)}async function Xxr(t,e,r){let n=KT(e),s=KT(r),i=Cg(t),a=Jxr(i,n,s);return jxr(a)}function Xat(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 Zat(t=20){let e="";for(let r=0;r<t;r++)e+=Fat[Xat(Fat.length)];return e}function D5(t,e){let r="";for(let n=0;n<e;n++)r+=t[Xat(t.length)];return r}function Zxr(t,e=Date.now()){let r=Qat(e);return{uid:t||Zat(),said:D5("0123456789abcdef",16),oa:D5("0123456789abcdef",16),installTs:Math.max(0,r-Kat)}}function ebr(t,e){let r=Qat(e,t.installTs+Kat);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:Gat,maker:Uxr,osv:zat,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 eot(t=Date.now(),e=Zat()){let r=Zxr(e,t),n=Ms(r.uid),s=await P5(r.uid,Vat,Yat);return async function(a=Date.now()){let o=ebr(r,a),c=await P5(o,n.slice(0,16),n.slice(16,32));return{uid:r.uid,headers:{app:"hj",ch:$xr,said:r.said,uk:s,vn:Hat,sign:c,"User-Agent":Fxr,vc:Wxr,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function tot(t=Date.now()){let e=D5("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",20),r=D5("0123456789abcdef",16);return async function(s=Date.now()){let i=Ms(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:qat,oa:r,dpc:0,dsc:0,qpc:0,apad:0}),o=await P5(e,Vat,Yat),c=await P5(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:qat,di:o,token:"",uid:"",rp:c,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function koe(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=Ms(`${e}${r}`)),!n)throw new Error("\u7F3A\u5C11\u89E3\u5BC6 key\uFF0C\u4E14\u65E0\u6CD5\u901A\u8FC7 uid+ts \u63A8\u5BFC");let s=Ms(`${n}${qxr}`),i=s.slice(0,16),a=s.slice(16,32),o=await Xxr(t.data,i,a),c=Hxr(o).trim();return JSON.parse(c)}function rot(t=""){let e=String(t||"").trim();return e.startsWith("hanjutv:")?e.slice(8):e}function zT(t="",e=!1){let r=String(t||"").trim();return r?{id:r,preferTv:e,rawId:`${e?"tv":"hxq"}:${r}`}:null}function tbr(t=""){if(!t.startsWith("merge:"))return null;try{let e=Mxr(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 not(t="",e=""){let r=String(t||"").trim(),n=String(e||"").trim();return!r||!n?"":`merge:${Lxr(JSON.stringify({hxq:r,tv:n}))}`}function sot(t=""){let e=rot(t);if(!e)return{id:"",preferTv:!1,rawId:"",refs:[]};let r=tbr(e);if(r){let s=[zT(r.hxqId,!1),zT(r.tvId,!0)].filter(Boolean);return{id:s[0]?.id||"",preferTv:!1,rawId:e,refs:s}}if(e.startsWith("tv:")){let s=zT(e.slice(3),!0);return{id:s?.id||"",preferTv:!0,rawId:s?.rawId||"",refs:s?[s]:[]}}if(e.startsWith("hxq:")){let s=zT(e.slice(4),!1);return{id:s?.id||"",preferTv:!1,rawId:s?.rawId||"",refs:s?[s]:[]}}let n=zT(e,!1);return{id:n?.id||"",preferTv:!1,rawId:n?.rawId||"",refs:n?[n]:[]}}function B5(t=""){let e=rot(t);return e.startsWith("merge:")?"\u97E9\u5C0F\u5708\uFF06\u6781\u901F\u7248":e.startsWith("tv:")?"\u6781\u901F\u7248":"\u97E9\u5C0F\u5708"}vt();mn();var wt=class{constructor(){}async search(e){throw new Error("Method 'search' must be implemented")}async getEpisodes(e){throw new Error("Method 'Episodes' must be implemented")}async handleAnimes(e,r,n,s=null,i=null){throw new Error("Method 'handleAnimes' must be implemented")}async getEpisodeDanmu(e){throw new Error("Method 'getEpisodeDanmu' must be implemented")}async getEpisodeDanmuSegments(e){throw new Error("Method 'getEpisodeDanmuSegments' must be implemented")}async getEpisodeSegmentDanmu(e){throw new Error("Method 'getEpisodeSegmentDanmu' must be implemented")}formatComments(e){throw new Error("Method 'formatComments' must be implemented")}async getComments(e,r,n=!1,s=null){if(n)return s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),await this.getEpisodeDanmuSegments(e);s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`);let i=await this.getEpisodeDanmu(e);s&&await s(85,`\u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),E("info",`[system] [Base] \u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let a=this.formatComments(i);return s&&await s(100,`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),E("info",`[system] [Base] \u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),FC(a,r)}async getSegmentComments(e,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${e.type}\u5F39\u5E55`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${e.type}\u5F39\u5E55`);let n=await this.getEpisodeSegmentDanmu(e);r&&await r(85,`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),E("info",`[system] [Base] \u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let s=this.formatComments(n);return r&&await r(100,`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),E("info",`[system] [Base] \u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),FC(s,e.type)}sortAndPushAnimesByYear(e,r){e.filter(n=>n!==null).sort((n,s)=>{let i=im(n.animeTitle),a=im(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=ZY(n.animeTitle),c=ZY(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}};kt();vt();dr();function Br(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Yg(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}Un();mn();var VT=class extends wt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await Ae(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(E("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上ä¸ä¸‹])?/)||l.period.match(/第(\d+)期([上ä¸ä¸‹])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}E("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return E("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await Ae(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){E("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await Ae(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){E("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(e,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(E("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return E("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await Ae(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return E("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;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 E("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await Ae(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),E("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),E("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return E("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.titleTxt,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))O.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m<l.seriesPlaylinks.length;m++){let h=l.seriesPlaylinks[m],y="";h&&typeof h=="object"?y=h.url||"":typeof h=="string"&&(y=l.playlinks&&l.playlinks[l.seriesSite]?l.playlinks[l.seriesSite]:""),y&&d.push({name:(m+1).toString(),url:y,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,y=await this.getEpisodesV2(f,h,m);if(y&&y.length>0)for(let g of y)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let x of b)d.push({name:x.name,url:x.url,title:`\u3010${m}\u3011 \u7B2C${x.name}\u96C6`,sort:x.name})}}catch(g){E("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){E("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Br(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Bt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();vt();dr();Un();mn();var YT=class extends wt{async getVodAnimes(e,r,n){try{let s=FUe(e),i=encodeURIComponent(s),a=await Ae(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return E("info",`[VOD] ${n} response: \u2193\u2193\u2193`),rs(o),{serverName:n,list:o.list}}else return E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return E("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return E("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return E("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];E("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return E("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];E("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return E("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return E("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return E("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>xt(d.vod_name,r,a)),u=a!==null?a:$t(r);if(u!==null){let d=c.filter(f=>{let p=Tt(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,E("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],y=0;for(let g of m){let b=f[g],x=p[g].split("#");for(let A of x){let S=A.split("$");y++,h.push({name:y.toString(),url:S[1],title:`\u3010${b}\u3011 ${S[0]}`})}}if(h.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Br(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Bt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(f){E("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};vt();vt();dr();kt();async function iot(t){let e="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await Ae(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return E("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function aot(t,e={}){let r="https://api.douban.com/v2";try{let n=await Gr(`${r}${t}`,JSON.stringify({...e,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return E("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function oot(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await iot(r)}async function cot(t,e=20){return await aot("/movie/search",{q:t,start:0,count:e})}async function uot(t){let e=`/movie/${t}?for_mobile=1`;return await iot(e)}async function lot(t){let e=`/movie/imdb/${t}`;return await aot(e)}vt();dr();async function dot(t){let e="https://api.imdbapi.dev";try{let r=await Ae(`${e}${t}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return E("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function fot(t){let e=`/titles/${t}/seasons`;return await dot(e)}async function pot(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await dot(r)}var JT=class extends wt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await lot(e);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(e,r){try{let n=[],i=(await bat(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await fot(i);E("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;E("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await pot(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){E("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return E("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await R5(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),E("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return E("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return E("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};vt();mn();var XT=class extends wt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await oot(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){E("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await cot(e))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),E("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return E("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return xt(d,r,i)}),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;E("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await uot(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;E("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let y=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(y[0].provider="tencent",y[0].mediaId=g,await this.tencentSource.handleAnimes(y,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(y[0].provider="iqiyi",y[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(y,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(y[0].provider="youku",y[0].mediaId=g,await this.youkuSource.handleAnimes(y,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(y[0].provider="bilibili",y[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(y,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,x=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);x&&x[1]&&(g=x[1]),g&&(y[0].provider="migu",y[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(y,p.data?.title,a,s,i));break}}}return m}catch(d){return E("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();vt();dr();ws();Un();mn();ys();var ip=null,ZT=0,ew=0,na={search:"WIN",detail:"TV",danmu:"TV"},tw=class extends wt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;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=ip;ip=this.generateRandomAliId(),ZT=0,ew=Math.floor(Math.random()*31)+30,e?E("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${ip}`):E("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${ip}`),E("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${ew} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){ip||this.rotateAliId(),ZT>=ew&&(E("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${ZT}/${ew})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),ZT++,E("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${ZT}/${ew} (\u5F53\u524DID: ...${ip.slice(-6)})`)}getAliId(){return ip||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),ip}generateTvHeaders(e,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:e.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()}
|
|
aliId:${r}
|
|
ct:${n}
|
|
cv:${s}
|
|
t:${i}
|
|
${a}?${o}`;return BUe(c,u)}buildSignedHeaders({method:e,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=RUe(r),c=wC(n),u=Date.now(),d=this.generateSignature(e,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(e,r,n){try{let s=await Ae(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(E("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return E("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=Gb(e,r);return await Ae(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await Ae(r+"?"+wC(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=kC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await Ae(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(E("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return E("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=wC(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await Ae(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(E("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return E("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=wC({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await Ae(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return E("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(y=>y.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let y=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();y&&!h.includes(y)&&h.push(y)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return E("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:e,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;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?(OC(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(E("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return E("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){E("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(na.search);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${o} \u7AEF\u63A5\u53E3\u641C\u7D22`);try{let c=null;if(o==="TV")c=await this.searchAppContent(e);else if(o==="MAC")c=await this.performMacSearch(e);else if(o==="WIN")c=await this.performWinSearch(e);else if(o==="WEB"){let u={value:!1},l={value:0};c=await this.performNetworkSearch(e,{lockRef:u,lastRequestTimeRef:l,minInterval:400})}if(c!==null&&Array.isArray(c)){n=!0,r=c,na.search!==o&&(E("info",`[Renren] \u641C\u7D22\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.search} -> ${o}`),na.search=o);break}else E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(E("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),na.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=kC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await Ae(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return E("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=kC(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await Ae(l,{headers:u,timeout:5e3});if(!d||!d.data)return E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return E("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=OC(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(na.detail);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${o} \u7AEF\u63A5\u53E3\u83B7\u53D6\u8BE6\u60C5\u5206\u96C6 (ID=${e})`);try{if(o==="TV"?n=await this.getAppDramaDetail(String(e),String(r)):o==="MAC"?n=await this.getGatewayDramaDetail(this.API_CONFIG.MAC_HOST,String(e),String(r)):o==="WIN"?n=await this.getGatewayDramaDetail(this.API_CONFIG.WIN_HOST,String(e),String(r)):o==="WEB"&&(n=await this.getWebDramaDetailFallback(String(e))),n)return na.detail!==o&&(E("info",`[Renren] \u8BE6\u60C5\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.detail} -> ${o}`),na.detail=o),n;E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return E("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>xt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>xt(f,r,i)):!1),c=i!==null?i:$t(r);if(c!==null){let d=o.filter(f=>{let p=Tt(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,E("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[na.search]||"\u672A\u77E5";E("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",y=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${y}\u3011from renren`,aliases:m,type:y,typeDescription:y,imageUrl:d.imageUrl,startDate:Br(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Bt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(f){E("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=kC(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await Ae(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(E("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=OC(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return E("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(e){let r=e;String(e).includes("-")&&(r=String(e).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(E("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=OC(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return E("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(na.danmu);i===-1&&(i=0);for(let o=i;o<s.length;o++){let c=s[o];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${c} \u7AEF\u63A5\u53E3\u83B7\u53D6\u5F39\u5E55`);try{if(c==="TV"?n=await this.getAppDanmu(e):c==="MAC"?n=await this.getMacDanmu(e):c==="WIN"?n=await this.getWinDanmu(e):c==="WEB"&&(n=await this.getWebDanmuFallback(e)),n!==null&&Array.isArray(n))return na.danmu!==c&&(E("info",`[Renren] \u5F39\u5E55\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.danmu} -> ${c}`),na.danmu=c),n.length>0?E("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):E("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}E("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new St({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&E("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}};kt();vt();dr();ws();Un();mn();ys();var rbr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Jg=1e8,mot=6e4,xs=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),rw=class extends wt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmupAttempted=!1}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(e){return rbr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await tot(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await eot(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await Ae(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return koe(s?.data,n.uid)}logError(e,r){E("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=B5(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&E("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(e=[]){return Array.isArray(e)?e.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!xt(e.name,n)||!xt(r.name,n))?!1:xt(e.name,r.name)&&xt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===xs.MERGED?Vr(`hxq:${s}|tv:${i}`):Vr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let y of p)(xt(y?.name||"",e)?m:h).push(y);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,xs.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,xs.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,xs.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,xs.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,xs.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,xs.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,xs.TV)).filter(Boolean));let f=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===xs.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await koe(e,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await Ae(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await Ae(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await Ae(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(e){try{let r=String(e||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(E("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(E("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(E("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),E("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),E("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(E("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await Ae(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await Ae(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await Ae(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await Ae(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(E("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(E("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=not(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Br(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||xs.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===xs.TV?n:""),a=Number(e?.animeId),o=r===xs.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Vr(`hxq:${n}|tv:${s}`):null,c=(r===xs.HXQ||r===xs.MERGED)&&n,u=(r===xs.TV||r===xs.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===xs.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let p=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(e,p,f,o),links:f}}}if((r===xs.HXQ||r===xs.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Vr(n)),links:f}}if((r===xs.TV||r===xs.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Vr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return E("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>xt(u.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let u=o.filter(l=>{let d=Tt(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,E("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Bt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(l){E("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=mot,l=0,d=240;for(;c<Jg&&l<d;){let f=await Ae(`${i}/api/danmu/playItem/list?pid=${r}&prevId=${o}&fromAxis=${c}&toAxis=${u}&offset=0`,{headers:s,timeout:1e4,retries:1});l++;let 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??Jg),y=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Jg)break;if(Number.isFinite(y)&&y>o&&(o=y),c=h,!m){if(p.length===0)break;u=c+mot}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i<Jg&&a<o;)try{let c=await this.tvGet(`/api/v1/bulletchat/episode/get?eid=${r}&prevId=${s}&fromAxis=${i}&toAxis=${Jg}&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??Jg),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Jg||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(e){let r=sot(e),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(e){return E("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}};kt();vt();dr();Un();mo();mn();ys();var Xg=class extends wt{async search(e){try{let r=[];O.useBangumiData&&(r=await Ru(e,["gamer","gamer_hk"]),E("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return E("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(p=>{let h=(p.titles.find(y=>y&&y.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=$o(e),i=e,a=encodeURIComponent(s);E("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),E("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await Ae(m,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let y=h.data.anime;for(let g of y)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return E("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(y)}`),E("info",`[Bahamut] \u8FD4\u56DE ${y.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:y,source:"original"}}return E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return E("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(A=>setTimeout(A,100));let p=await D1(i,o.signal,"Bahamut");if(!p||!p.title)return E("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:m,cnAlias:h}=p;E("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),x=await Ae(b,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(x&&x.data&&x.data.anime&&x.data.anime.length>0){let A=x.data.anime;for(let S of A)try{S._originalQuery=e,S._searchUsedTitle=m,S._tmdbCnAlias=h}catch{}return E("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(A)}`),E("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:A,source:"tmdb"}}return E("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(p){return p.name==="AbortError"?(E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(E("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,E("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return E("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await Ae(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return E("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return E("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return E("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return E("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=$o(r);function c(y,g,b){if(!y)return!1;let x=String(y),A=String(g||""),S=String(b||"");if(O.strictTitleMatch){if(am(x,A)||S&&am(x,S))return!0;try{if(am(x,$o(A))||am(x,zt(A))||S&&(am(x,$o(S))||am(x,zt(S))))return!0}catch{}return!1}let I=Dr(x),R=Dr(A),w=S?Dr(S):"";if(I.includes(R)||w&&I.includes(w))return!0;try{if(I.includes(Dr($o(A)))||I.includes(Dr(zt(A)))||w&&(I.includes(Dr($o(S)))||I.includes(Dr(zt(S)))))return!0}catch{}try{if(I.toLowerCase().includes(R.toLowerCase())||w&&I.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(y=>{let g=y.title||"",b=y._searchUsedTitle||y._originalQuery||"";return o||y._searchUsedTitle&&y._searchUsedTitle!==r?(E("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,b)||Array.isArray(y.aliases)&&y.aliases.some(x=>c(x,r,b))});l.forEach(y=>{y._originalTitleAlias=y.title?zt(y.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;B1(l,d);let f=i!==null?i:$t(r),p=l;if(f!==null){let y=l.filter(g=>{let b=g._displayTitle||g.title,x=Tt(b).season;return x===f||f===1&&x===null});y.length>0&&(p=y,E("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let m=new Map,h=await Promise.all(p.map(async y=>{try{let g=String(y.video_sn);m.has(g)||m.set(g,this.getEpisodes(y.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let x=b.video,A=null;b.anime.episodes&&(A=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let S=[];if(A&&Array.isArray(A))for(let I of A){let R=`\u7B2C${I.episode}\u96C6`;S.push({name:I.episode.toString(),url:I.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(S.length>0){let I=null;if(y._bangumiBegin&&(I=parseInt(y._bangumiBegin.substring(0,4))),!I&&b.anime&&b.anime.seasonStart&&(I=new Date(b.anime.seasonStart).getFullYear()),!I&&x&&x.upTime){let L=String(x.upTime).match(/(\d{4})/);L&&(I=parseInt(L[1]))}if(!I){let D=(y.info||"").match(/(\d{4})/);D&&(I=parseInt(D[1]))}let R=b.anime&&b.anime.cover||y.cover||x&&x.cover||"",w=y._displayTitle||zt(y.title),N=Array.isArray(y.aliases)?[...y.aliases]:[];y._originalTitleAlias&&y._originalTitleAlias!==w&&!N.includes(y._originalTitleAlias)&&N.push(y._originalTitleAlias);let k=y._typeStr||"\u52A8\u6F2B",B=b.anime&&b.anime.title||x&&x.title||"";B.includes("[\u96FB\u5F71]")?k="\u5267\u573A\u7248":B.includes("[\u7279\u5225\u7BC7]")&&(k="OVA");let M={animeId:y.video_sn,bangumiId:String(y.video_sn),animeTitle:`${w}(${I||"N/A"})\u3010${k}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:I?Br(I):Br(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:S.length,rating:x.rating,isFavorited:!0,source:"bahamut"};a.push(M),Bt({...M,links:S},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(g){E("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await Ae(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return E("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:O.danmuSimplifiedTraditional==="simplified"?zt(n.text):n.text,t:n.time/10}))}};kt();vt();dr();Un();mo();ys();kt();vt();dr();ws();Un();mn();ys();var Zg=class extends wt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:åˆå|别å)\s*[::]\s*(.+)$/);return s&&s[1].split(/[ã€,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return xt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>xt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(/<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{E("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:e,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(e)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return E("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){E("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(E("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(e));l.length>0?(E("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):E("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return E("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return E("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${e}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return E("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){E("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(E("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return E("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];E("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{E("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Gr(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return E("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=m.unionTitle||m.title||`\u7B2C${p+1}\u96C6`,y=`https://v.qq.com/x/cover/${l.mediaId}/${m.vid}.html`;f.push({name:(p+1).toString(),url:y,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:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Bt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){E("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);E("info",`[Tencent] vid: ${r}`);let n;try{n=await Ae(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return E("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/<title[^>]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";E("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;E("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(Ae(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return E("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return rs(u),u}async getEpisodeDanmuSegments(e){E("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);E("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await Ae(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new St({type:"qq",segmentList:[]}):(E("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new St({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new St({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return E("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}};vt();dr();mn();ws();Un();kt();ys();var ey=class t extends wt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{E("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${Ii(r)}`,i=async()=>{let l=await Ae(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});return!l||!l.data?null:typeof l.data=="string"?JSON.parse(l.data):l.data},a=2,o=await i();for(let l=0;l<a&&(!o||o.code==="-1");l++){let d=o?`\u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=${o.code})`:"\u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A";E("info",`[iQiyi] ${d}\uFF0C\u7B49\u5F85 1.5 \u79D2\u540E\u91CD\u8BD5 (${l+1}/${a})`),await new Promise(f=>setTimeout(f,1500)),o=await i()}if(!o)return E("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];if(o.code==="-1")return E("info","[iQiyi] \u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=-1)\uFF0C\u91CD\u8BD5\u540E\u4ECD\u5931\u8D25"),E("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];if(!o.data||!o.data.templates)return E("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),E("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];let c=[],u=o.data.templates;for(let l of u){let d=[];l.template===112&&l.intentAlbumInfos?(E("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${l.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),d=l.intentAlbumInfos):[101,102,103].includes(l.template)&&l.albumInfo&&(E("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${l.template})`),d=[l.albumInfo]);for(let f of d){let p=this._filterIqiyiSearchItem(f,e);p&&c.push(p)}}return E("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return E("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return E("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let y=e.year.value||e.year.name;y&&typeof y=="string"&&y.length===4&&/^\d{4}$/.test(y)&&(m=parseInt(y))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return E("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return E("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|è¯|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(E("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);E("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(E("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(E("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return E("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${Ii(n)}`,a=await Ae(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return E("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return E("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(E("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){E("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){E("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let y of h.videos)if(!(!y.data||!Array.isArray(y.data)))for(let g of y.data){if(g.content_type!==1)continue;let x=(g.play_url||"").match(/tvid=(\d+)/);if(!x)continue;let A=x[1],S=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",I=g.subtitle;I&&!S.includes(I)&&(S=`${S} ${I}`);let R=g.album_order,w=g.page_url;A&&S&&w&&c.push({id:A,title:S,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){E("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let y=h.videos;if(typeof y=="string"){E("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${y}`);try{let g=await Ae(y);y=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){E("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(y&&typeof y=="object"&&y.feature_paged)for(let g in y.feature_paged){let b=y.feature_paged[g];for(let x of b){if(x.content_type!==1)continue;let S=(x.play_url||"").match(/tvid=(\d+)/);if(!S)continue;let I=S[1],R=x.short_display_name||x.title||"\u672A\u77E5\u5206\u96C6",w=x.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=x.album_order,k=x.page_url;I&&R&&N&&k&&c.push({id:I,title:R,order:N,link:k})}}}}if(!d)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),E("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return E("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${Ii(r)}`;E("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await Ae(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return E("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return E("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return E("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return E("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),E("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return E("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return E("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;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 Ms(a).toUpperCase()}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[iQiyi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await Ae(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return E("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/<title[^>]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";E("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;E("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return E("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return rs(c),c}async getEpisodeDanmuSegments(e){E("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return E("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new St({type:"qiyi",segmentList:[]});s=d[1],E("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await Ae(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),E("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return E("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await Ae(d,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return E("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new St({type:"qiyi",duration:i,segmentList:[]});E("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return E("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);E("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d<o;d++){let f=d+1,p=Ms(`${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 Ae(e.url,{headers:{"Accept-Encoding":"br","Content-Type":"application/octet-stream","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},base64Data:!0,validStatusCodes:[404],retries:1});if(!r||r.status===404||!r.data)return[];let n=Cg(r.data),s=await this._decompressBrotli(n);return s[0]===60?this._parseIqiyiXmlDanmu(new TextDecoder("utf-8").decode(s)):this._parseIqiyiProtoDanmu(s)}catch(r){return E("error","[iQiyi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async _decompressBrotli(e){if(typeof DecompressionStream<"u")try{let n=new Blob([e]).stream().pipeThrough(new DecompressionStream("brotli"));return new Uint8Array(await new Response(n).arrayBuffer())}catch{E("info","[iQiyi] DecompressionStream Brotli \u89E3\u538B\u5931\u8D25\uFF0C\u5C1D\u8BD5 Node zlib")}let{brotliDecompressSync:r}=await import("node:zlib");return new Uint8Array(r(e))}_parseIqiyiXmlDanmu(e){function r(o){let c=new RegExp(`<${o}>(.*?)</${o}>`,"g");return e.match(c)?.map(u=>u.substring(o.length+2,u.length-o.length-3))||[]}let n=r("content"),s=r("showTime"),i=r("color"),a=r("likeCount");return n.map((o,c)=>({content:o,showTime:s[c],color:i[c],like:parseInt(a[c],10)||0}))}_parseIqiyiProtoDanmu(e){let r=[],n=this._parseIqiyiProtoFields(e);for(let s of n){if(s.number!==6||!s.bytes)continue;let i=this._parseIqiyiProtoFields(s.bytes),a=this._getIqiyiProtoString(i,1);for(let o of i){if(o.number!==2||!o.bytes)continue;let c=this._parseIqiyiProtoFields(o.bytes),u=this._getIqiyiProtoString(c,2);u&&r.push({content:u,showTime:this._getIqiyiProtoString(c,6)||a||"0",color:this._getIqiyiProtoString(c,8)||"ffffff",like:parseInt(this._getIqiyiProtoString(c,14),10)||0})}}return r}_parseIqiyiProtoFields(e){let r=[],n=0,s=new TextDecoder("utf-8");for(;n<e.length;){let i=this._readIqiyiVarint(e,n),a=i.value;n=i.offset;let o=Number(a>>3n),c=Number(a&7n);if(o===0)break;if(c===0){let u=this._readIqiyiVarint(e,n);r.push({number:o,wireType:c,value:u.value.toString()}),n=u.offset}else if(c===1)r.push({number:o,wireType:c}),n+=8;else if(c===2){let u=this._readIqiyiVarint(e,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>e.length)break;let f=e.subarray(n,d);r.push({number:o,wireType:c,bytes:f,value:s.decode(f)}),n=d}else if(c===5)r.push({number:o,wireType:c}),n+=4;else break}return r}_readIqiyiVarint(e,r){let n=0n,s=0n,i=r;for(;i<e.length;){let a=e[i++];if(n|=BigInt(a&127)<<s,!(a&128))return{value:n,offset:i};s+=7n}throw new Error("\u7231\u5947\u827A\u5F39\u5E55 protobuf varint \u4E0D\u5B8C\u6574")}_getIqiyiProtoString(e,r){return e.find(n=>n.number===r)?.value||""}formatComments(e){return e.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=If(r.content),n.size=25,n.like=r.like,n})}};kt();vt();dr();mn();ws();Un();ys();var ty=class extends wt{transformV2Color(e){if(!e)return-1;let n=fJ(e.color_left),s=fJ(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){try{E("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await Ae(n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json",Referer:"https://www.mgtv.com/"}});if(!s||!s.data)return E("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return E("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return E("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return E("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s<i;){let u=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=${n}&page=1&_support=10000000`,l=await Ae(u,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!l||!l.data){E("info","[Mango] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F");break}let d=typeof l.data=="string"?JSON.parse(l.data):l.data;if(!d.data||!d.data.list){E("info","[Mango] \u5206\u96C6\u5217\u8868\u4E3A\u7A7A");break}d.data.list&&d.data.list.length>0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,E("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s<i&&d.data.tab_m&&d.data.tab_m[s]&&(n=d.data.tab_m[s].m)}let a=/^(.*?)(抢先(看|版)|åŠ æ›´(版)?|花絮|预告|特辑|(特别|惊喜|纳凉)?ä¼åˆ’|彩蛋|专访|幕åŽ(花絮)?|ç›´æ’|纯享|未æ’|è¡ç”Ÿ|番外|åˆä¼™äººæ‰‹è®°|会员(专享|åŠ é•¿)|片花|ç²¾åŽ|看点|速看|解读|reaction|è¶…å‰è¥ä¸š|è¶…å‰(vlog)?|陪看(è®°)?|.{3,}篇|影评)(.*?)$/i,o=r.filter(u=>{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(E("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(E("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return E("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{E("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await Ae(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return E("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return E("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),E("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return E("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});E("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上ä¸ä¸‹])/),c=a.match(/第(\d+)期/),u=/第\d+期[上ä¸ä¸‹]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未æ’|回顾|特辑|幕åŽ)/.test(p)?E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|åŠ æ›´|Plus|\+|花絮|预告|彩蛋|抢先|精选|未æ’|回顾|特辑|幕åŽ|访谈|采访|混剪|åˆé›†|盘点|总结|åˆ å‡|æœªæ’æ”¾|NG|番外|片段|看点|精彩|制作|导演|演员|æ‹æ‘„|片尾曲|æ’æ›²|主题曲|背景音ä¹|OST|音ä¹|æŒæ›²/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){E("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",y=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Bt({...b,links:y},s),O.animes.length>O.MAX_ANIMES&&Ut();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=`https://www.mgtv.com/b/${l.mediaId}/${m.video_id}.html`,y=`${m.t2||""} ${m.t1||""}`.trim();f.push({name:String(p+1),url:h,title:`\u3010imgo\u3011 ${y}`})}if(f.length>0){let m={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(Ae(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return E("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return rs(i),i}async getEpisodeDanmuSegments(e){E("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return E("error","[Mango] Invalid URL"),new St({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];E("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await Ae(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(m){return m.response?.status===404?new St({type:"imgo",segmentList:[]}):(E("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new St({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await Ae(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),y=typeof h.data=="string"?JSON.parse(h.data):h.data;(!y.data||!y.data.cdn_list||!y.data.cdn_version)&&(E("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Yg(f)/60),x=y.data.cdn_list.split(",")[0],A=y.data.cdn_version;for(let S=0;S<b;S++)g.push({type:"imgo",segment_start:S*60,segment_end:Math.min((S+1)*60,Yg(f)),url:`https://${x}/${A}/${S}.json`})}else{let x=Yg(f);for(let A=0;A<x;A+=60)g.push({type:"imgo",segment_start:A,segment_end:Math.min(A+60,Yg(f)),url:`${s}?vid=${u}&cid=${c}&time=${A*1e3}`})}return new St({type:"imgo",segmentList:g})}catch(m){return E("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 Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;s.data?.items&&n.push(...s.data.items)}return n}catch(r){return E("error","[Mango] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}};kt();vt();dr();ws();Un();mn();ys();mo();var ry=class t extends wt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(e){let r;try{E("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(TC(),sL))).default)(e,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,e).toString():a.url;return c&&c!==e?(E("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(E("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return E("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp<t.WBI_MIXIN_KEY_CACHE_TTL)return r.key;E("info","[Bilibili] WBI mixin key \u5DF2\u8FC7\u671F\u6216\u4E0D\u5B58\u5728\uFF0C\u6B63\u5728\u83B7\u53D6\u65B0\u7684...");try{let n=await Ae("https://api.bilibili.com/x/web-interface/nav",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0)return E("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",s.message),"dba4a5925b345b4598b7452c75070bca";let i=s.data?.wbi_img||{},a=i.img_url||"",o=i.sub_url||"",c=a.split("/").pop()?.split(".")[0]||"",u=o.split("/").pop()?.split(".")[0]||"",l=t.WBI_MIXIN_KEY_TABLE.map(d=>(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,E("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return E("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ms(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{E("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await Ae(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return E("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let y=If((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=If((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:y,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return E("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return E("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){let r=[];O.useBangumiData&&(r=await Ru(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),E("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{E("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(E("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(y=>p.mdId&&p.mdId===`md${y.siteId}`)||r.find(y=>p.org_title&&y.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),E("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(A=>A&&A.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},x=b.mediaId;x&&!l.has(x)&&(l.add(x),u.unshift(b))}}if(m.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),A=(g.titles.find(S=>S&&S.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:A,org_title:g.title,aliases:[...g.titles],_displayTitle:A,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),y=await Promise.all(h);for(let g of y){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return E("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return E("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await Ae(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){E("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await Ae(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return E("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),E("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await Ae(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return E("info",`[Bilibili] \u89C6\u9891 bvid=${e} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${e}?p=${o.page}`}));return E("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return E("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Bilibili] sourceAnimes is not a valid array"),[];e.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=e.length>0?e[0]._tmdbCnAlias:null;B1(e,o);let c=e.filter(d=>d.isOversea||xt(d.title,r,i)||d.aliases&&d.aliases.some(f=>xt(f,r,i))),u=i!==null?i:$t(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Tt(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,E("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,x)=>{let A;d.isOversea&&b.position?A=b.position.toString():A=b.index_title||b.index||(x+1).toString();let S=b.title||b.index_title||A,I=b.long_title||"",R=/^\d+(\.\d+)?$/.test(S)?`\u7B2C${S}\u8BDD`:S;I&&I!==S&&(R+=` ${I}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:A,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>Tf(b.name));g.every(b=>b!==null)?(f.forEach((b,x)=>b._sortKey=g[x]),f.sort((b,x)=>b._sortKey-x._sortKey)):f.sort((b,x)=>b._id-x._id),E("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){E("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,x)=>{let A=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(A+="&area=hkmt"),{name:`${x+1}`,url:A,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,x)=>b._id-x._id)}if(f.length===0)return;let m=Vr(d.mediaId),h=d._displayTitle||zt(d.title),y={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Br(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(y),Bt({...y,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(f){E("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){E("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),E("info","[Bilibili] ",a);else return E("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let y=d.split("&");for(let g of y){let[b,x]=g.split("=");b==="p"&&(f=x||1)}}E("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await Ae(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(y=>{let[g,b]=y.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let y=await Ae(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result){let b=g.result.episodes.find(x=>x.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let y=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await Ae(y,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let x=(b.result.episodes||b.result.main_section?.episodes||[]).find(A=>A.id==d);x&&(o=x.cid,c=x.aid,u=x.duration/1e3,l=x.long_title,h=!0)}}catch{}if(!h)try{let y=await Ae(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(x=>x.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return E("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;E("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await Ae(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return E("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,E("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return E("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return E("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(e){E("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;a<n.length;a+=s){let c=n.slice(a,a+s).map(d=>this.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(E("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(e){if(E("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[y,g]=m.split("-"),b=parseFloat(y)||0,x=parseFloat(g)||0,A=x-b;if(A<=0)continue;l+=A;let S=Math.ceil(x/360);for(let I=0;I<S;I++){let R=`#combine_start=${b}&combine_end=${x}&combine_offset=${u}`;c.push({type:"bilibili1",segment_start:I*360,segment_end:Math.min((I+1)*360,x),url:`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${h}&segment_index=${I+1}${R}`})}u+=A}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;E("info",`[Bilibili] \u89C6\u9891\u4FE1\u606F: cid=${n}, aid=${s}, duration=${i}`),i<=0&&E("info","[Bilibili] \u672A\u83B7\u53D6\u5230\u7CBE\u51C6\u65F6\u957F\uFF0C\u4F7F\u7528\u9884\u8BBE 36 \u5206\u6BB5");let a=i>0?Math.ceil(i/360):36;E("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c<a;c+=1){let u;s?u=`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${n}&pid=${s}&segment_index=${c+1}`:u=`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${n}&segment_index=${c+1}`,o.push({type:"bilibili1",segment_start:c*360,segment_end:i>0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new St({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await Ae(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=PUe(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=zt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){E("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ms(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:If((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:If((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&E("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;E("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}E("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else E("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:e,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await Ae(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return E("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:If((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:If((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;E("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(e,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await D1(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof jY!="function")return null;let i=!1,a=!1,o=await jY(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(E("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}};kt();vt();dr();mn();ws();Un();ys();var ny=class extends wt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/ã€.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(e){try{E("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await Ae(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return E("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return E("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return E("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return E("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);E("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(e,u,r));let c=await Promise.allSettled(o);for(let u=0;u<c.length;u++){let l=c[u];l.status==="fulfilled"&&l.value&&l.value.videos?s.push(...l.value.videos):l.status==="rejected"&&E("error",`[Youku] \u83B7\u53D6\u5206\u96C6\u9875\u9762 ${u+2} \u5931\u8D25:`,l.reason)}E("info",`[Youku] \u5E76\u53D1\u83B7\u53D6\u5B8C\u6210\uFF0C\u5171\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6`)}return E("info",`[Youku] \u5171\u83B7\u53D6 ${s.length} \u96C6`),s}catch(r){return E("error","[Youku] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getEpisodesPage(e,r,n){let s=`https://openapi.youku.com/v2/shows/videos.json?client_id=53e6cc67237fc59a&package=com.huawei.hwvplayer.youku&ext=show&show_id=${e}&page=${r}&count=${n}`,i=await Ae(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!i||!i.data?null:typeof i.data=="string"?JSON.parse(i.data):i.data}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Youku] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let y=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:y,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let y={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(y),Bt({...y,links:m},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(e,r,n){let s=e.displayName||e.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(e){if(E("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o<a.length;o+=i){let c=a.slice(o,o+i).map(async u=>{let l=await Gr(u.url,Ii({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){E("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return rs(s),s}async getEpisodeDanmuSegments(e){if(E("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new St({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),E("info","[Youku]",a);else return E("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);E("info",`[Youku] video_id: ${o}`);let c;try{let A=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await Ae(A,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(A){return E("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",A),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;E("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let A="https://log.mmstat.com/eg.js",S="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",I=await Ae(A,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});E("info",`[Youku] cnaRes: ${JSON.stringify(I)}`),E("info",`[Youku] cnaRes.headers: ${JSON.stringify(I.headers)}`);let R=I.headers.etag||I.headers.Etag;E("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),E("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await Ae(S,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});E("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),E("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];E("info",`[Youku] tkEncSetCookie: ${N}`);let k=N.match(/_m_h5_tk_enc=([^;]+)/);p=k?k[1]:null;let B=N.match(/_m_h5_tk=([^;]+)/);m=B?B[1]:null,E("info",`[Youku] _m_h5_tk_enc: ${p}`),E("info",`[Youku] _m_h5_tk: ${m}`)}catch(A){return E("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",A),[]}let h=60,y=Math.floor(d/h)+1,g=[],b=async A=>{let S={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:A,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},I=JSON.stringify(S);function R(Z){let W="";for(let U=0;U<Z.length;U++)Z.charCodeAt(U)>255?W+=encodeURIComponent(Z[U]):W+=Z[U];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",U="",z=0,j=0;for(let J=0;J<Z.length;J++)for(z=z<<8|Z.charCodeAt(J),j+=8;j>=6;)U+=W[z>>j-6&63],j-=6;for(j>0&&(U+=W[z<<6-j&63]);U.length%4!==0;)U+="=";return U}let N=w(R(I));S.msg=N,S.sign=Ms(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let k=JSON.stringify(S),B=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:B,sign:Ms([m.slice(0,32),B,"24679788",k].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},D=Ii(M),L=`${n}?${D}`;return E("info",`[Youku] piece_url: ${L}`),{type:"youku",segment_start:A*h,segment_end:Math.min((A+1)*h,d),url:L,data:k,_m_h5_tk:m,_m_h5_tk_enc:p}},x=Array.from({length:y},(A,S)=>S);for(let A=0;A<x.length;A++){let S=await b(x[A]);g.push(S)}return new St({type:"youku",segmentList:g})}async getEpisodeSegmentDanmu(e){E("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5206\u6BB5\u5F39\u5E55...",e.url);let r=await Gr(e.url,Ii({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})}};mn();var B0n=new Zg,L0n=new ey,M0n=new ty,W0n=new ry,$0n=new ny,U0n=new Xg,L5=`LogVar Danmu API/${O.version}`,nw=class extends wt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Ru(e,["anidb"]);if(n.length>0)return E("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{E("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1});if(!c||!c.data)return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return E("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),E("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return E("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await D1(e,n.signal,"Dandan");if(!c||!c.title)return E("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;E("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":L5},signal:n.signal,retries:1});if(!d||!d.data)return E("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return E("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let p of f)p.isTmdbSource=!0,p._tmdbCnAlias=l;return E("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),E("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(E("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五å…七八ä¹å百åƒä¸‡]+\s*[壿œŸéƒ¨])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return E("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return E("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1});if(!r||!r.data)return E("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return E("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return E("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return E("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;B1(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:$t(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let y=h._displayTitle||h.animeTitle,g=Tt(y).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,E("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let y=await this.getEpisodes(h.animeId),g=y.episodes,b=y.titles||[],x=this.calculateSimilarity(r,h.animeTitle),A=!p;if(x>=.1&&y.relateds&&Array.isArray(y.relateds)&&A)for(let w of y.relateds){let N=Tt(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let S=[h.animeTitle,...b,...h.aliases||[]],I=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of S){if(!N)continue;let k=$t(N);if(k!==null){w=k;break}}d>1?I=(w||1)===d:d===1&&(I=w===null||w===1)}else I=!0;else I=S.some(w=>w&&xt(w,r,d));if(!I)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let k=y.type||h.type||"tvseries",B=y.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),D=M?new Date(M).getFullYear():"\u672A\u77E5",L={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${D})\u3010${B}\u3011from dandan`,aliases:N,type:k,typeDescription:B,imageUrl:y.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(L),Bt({...L,links:R},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(y){E("error",`[Dandan] Error processing anime: ${y.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":L5},retries:1}).catch(o=>(E("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){E("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return E("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:zt(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?zt(r.m):r.m})}};kt();vt();dr();Un();mo();ys();var sw=class extends wt{async search(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(E("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(E("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(E("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return E("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(E("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(E("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(E("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return E("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return E("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),Bt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(c){E("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await Ae(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return E("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?zt(r.m):r.m}))}};kt();vt();dr();ws();Un();ws();var nbr=`
|
|
AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/
|
|
f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f
|
|
c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB
|
|
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
|
|
`,Qo=null,iw=null,aw=null,Doe=null,W5=0,ap=new Array(132).fill(void 0);ap.push(void 0,null,!0,!1);var ow=ap.length;function got(t){let e=ap[t];return t>=132&&(ap[t]=ow,ow=t),e}function Poe(){return(aw===null||aw.byteLength===0)&&(aw=new Uint8Array(Doe.buffer)),aw}function M5(){return(iw===null||iw.byteLength===0)&&(iw=new Int32Array(Doe.buffer)),iw}function yot(t,e){return t=t>>>0,Lc(Poe().subarray(t,t+e))}function hot(t,e,r){if(r===void 0){let i=Tg(t),a=e(i.length,1)>>>0;return Poe().subarray(a,a+i.length).set(i),W5=i.length,a}let n=Tg(t),s=e(n.length,1)>>>0;return Poe().subarray(s,s+n.length).set(n),W5=n.length,s}function sbr(t){return t==null}function ibr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}async function abr(){if(Qo!==null)return Qo;let t=ibr(nbr),e={wbg:{__wbindgen_object_drop_ref:n=>got(n),__wbindgen_string_new:(n,s)=>{let i=yot(n,s);ow===ap.length&&ap.push(ap.length+1);let a=ow;return ow=ap[a],ap[a]=i,a},__wbindgen_debug_string:()=>{}}};return Qo=(await WebAssembly.instantiate(t,e)).instance.exports,Doe=Qo.memory,iw=null,aw=null,Qo}function obr(t,e){let r,n;try{let s=Qo.__wbindgen_add_to_stack_pointer(-16),i=hot(t,Qo.__wbindgen_malloc,Qo.__wbindgen_realloc),a=W5,o=sbr(e)?0:hot(e,Qo.__wbindgen_malloc,Qo.__wbindgen_realloc),c=W5;Qo.gateway_decrypt(s,i,a,o,c);let u=M5()[s/4+0],l=M5()[s/4+1],d=M5()[s/4+2],f=M5()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,got(d);return r=p,n=m,yot(p,m)}finally{Qo.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Qo.__wbindgen_free(r,n,1)}}async function Aot(t,e){return t=t.replace(/\s+/g,""),await abr(),obr(t,e)}mn();ys();var Boe=class extends wt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),E("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await Ae(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return E("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return E("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await Ae(e,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return E("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(E("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return E("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name||l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Vr(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Bt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;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 E("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?(E("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Yg(n.duration);E("info","[Migu] itemId:",r),E("info","[Migu] durationSec:",s),E("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o<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 Ae(e.url,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appCode:"miguvideo_default_h5"},retries:1}),n=[];if(r&&r.data){let s=await Aot(r.data),a=(typeof r.data=="string"?JSON.parse(s):s)?.body?.result??[];n.push(...a)}return n}catch(r){return E("error","[Migu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.cid),p:`${r.playtime},1,${Jb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},xot=Boe;kt();vt();dr();ws();Un();mn();ys();var cw=class extends wt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{E("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${Ii(r)}`,i=await Ae(s,{headers:n});if(!i||!i.data)return E("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return E("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return E("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${Ii(r)}`,i=await Ae(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return E("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(e){try{E("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return E("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return E("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;i<n.length;i++){let a=n[i],o,c,u;typeof a=="object"?(o=String(a.vid||""),c=a.video_name||`\u7B2C${i+1}\u96C6`,u=a.url_html5||""):(o=String(a.vid||a.vid||""),c=a.name||a.video_name||`\u7B2C${i+1}\u96C6`,u=a.pageUrl||a.url_html5||""),u&&u.startsWith("http://")&&(u=u.replace("http://","https://"));let l={vid:o,title:c,url:u,episodeId:`${o}:${e}`};s.push(l)}return E("info",`[Sohu] \u6210\u529F\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6 (media_id=${e})`),s}catch(r){return E("error","[Sohu] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Sohu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[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`,y=`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:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return E("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await Ae(e,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(e){E("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;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 E("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?(E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getDanmuSegment(e){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await Ae(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){E("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;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 Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return E("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return E("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();vt();dr();ws();Un();mn();ys();var bot={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},uw=class extends wt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=bot[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{E("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${Ii(r)}`,i=await Ae(s,{headers:n,timeout:15e3});if(!i||!i.data)return E("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;E("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/<div class="So-detail[^"]*"[^>]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);E("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];E("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let p=JSON.parse(f);E("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",y=p.total||"0";if(!m)continue;let g=d.index,b=[`</div>
|
|
</div>`,`</div>
|
|
</div>`,"</div></div>"],x=-1;for(let L of b){let Z=a.indexOf(L,g);if(Z!==-1){x=Z;break}}if(x===-1){let L=a.indexOf('<div class="So-detail',g+100);if(L!==-1)x=L;else continue}let A=a.substring(g,x),S="",I=/<h1>[\s\S]*?<a[^>]*title="([^"]*)"[^>]*>/.exec(A);if(I&&I[1]&&(S=I[1].trim()),!S&&p.keyWord){let L=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);L&&L[1]&&(S=L[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!S){let L=/<a[^>]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(A);L&&L[1]&&(S=L[1].trim())}S||E("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let R=/<img[^>]*(?:src|data-src|alt)="([^"]+)"/.exec(A),w=R?R[1]:"",N=null,k=/<b>年份:<\/b>.*?>(\d{4})<\/a>/.exec(A);k||(k=/<b>ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(A)),k||(k=/_y(\d{4})_/.exec(A)),k||(k=/(\d{4})/.exec(p.keyWord||"")),k&&(N=parseInt(k[1]));let B=bot[h]||"\u7535\u89C6\u5267",M=y&&/^\d+$/.test(y)?parseInt(y):0,D={mediaId:m,title:S,type:B,year:N,imageUrl:w&&w.startsWith("http")?w:w?`https:${w}`:null,episodeCount:M};o.push(D),E("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${S} (pid=${m}, type=${B}, episodes=${M})`)}catch(f){E("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),E("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)E("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return E("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await Ae(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,E("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){E("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return E("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/<div class="show_cnt twxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return E("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/<div class="show_cnt sjxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return E("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);E("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/<div class="show_play first_videolist[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(a){let l=a[0];return this.parseEpisodesFromHtml(l,e)}E("error",`[Leshi] \u65E0\u6CD5\u627E\u5230\u5267\u96C6\u5217\u8868\u5BB9\u5668: media_id=${e}`);let o=/https:\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html/g,c=n.matchAll(o),u=[];for(let l of c){let d=l[1],f=l[0],p={vid:d,title:`\u7B2C${u.length+1}\u96C6`,url:f,episodeId:`${d}:${e}`};u.push(p)}return u.length>0?(E("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return E("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/<div class="col_4"[^>]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){E("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/<dl class="dl_temp">[\s\S]*?<\/dl>/g,o=e.match(a);if(!o||o.length===0){E("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/<dl[^>]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=e.match(c);return!u||u.length===0?(E("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/<dl class="dl_temp">[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(E("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return E("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/<a[^>]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){E("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/<dt class="d_tit">[\s\n\r]*<a[^>]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(s);if(l&&l[1])u=l[1].trim();else if(l&&l[2])u=l[2].trim();else{let 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)){E("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){E("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return E("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;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:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;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 E("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?(E("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getDanmuSegment(e){try{let r=await Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return E("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){E("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a<Math.ceil(s/300);a++){let o=a*300,c=Math.min((a+1)*300,s);i.push({type:"leshi",segment_start:o,segment_end:c,url:`https://hd-my.le.com/danmu/list?vid=${r}&start=${o}&end=${c}&callback=vjs_${Date.now()}`})}return E("info",`[Leshi] \u4E50\u89C6\u7F51: \u89C6\u9891\u65F6\u957F ${s}\u79D2\uFF0C\u5206\u4E3A ${i.length} \u4E2A\u65F6\u95F4\u6BB5`),new St({type:"leshi",segmentList:i})}async getEpisodeSegmentDanmu(e){return this.getDanmuSegment(e)}async getVideoDuration(e){try{let r=await Ae(`https://www.le.com/ptv/vplay/${e}.html`,{timeout:1e4});if(!r||!r.data)return E("warn","[Leshi] \u4E50\u89C6\u7F51: \u83B7\u53D6\u89C6\u9891\u65F6\u957F\u5931\u8D25\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u503C2400\u79D2"),2400;let n=/duration['"]?\s*:\s*['"]?(\d{2}):(\d{2}):(\d{2})['"]?|duration['"]?\s*:\s*['"]?(\d{2}):(\d{2})['"]?|duration['"]?\s*:\s*(\d+)['"]?/.exec(r.data);if(n){if(n[1]&&n[2]&&n[3]){let s=parseInt(n[1]),i=parseInt(n[2]),a=parseInt(n[3]);return s*3600+i*60+a}else if(n[4]&&n[5]){let s=parseInt(n[4]),i=parseInt(n[5]);return s*60+i}else if(n[6])return parseInt(n[6])}return 2400}catch(r){return E("warn",`[Leshi] \u83B7\u53D6\u89C6\u9891\u65F6\u957F\u5931\u8D25: ${r}\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u503C2400\u79D2`),2400}}formatComments(e){return e.map(r=>{try{let n=this.positionMap[parseInt(r.position)]||1,s=parseFloat(r.start||0),i=r.color||"FFFFFF",a=parseInt(i,16),o=r.id||r._id||"",c=r.txt||"",u=`${s.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:u,m:c,t:Math.round(s*100)/100}}catch(n){return E("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();vt();dr();ws();Un();mn();ys();var Loe=class extends wt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await Ae(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/<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]:"",y=d.match(/<img src="([^"]+)"/),g=y?y[1]:"";g&&g.startsWith("//")&&(g="https:"+g),g=g.replace(/&/g,"&");let b=d.match(/<p>([^<]+\/[^<]+\/\d{4})<\/p>/),x="",A="";if(b){let S=b[1].split("/");x=S[0]||"",A=S[2]||""}p&&h&&i.push({name:h,type:x,year:A,img:g,url:p})})}else return E("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return E("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return E("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await Ae(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return E("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return E("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await Ae(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return E("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){E("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return E("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return E("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Vr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Br(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Bt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;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 E("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?(E("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;E("info","[Xigua] itemId:",r),E("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a<n;a+=s){let o=a,c=Math.min(a+s,n),l=`https://ib.snssdk.com/vapp/danmaku/list/v1/?${Ii({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 Ae(e.url,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"},retries:1}),n=[];if(r&&r.data){let i=(typeof r.data=="string"?JSON.parse(r.data):r.data).data??[];n.push(...i)}return n}catch(r){return E("error","[Xigua] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},_ot=Loe;kt();vt();dr();ws();Un();mn();ys();var Moe=class extends wt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(e,r){let n=Date.now(),s=Ii(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ms(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return E("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Gr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return E("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return E("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return E("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Vr(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Bt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;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 E("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?(E("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(rs(i),i)}async getEpisodeDanmuSegments(e){E("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);E("info","[Maiduidui] uuid:",n),E("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o<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 Gr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers,retries:1}),u=[];return c&&c.data&&((typeof c.data=="string"?JSON.parse(c.data):c.data).data??[]).forEach(f=>{u.push(...f.barrageList)}),u}catch(r){return E("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${Jb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},Eot=Moe;vt();dr();ws();Un();mn();mo();kt();kt();vt();ws();dr();var cbr="https://www.yfsp.tv/",ubr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",lbr=60*1e3;function lw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;i<n.length;i++){if(s==null)return r;let a=n[i],o=a.match(/^(.+)\[(\d+)\]$/);if(o){let c=o[1],u=parseInt(o[2],10);if(s=s[c],Array.isArray(s)&&u<s.length)s=s[u];else return r}else s=s[a]}return s!==void 0?s:r}function dbr(t,e){let n=new RegExp("\\b(?:var|let|const)\\s+"+e+"\\s*=\\s*").exec(t);if(!n)return null;let s=t.indexOf("{",n.index+n[0].length);if(s===-1)return null;let i=0,a=!1,o="",c=!1;for(let u=s;u<t.length;u++){let l=t[u];if(a){c?c=!1:l==="\\"?c=!0:l===o&&(a=!1,o="");continue}if(l==='"'||l==="'"){a=!0,o=l;continue}if(l==="{"){i+=1;continue}if(l==="}"&&(i-=1,i===0))return t.slice(s,u+1)}return null}function fbr(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 pbr(t){let e=lw(t,"config[0]",null),r=e?e.pConfig:null;if(!r)return null;let n=r.publicKey,s=Array.isArray(r.privateKey)?r.privateKey[0]:r.privateKey;return!n||!s?null:{publicKey:n,privateKey:s}}function mbr(t){let e=dbr(t,"injectJson");if(e)try{let r=JSON.parse(e),n=pbr(r);if(n)return n}catch(r){E("warn","[Utils] [Aiyifan] \u89E3\u6790 injectJson \u5931\u8D25\uFF0C\u56DE\u9000\u5230 pConfig \u63D0\u53D6: "+(r.message||"\u672A\u77E5\u9519\u8BEF"))}return fbr(t)}function vot(t){return t==null?null:String(t)}function hbr(t){return t==="vv"||t==="pub"}function gbr(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 ybr(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 gbr(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,vot(n)])}),r.filter(function(n){return n[1]!==null})}catch{}return Object.keys(t).map(function(n){return[n,vot(t[n])]}).filter(function(n){return n[1]!==null})}return[]}function Abr(t){return ybr(t).filter(function(e){return!hbr(e[0])}).map(function(e){return e[0]+"="+e[1]}).join("&")}function xbr(t,e){let r=Abr(t),n=e.publicKey+"&"+r.toLowerCase()+"&"+e.privateKey;return Ms(n)}function bbr(t){return typeof t=="string"?JSON.parse(t):t}function _br(t){var e=lw(t,"ret",null),r=lw(t,"data.code",null);return e===200&&r===0}function Sot(t,e){var r=lw(t,"data.msg",null)||lw(t,"msg",null);return r||"HTTP "+e}var $5=class{constructor(e){e=e||{},this.proxyUrlBuilder=e.proxyUrlBuilder||function(r){return O.makeProxyUrl(r)},this.userAgent=e.userAgent||ubr,this.configPageUrl=e.configPageUrl||cbr,this.ttlMs=e.ttlMs||lbr,this.now=e.now||function(){return Date.now()},this.signingConfig=null,this.signingConfigFetchedAt=0}async getSigningConfig(e){e=e||!1;var r=this.now(),n=this.signingConfig&&r-this.signingConfigFetchedAt<this.ttlMs;if(!e&&n)return this.signingConfig;var s=await Ae(this.proxyUrlBuilder(this.configPageUrl),{headers:{"User-Agent":this.userAgent,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),i=typeof s.data=="string"?s.data:String(s.data||""),a=mbr(i);if(!a)throw new Error("\u672A\u80FD\u4ECE\u684C\u9762\u7AD9\u9875\u9762\u89E3\u6790\u5230 pConfig");return this.signingConfig=a,this.signingConfigFetchedAt=r,E("info","[Utils] [Aiyifan] \u5DF2\u66F4\u65B0\u684C\u9762\u7AD9\u7B7E\u540D\u914D\u7F6E: "+a.publicKey.slice(0,12)+"..."),a}buildSignedParams(e,r){var n={};for(var s in e)e.hasOwnProperty(s)&&(n[s]=e[s]);return n.vv=xbr(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=Gb(e,o),u=await Ae(this.proxyUrlBuilder(c),{headers:n}),l;try{l=bbr(u.data)}catch(f){if(!i)return E("warn","["+s+"] \u54CD\u5E94\u65E0\u6CD5\u89E3\u6790\u4E3A JSON\uFF0C\u5237\u65B0\u7B7E\u540D\u914D\u7F6E\u540E\u91CD\u8BD5: "+(f.message||"\u672A\u77E5\u9519\u8BEF")),this.signedGetJson(e,r,n,s,!0);throw f}var d=u.status!=null?u.status:200;if(d!==200||!_br(l)){if(!i)return E("warn","["+s+"] \u5F53\u524D\u7B7E\u540D\u8BF7\u6C42\u5931\u8D25\uFF0C\u5237\u65B0 pConfig \u540E\u91CD\u8BD5: "+Sot(l,d)),this.signedGetJson(e,r,n,s,!0);throw new Error(Sot(l,d))}return{data:l,vv:o.vv,signingConfig:a}}};var dw=class extends wt{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new $5({userAgent:this.USER_AGENT,configPageUrl:this.CONFIG_PAGE_API}),this.inflightDanmuRequests=new Map}extractEpisodeRequestKey(e){try{return new URL(e).searchParams.get("id")??e}catch{return e}}async searchDrama(e,r=1,n=10){let s={tags:e,orderby:4,page:r,size:n,desc:1,isserial:-1},i={"User-Agent":this.USER_AGENT,Accept:"application/json"};E("info",`[Aiyifan] [\u641C\u7D22] \u5173\u952E\u8BCD: ${e}, \u9875\u7801: ${r}`);try{let a=Gb(this.SEARCH_API,s),o=await Ae(O.makeProxyUrl(a),{headers:i});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return E("error",`[Aiyifan] [\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(e){let r=[],n=e?.data?.info||[];if(!n.length)return E("warn","[Aiyifan] [\u8B66\u544A] \u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),r;for(let s of n){let i=s.result||[];if(i.length)for(let a of i){let o=a.contxt,c=a.title;r.push({contxt:o,title:c,...a}),E("info",`[Aiyifan] [\u53D1\u73B0\u5267\u76EE] ${c} vid=${o}`)}}return r}async getPlaylist(e){let r={cinema:1,vid:e,lsk:1,taxis:0,cid:"0,1,4,152"},n={"User-Agent":this.USER_AGENT,Accept:"application/json"};E("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u8BF7\u6C42 vid: ${e}`);try{let{data:s}=await this.signingProvider.signedGetJson(this.PLAYLIST_API,r,n,"\u64AD\u653E\u5217\u8868"),i=[],a=s.data?.info||[];for(let o of a)for(let c of o.playList||[])i.push(c);return E("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${i.length} \u96C6`),i}catch(s){return E("error",`[Aiyifan] [\u64AD\u653E\u5217\u8868\u5931\u8D25] \u9519\u8BEF: ${s.message}`),[]}}async getVideoInfo(e,r=null){let n={cinema:1,id:e,a:0,lang:"none",usersign:1,region:"GL.",device:0,isMasterSupport:1},s={"User-Agent":this.USER_AGENT,Accept:"application/json"},i=r?`(ID:${r})`:"";E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u8BF7\u6C42 key: ${e} ${i}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.VIDEO_API,n,s,"\u89C6\u9891\u4FE1\u606F");return E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return E("error",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(e){let n=(e.info?.[0]||{}).uniqueKey;return n&&E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u83B7\u53D6\u5230 uniqueKey: ${n}`),n}async fetchBarrage(e,r=1,n=3e4){let s={cinema:1,page:r,size:n,uniqueKey:e},i={"User-Agent":this.USER_AGENT};E("info",`[Aiyifan] [\u5F39\u5E55] \u8BF7\u6C42 uniqueKey: ${e}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.DANMU_API,s,i,"\u5F39\u5E55");E("info",`[Aiyifan] [\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let c=a.data?.info||[];return E("info",`[Aiyifan] [\u5F39\u5E55] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c}catch(a){return E("error",`[Aiyifan] [\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(e){E("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=await this.searchDrama(e);if(!r)return E("error","[Aiyifan] \u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return E("warn","[Aiyifan] \u672A\u627E\u5230\u5267\u76EE\u4FE1\u606F\uFF0C\u9000\u51FA"),[];let s=n.map(i=>({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return E("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){E("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return E("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${e}?id=${s.key}`}));return E("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>xt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){E("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,y)=>({name:h.title||`${y+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Vr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Bt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}catch(d){E("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){E("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return E("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return E("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return E("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(E("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),E("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${Jb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=zt(r.m)),r))}};kt();vt();dr();Un();mo();ys();mn();var $c={danmu:null,subject:null},fw=new Map,Ebr=3*60*1e3,vbr=100,pw=class extends wt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await Ae(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&E("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&E("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length<i))break;if(s+=i,s>1600){E("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return E("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=fw.get(e);if(r&&Date.now()-r.timestamp<Ebr)return r.data;let n=this._getSubjectServerPriority(),s=$c.subject,i=n.findIndex(a=>a.url===s);(!s||i===-1)&&(i=0,s=n[0].url,$c.subject=s);for(let a=0;a<n.length;a++){let o=n[(i+a)%n.length];try{let c=null;if(o.type==="V2"){E("info",`[Animeko] \u8BE6\u60C5\u63A5\u53E3\u8BF7\u6C42 V2 \u8282\u70B9: ${o.url} (${e})`);let u=await Ae(`${o.url}/v2/subjects/${e}`,{headers:this.headers,timeout:3e3});u&&u.data&&u.data.id&&(c=u.data)}else if(o.type==="V0"){E("info",`[Animeko] \u8BE6\u60C5\u8865\u5168\u8BF7\u6C42 V0 \u8282\u70B9: ${o.url} (${e})`);let[u,l]=await Promise.all([this._fetchV0AllEpisodes(o.url,e),Ae(`${o.url}/v0/subjects/${e}/subjects`,{headers:this.headers,timeout:3e3}).catch(d=>(E("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if($c.subject!==o.url&&(E("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${$c.subject} -> ${o.url}`),$c.subject=o.url),fw.set(e,{data:c,timestamp:Date.now()}),fw.size>vbr){let u=fw.keys().next().value;fw.delete(u)}return c}E("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){E("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return E("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),$c.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Ru(e,["bangumi"]);if(r.length>0){E("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return E("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();E("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},p=null;for(let y of d)try{if(p=await Gr(y.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){E("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){E("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){E("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length<i){E("info",`[Animeko] \u8FC7\u6EE4\u540E\u5F53\u524D\u6279\u6B21\u5269 ${h.length} \u4E2A\u7ED3\u679C\uFF0C\u505C\u6B62\u7FFB\u9875`);break}if(s+=i,s>=60){E("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return E("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),E("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return E("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&xt(i,r))})}hasExplicitSeasonInfo(e){return e?/第?\s*(?:\d+|[一二三四五å…七八ä¹å]+)\s*[壿œŸéƒ¨]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|åŠ‡å ´ç‰ˆ|Movie|Film|ç»[篇集]|å¤–ä¼ |SP|(?<!\d)\d+$|\S+[ç¯‡ç« ]/i.test(e):!1}async checkRelationsAndModifyTitles(e){let r=Math.min(e.length,3);for(let n=0;n<r;n++)for(let s=0;s<r;s++){if(n===s)continue;let i=e[n],a=e[s],o=i.name_cn||i.name,c=a.name_cn||a.name;if(c.includes(o)&&c.length>o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(E("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(e){return e.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&E("info",`[Animeko] Subject ${e} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return E("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&E("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,E("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,y=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${y}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Bt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&Ut()}}catch(d){E("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return E("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=$c.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],$c.danmu=s);for(let a=0;a<n.length;a++){let o=(i+a)%n.length,c=n[o],u=`${c}/v1/danmaku/${r}`;E("info",`[Animeko] \u5C1D\u8BD5\u4F7F\u7528 ${c} \u8282\u70B9\u83B7\u53D6\u5F39\u5E55`);try{let l=await Ae(u,{headers:this.headers,timeout:3e3});if(l&&l.data){let d=l.data.danmakuList;if(d&&Array.isArray(d))return $c.danmu!==c&&(E("info",`[Animeko] \u5F39\u5E55\u57DF\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${$c.danmu} -> ${c}`),$c.danmu=c),E("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}E("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){E("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return E("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),$c.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new St({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=O.danmuSimplifiedTraditional==="simplified"?zt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};kt();vt();dr();mn();ys();var mw=class extends wt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await Ae(`${O.otherServer}/?url=${e}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return E("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),rs(r.data),r.data}catch(r){return E("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return E("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};ys();var Tot=new VT,wot=new YT,hw=new tw,gw=new rw,yw=new Xg,Aw=new nw,G5=new sw,hm=new Zg,gm=new ny,ym=new ey,sy=new ty,$u=new ry,Am=new xot,iy=new cw,ay=new uw,oy=new _ot,cy=new Eot,uy=new dw,xw=new pw,$oe=new mw,Uoe=new XT(hm,ym,gm,$u,Am),Rot=new JT(Uoe),U5=new Map;function Iot(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Not(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function F5(t,e=null){return e===null?t:{videoDuration:e,...t}}function Sbr(t){let e=Iot(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=Iot(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Foe(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await _e.run("tencent",()=>hm.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await _e.run("iqiyi",()=>ym.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await _e.run("mango",()=>sy.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await _e.run("bilibili",()=>$u.resolveB23Link(e))),r=await _e.run("bilibili",()=>$u.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await _e.run("youku",()=>gm.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await _e.run("migu",()=>Am.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await _e.run("sohu",()=>iy.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await _e.run("leshi",()=>ay.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await _e.run("xigua",()=>oy.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await _e.run("maiduidui",()=>cy.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await _e.run("aiyifan",()=>uy.getComments(e,"aiyifan",!0))),Sbr(r)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Ibr(t){return String(t||"").split(Wu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function q5(t){if(!t)return 0;try{let e=t.includes(Wu)?Ibr(t):[t];return(await Promise.all(e.map(Foe))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function j5(t,e){if(!e)return!0;let r=im(t.animeTitle);return r?r===e:!0}function Cbr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Dr(s),a=Dr(e);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五å…七八ä¹å壹贰å肆ä¼é™†æŸ’æŒçŽ–æ‹¾]+/);if(u&&Gl(u[0])===r)return!0}return!1}else return!1}function Woe(t,e,r,n,s){if(r===null||e===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of t){let f=Q5(d.animeTitle)||d.source;if(o!=="_any_"&&op(f,o)===0)continue;l=!0;let p=dy(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(x=>!O.episodeTitleFilter.test(x.episodeTitle)),h=ly(m);if(h.some(x=>Tf(x.episodeTitle)===r)){c=!0;break}let y=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&y.push(...d.aliases);let g=null;for(let x of y){if(!x)continue;let A=Tt(x).season;if(A!==null){g=A;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(d<r){a=!1;break}}}return a}async function Cot(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:y,youku:g,iqiyi:b,imgo:x,bilibili:A,migu:S,sohu:I,leshi:R,xigua:w,maiduidui:N,aiyifan:k,animeko:B}=t,M=O.sourceOrderArr.filter(W=>t[W]!==void 0),D=[];for(let W of M){let U=[],z=new Map;if(W==="360")D.push({key:W,animes:U,detailStore:z,promise:_e.run(In(W),()=>Tot.handleAnimes(c,e,U,z,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=_e.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await wot.handleAnimes(J.list,e,U,J.serverName,z,s)})());D.push({key:W,animes:U,detailStore:z,promise:j})}}else W==="tmdb"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Rot.handleAnimes(u,e,U,z,s))}):W==="douban"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Uoe.handleAnimes(l,e,U,z,s))}):W==="renren"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>hw.handleAnimes(d,e,U,z,s))}):W==="hanjutv"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>gw.handleAnimes(f,e,U,z,s))}):W==="bahamut"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>yw.handleAnimes(p,e,U,z,s))}):W==="dandan"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Aw.handleAnimes(m,e,U,z,s))}):W==="custom"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>G5.handleAnimes(h,e,U))}):W==="tencent"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>hm.handleAnimes(y,e,U,z,s))}):W==="youku"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>gm.handleAnimes(g,e,U,z,s))}):W==="iqiyi"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>ym.handleAnimes(b,e,U,z,s))}):W==="imgo"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(In(W),()=>sy.handleAnimes(x,e,U,z,s))}):W==="bilibili"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>$u.handleAnimes(A,e,U,z,s))}):W==="migu"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>Am.handleAnimes(S,e,U,z,s))}):W==="sohu"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>iy.handleAnimes(I,e,U,z,s))}):W==="leshi"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>ay.handleAnimes(R,e,U,z,s))}):W==="xigua"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>oy.handleAnimes(w,e,U,z,s))}):W==="maiduidui"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>cy.handleAnimes(N,e,U,z,s))}):W==="aiyifan"?D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>uy.handleAnimes(k,e,U,z,s))}):W==="animeko"&&D.push({key:W,animes:U,detailStore:z,promise:_e.run(W,()=>xw.handleAnimes(B,e,U,z,s))})}let L=await Promise.allSettled(D.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W<D.length;W++){if(L[W].status==="rejected"){E("error",`[system] [executeSourceHandlers] \u6E90 ${D[W].key} \u5904\u7406\u5931\u8D25: ${L[W].reason}`);continue}let{animes:U,detailStore:z}=D[W];for(let j of U)Z.has(j.animeId)||(r.push(j),Z.add(j.animeId));for(let[j,J]of z)n.has(j)||n.set(j,J)}}async function $1(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,E("info",`[system] [searchAnime] Search anime with keyword: ${i}, target season: ${a}, target episode: ${o}`),i==="")return We({errorCode:0,success:!0,errorMessage:"",animes:[]});if(O.animeTitleSimplified){let y=zt(i);E("info",`[system] [searchAnime] searchAnime converted traditional to simplified: ${i} -> ${y}`),i=y}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=MC(u,c);if(l===null&&a!==null){let y=MC(i,c);y!==null&&(E("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=y)}if(l!==null){let y=Woe(l,a,o,c,s);if(y)return We({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],x=!1;for(;!y&&!x;){let A=`${i}_S${g}`,S=MC(A,c);S!==null&&S.length>0?(b.push(...S),y=Woe(b,a,o,c,s),g++):x=!0}if(y)return E("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),We({errorCode:0,success:!0,errorMessage:"",animes:b});E("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let y=om.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await _e.run(In(g),()=>TUe(i)),x=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(y),Bt(om.fromJson({...y,links:x}),c),O.animes.length>O.MAX_ANIMES&&Ut(),O.localCacheValid&&d.length!==0&&await EL(),O.redisValid&&d.length!==0&&await uL(),O.localRedisValid&&d.length!==0&&await C5();let A=d.map(({links:S,...I})=>I);return We({errorCode:0,success:!0,errorMessage:"",animes:A})}try{E("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let y={},g={};for(let I of O.sourceOrderArr)I==="360"?g[I]=_e.run(In(I),()=>Tot.search(i)):I==="vod"?g[I]=_e.run(In(I),()=>wot.search(i,e,r)):I==="tmdb"?g[I]=_e.run(In(I),()=>Rot.search(i)):I==="douban"?g[I]=_e.run(In(I),()=>Uoe.search(i)):I==="renren"?g[I]=_e.run(In(I),()=>hw.search(i)):I==="hanjutv"?g[I]=_e.run(In(I),()=>gw.search(i)):I==="bahamut"?g[I]=_e.run(In(I),()=>yw.search(i)):I==="dandan"?g[I]=_e.run(In(I),()=>Aw.search(i)):I==="custom"?g[I]=_e.run(In(I),()=>G5.search(i)):I==="tencent"?g[I]=_e.run(In(I),()=>hm.search(i)):I==="youku"?g[I]=_e.run(In(I),()=>gm.search(i)):I==="iqiyi"?g[I]=_e.run(In(I),()=>ym.search(i)):I==="imgo"?g[I]=_e.run(In(I),()=>sy.search(i)):I==="bilibili"?g[I]=_e.run(In(I),()=>$u.search(i)):I==="migu"?g[I]=_e.run(In(I),()=>Am.search(i)):I==="sohu"?g[I]=_e.run(In(I),()=>iy.search(i)):I==="leshi"?g[I]=_e.run(In(I),()=>ay.search(i)):I==="xigua"?g[I]=_e.run(In(I),()=>oy.search(i)):I==="maiduidui"?g[I]=_e.run(In(I),()=>cy.search(i)):I==="aiyifan"?g[I]=_e.run(In(I),()=>uy.search(i)):I==="animeko"&&(g[I]=_e.run(In(I),()=>xw.search(i)));let b=O.sourceOrderArr.map(I=>{let R=[],w=new Map,N=g[I].then(async k=>{y[I]=k,await Cot({[I]:k},i,R,w,a,e,r)});return{key:I,animes:R,detailStore:w,promise:N}}),x=await Promise.allSettled(b.map(I=>I.promise)),A=new Set(d.map(I=>I.animeId));for(let I=0;I<b.length;I++){if(x[I].status==="rejected"){E("error",`[system] [searchAnime] \u6E90 ${b[I].key} \u7BA1\u9053\u5904\u7406\u5931\u8D25: ${x[I].reason}`);continue}let{animes:R,detailStore:w}=b[I];for(let N of R)A.has(N.animeId)||(d.push(N),A.add(N.animeId));for(let[N,k]of w)c.has(N)||c.set(N,k)}if(d.length>0&&WC(u,d.map(({links:I,...R})=>R),c),!Woe(d,a,o,c,s)&&a!==null){let I=a;for(let R of O.sourceOrderArr){let w=y[R];if(Array.isArray(w))for(let N of w){let k=N&&Array.isArray(N.list)?N.list:[N];for(let B of k){if(!B)continue;let M=Tt(B.animeTitle||B.title||"").season;M!==null&&M>I&&(I=M)}}}if(I>a){E("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let R=[];for(let N=a+1;N<=I;N++)R.push((async()=>{let k=[];return await Cot(y,i,k,c,N,e,r),k.length>0&&WC(`${i}_S${N}`,k.map(({links:B,...M})=>M),c),k})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(y){E("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",y)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Wat(d,c),oJ(d,i),O.enableAnimeEpisodeFilter){let y=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){E("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let x=Ng(g?.bangumiId,c,g?.source)||Ng(g?.animeId,c,g?.source)||Rg(g?.bangumiId,c,g?.source)||Rg(g?.animeId,c,g?.source);if(x&&x.links){let A=x.links.map((S,I)=>({episodeId:S.id,episodeTitle:S.title,episodeNumber:I+1}));A=A.filter(S=>!O.episodeTitleFilter.test(S.episodeTitle)),E("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${A.length}/${x.links.length}`),A.length>0&&y.push(g)}}d.length=0,d.push(...y)}O.localCacheValid&&d.length!==0&&await EL(),O.redisValid&&d.length!==0&&await uL(),O.localRedisValid&&d.length!==0&&await C5();let h=d.map(({links:y,...g})=>g);if(h.length>0){let y=a!==null?`${i}_S${a}`:i;WC(y,h,c)}return We({errorCode:0,success:!0,errorMessage:"",animes:h})}function ly(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function op(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function Q5(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function H5(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=sm(i.episodeTitle);return op(a,n)>0})),s.length===0)return null;for(let i of s){let a=Tf(i.episodeTitle);if(e===r&&a===r)return E("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return E("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return E("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function Tbr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return E("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new Rf({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let y=h.animeTitle||"",g=y.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():y.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),y=await p.ask(h);E("info",`AI match response: ${y}`);let g;try{let I=y.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=I?I[1]||I[2]||I[3]:y;g=JSON.parse(R.trim())}catch(I){return E("error",`Failed to parse AI response: ${I.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let x=n.animes[b];if(!x)return E("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let A=dy(x,c);if(!A?.success||!A?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let S=null;if(t&&e){let I=A.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=ly(I);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),S=H5(R,e,e)}else A.bangumi.episodes.length>0&&(S=A.bangumi.episodes[0]);return{resEpisode:S,resAnime:x}}catch(h){return E("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function dy(t,e=null){let r=Ng(t?.bangumiId,e,t?.source)||Ng(t?.animeId,e,t?.source);return r?joe(r,t?.bangumiId||t?.animeId||""):(E("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function Oot(t,e,r,n,s){let i=String(e),a=t[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,E("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function kot(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};E("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=Dr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let y of p)if(y&&Dr(y).includes(o)){if(!j5(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let y of p){if(!y)continue;let g=Tt(y).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let y=dy(f,a);if(y?.success&&y?.bangumi?.episodes){let g=y.bangumi.episodes.filter(x=>!O.episodeTitleFilter.test(x.episodeTitle)),b=ly(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:Q5(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),p=f.episodes,m=null;for(let h of p)if(Tf(h.episodeTitle)===s){m=h;break}if(m){if(i&&op(sm(m.episodeTitle),i)===0)break;E("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?op(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&op(sm(h.episodeTitle),i)===0)break;E("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?op(f.actualPlatform,i):1};break}E("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function wbr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Dr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let x of h)if(x){if(t&&e){if(Dr(x).includes(d)){if(!j5(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}let A=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),S={...f,animeTitle:x};if(Cbr(S,s,t)||A){m=!0;break}}}else if(x.split("(")[0].trim()===s){if(!j5(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let y=dy(f,u);if(!y?.success||!y?.bangumi?.episodes)continue;E("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),E("info",y);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let x=y.bangumi.episodes.filter(I=>!O.episodeTitleFilter.test(I.episodeTitle)),A=ly(x);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",A.map(I=>I.episodeTitle));let S=e;c&&c[String(t)]!==void 0&&(S=Oot(c,t,e,A,S)),g=H5(A,e,S,a),!g&&b&&(E("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=H5(A,e,S,null))}else if(y.bangumi.episodes.length>0)if(a){let x=y.bangumi.episodes.find(A=>{let S=sm(A.episodeTitle);return op(S,a)>0});x?g=x:b&&(E("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=y.bangumi.episodes[0])}else g=y.bangumi.episodes[0];if(g){let x=Q5(f.animeTitle)||f.source,A=0;if(a?A=op(x,a):A=1,b&&(A+=9999),A>l.score&&(l={anime:f,episode:g,score:A}),!a||b)break}}if(!l.episode&&t&&e){let f=kot(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?op(Q5(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function Rbr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!j5(d,s)){E("info",`Fallback: Year mismatch: anime year ${im(d.animeTitle)} vs query year ${s}`);continue}let f=dy(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(E("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=ly(p);E("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=Oot(c,r,n,m,h));let y=H5(m,n,h,null);if(y){a=y,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=kot(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Nbr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await _at(n.replace("."," "),s,i)),E("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function Pot(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Dot(t,e,r){try{let n=await e.json();if(!n)return E("error","[system] [Match] Request body is empty"),We({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return E("error","[system] [Match] Missing fileName parameter in request body"),We({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=$Ue(s);E("info",`[system] [Match] Processing anime match for query: ${s}`),E("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Nbr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,E("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=zt(o);E("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=uJ(o,c);E("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=UUe(a),h=m.length>0?m[0]:null,y=new Map,g=Pot(e.url,o,c,u),x=await(await $1(g,d,f,y,h)).json();E("info",`[system] [Match] searchData: ${x.animes}`);let A,S,I=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};E("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),E("info",`[system] [Match] Dynamic platformOrder: ${m}`),E("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await Tbr(c,u,l,x,o,e,m,d,y);if(w.resAnime&&w.resEpisode)A=w.resAnime,S=w.resEpisode,R.isMatched=!0,E("info",`[system] [Match] AI match found: ${A.animeTitle}; episode: ${S.episodeTitle}`);else{for(let N of m){let k=await wbr(c,u,l,x,o,e,N,d,p,y);if(S=k.resEpisode,A=k.resAnime,A){R.isMatched=!0,E("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!A){let N=await Rbr(x,e,c,u,l,o,S,A,p,y);S=N.resEpisode,A=N.resAnime,I=N.isSpillover}}return S&&(R.isMatched=!0,r&&!I&&nJ(r,{title:o,season:c,episode:u,episodeId:S.episodeId}),R.matches=[fL.fromJson({episodeId:S.episodeId,animeId:A.animeId,animeTitle:A.animeTitle,episodeTitle:S.episodeTitle,type:A.type,typeDescription:A.typeDescription,shift:0,imageUrl:A.imageUrl})]),E("info",`[system] [Match] resMatchData: ${R}`),We(R)}catch(n){return E("error",`[system] [Match] Failed to parse request body: ${n.message}`),We({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function Bot(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=zt(e);E("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(E("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return E("error","[system] [Episodes] Missing anime parameter"),We({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Pot(t,e),s=new Map,a=await(await $1(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return E("info","[system] [Episodes] No anime found for the given title"),We({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=Rg(c.bangumiId,s,c.source)||Rg(c.animeId,s,c.source),l=null;if(u)l=joe(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await qoe(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(mL.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return E("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),We({errorCode:0,success:!0,errorMessage:"",animes:o})}async function qoe(t,e=null,r=null){let n=t.split("/").pop(),s=Ng(n,e,r)||Rg(n);return s?We(joe(s,n)):(E("error",`[system] [Bangumi] Anime with ID ${n} not found`),We({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function joe(t,e=""){E("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s<t.links.length;s++){let i=t.links[s];r.push({seasonId:`season-${t.animeId}`,episodeId:i.id,episodeTitle:`${i.title}`,episodeNumber:`${s+1}`,airDate:t.startDate})}if(O.enableAnimeEpisodeFilter){if(r=r.filter(s=>!O.episodeTitleFilter.test(s.episodeTitle)),E("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return E("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:hL.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Obr(t,e,r){let n=t.split(Wu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let y=m.substring(0,h),g=m.substring(h+1);return y!=="hanjutv"?{realId:g,logicalSource:y,sourceLabel:y}:{realId:g,logicalSource:"hanjutv",sourceLabel:B5(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");E("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=wf(t);if(c)return E("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,y=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(U5.has(b)){E("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await U5.get(b)||[]}catch{return[]}}let x=_e.run(In(h),async()=>{let A=null;if(h==="renren"?A=hw:h==="hanjutv"?A=gw:h==="bahamut"?A=yw:h==="dandan"?A=Aw:h==="tencent"?A=hm:h==="youku"?A=gm:h==="iqiyi"?A=ym:h==="imgo"?A=sy:h==="bilibili"?A=$u:h==="migu"?A=Am:h==="sohu"?A=iy:h==="leshi"?A=ay:h==="xigua"?A=oy:h==="maiduidui"?A=cy:h==="aiyifan"?A=uy:h==="animeko"&&(A=xw),A)try{let S=await A.getEpisodeDanmu(g,n),I=A.formatComments(S);return E("info",`[${y}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),I&&Array.isArray(I)&&I.forEach(R=>{R._sourceLabel||(R._sourceLabel=y)}),u[y]=I.length,I}catch(S){return E("error",`[Merge] \u83B7\u53D6 ${y} \u5931\u8D25: ${S.message}`),u[y]=0,[]}return[]});U5.set(b,x);try{return await x}finally{U5.delete(b)}}),d=await Promise.all(l);if(Uat(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=AL(r);if(m){let{baseTitle:h,season:y,episode:g}=eJ(e,m);y||=1,g||=yL(r)+1;let b=`S${y.toString().padStart(2,"0")}`,x=`E${g.toString().padStart(2,"0")}`;for(let A=0;A<d.length;A++){let S=d[A],I=SY(O.danmuOffsetRules,{anime:h,season:b,episode:x,source:i[A]}),R=I?.offset||0;if(R!==0){let w=a[A],N=I?.usePercent?await Foe(w):0,k=I?.usePercent?"%":"s";E("info",`[Merge] \u5E94\u7528\u504F\u79FB ${R}${k} -> ${i[A]} (${h}/${b}/${x})${I?.usePercent?`, duration=${N}s`:""}`),d[A]=IY(S,R,{usePercent:I?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=$at(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return E("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),FC(f,o)}async function Qoe(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=aJ(i),o=UC(i),c=iJ(i),u=c?sm(c):null,l=Not(e,s);if(E("info","[system] [LogVar-API] comment url...",o),E("info","[system] [LogVar-API] comment title...",c),E("info","[system] [LogVar-API] comment platform...",u),!o)return E("error",`[system] [LogVar-API] Comment with ID ${i} not found`),We({count:0,comments:[]},404);E("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=wf(o);if(d!==null){let x=F5({count:d.length,comments:d},l?await q5(o):null);return Og(x,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?q5(o):null;if(o&&o.includes(Wu))f=await Obr(o,a,i);else{o.includes(".qq.com")?f=await _e.run("tencent",()=>hm.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await _e.run("iqiyi",()=>ym.getComments(o,u,r)):o.includes(".mgtv.com")?f=await _e.run("mango",()=>sy.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await _e.run("bilibili",()=>$u.resolveB23Link(o))),f=await _e.run("bilibili",()=>$u.getComments(o,u,r))):o.includes(".youku.com")?f=await _e.run("youku",()=>gm.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await _e.run("migu",()=>Am.getComments(o,u,r)):o.includes(".sohu.com")?f=await _e.run("sohu",()=>iy.getComments(o,u,r)):o.includes(".le.com")?f=await _e.run("leshi",()=>ay.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await _e.run("xigua",()=>oy.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await _e.run("maiduidui",()=>cy.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await _e.run("aiyifan",()=>uy.getComments(o,u,r)));let x=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;x.test(o)||(u==="renren"?f=await _e.run("renren",()=>hw.getComments(o,u,r)):u==="hanjutv"?f=await _e.run("hanjutv",()=>gw.getComments(o,u,r)):u==="bahamut"?f=await _e.run("bahamut",()=>yw.getComments(o,u,r)):u==="dandan"?f=await _e.run("dandan",()=>Aw.getComments(o,u,r)):u==="custom"?f=await _e.run("custom",()=>G5.getComments(o,u,r)):u==="animeko"&&(f=await _e.run("animeko",()=>xw.getComments(o,u,r)))),(!f||f.length===0)&&x.test(o)&&(f=await _e.run("other",()=>$oe.getComments(o,"other_server",r)))}let[m,h,y,g]=AL(i);if(m&&h){let x=null,A=null,S=null;if(n){let R=sJ(n);R&&R.title&&R.season&&R.episode&&y&&(x=R.title,A=R.season,S=`${R.episode}:${y}`,E("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${y} -> Offset ${S} (Season ${A})`))}E("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${x}; titleMatches\uFF1A${xt(a,x)}`),(xt(a,x)||Array.isArray(g)&&g.some(R=>xt(R,x)))&&(E("info","[system] [LogVar-API] excute setPreferByAnimeId"),cJ(m,h,A,S)),O.localCacheValid&&m&&_L("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&zY("lastSelectMap",O.lastSelectMap).catch(R=>E("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&I5("lastSelectMap",O.lastSelectMap)}if(a&&y&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Wu))){let{baseTitle:x,season:A,episode:S}=eJ(a,y);A||=1,S||=yL(i)+1;let I=`S${A.toString().padStart(2,"0")}`,R=`E${S.toString().padStart(2,"0")}`,w=SY(O.danmuOffsetRules,{anime:x,season:I,episode:R,source:h}),N=w?.offset||0;if(N!==0){let k=w?.usePercent?await Foe(o):0;E("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${x}/${I}/${R}${w?.usePercent?`, duration=${k}s`:""}`),f=IY(f,N,{usePercent:w?.usePercent,videoDuration:k})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&$C(o,f));let b=F5({count:f.length,comments:f},p?await p:null);return Og(b,e)}async function Hoe(t,e,r,n=!1){try{if(!t||typeof t!="string")return E("error","[system] [LogVar-API] Missing or invalid url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return E("error","[system] [LogVar-API] Invalid url format, must start with http or https"),We({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);E("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Not(e,n),a=wf(s);if(a!==null){let l=F5({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await q5(s):null);return Og(l,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?q5(s):null;s.includes(".qq.com")?o=await _e.run("tencent",()=>hm.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await _e.run("iqiyi",()=>ym.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await _e.run("mango",()=>sy.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await _e.run("bilibili",()=>$u.resolveB23Link(s))),o=await _e.run("bilibili",()=>$u.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await _e.run("youku",()=>gm.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await _e.run("migu",()=>Am.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await _e.run("sohu",()=>iy.getComments(s,"sohu",r)):s.includes(".le.com")?o=await _e.run("leshi",()=>ay.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await _e.run("xigua",()=>oy.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await _e.run("maiduidui",()=>cy.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await _e.run("aiyifan",()=>uy.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await _e.run("other",()=>$oe.getComments(s,"other_server",r))),E("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&$C(s,o);let u=F5({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return Og(u,e)}catch(s){return E("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Lot(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return E("error","[system] [SegmentComment] Missing or invalid url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),E("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=wf(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return Og(o,e)}E("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await _e.run("tencent",()=>hm.getSegmentComments(t)):n==="qiyi"?i=await _e.run("iqiyi",()=>ym.getSegmentComments(t)):n==="imgo"?i=await _e.run("mango",()=>sy.getSegmentComments(t)):n==="bilibili1"?i=await _e.run("bilibili",()=>$u.getSegmentComments(t)):n==="youku"?i=await _e.run("youku",()=>gm.getSegmentComments(t)):n==="migu"?i=await _e.run("migu",()=>Am.getSegmentComments(t)):n==="sohu"?i=await _e.run("sohu",()=>iy.getSegmentComments(t)):n==="leshi"?i=await _e.run("leshi",()=>ay.getSegmentComments(t)):n==="xigua"?i=await _e.run("xigua",()=>oy.getSegmentComments(t)):n==="maiduidui"?i=await _e.run("maiduidui",()=>cy.getSegmentComments(t)):n==="aiyifan"?i=await _e.run("aiyifan",()=>uy.getSegmentComments(t)):n==="hanjutv"?i=await _e.run("hanjutv",()=>gw.getSegmentComments(t)):n==="bahamut"?i=await _e.run("bahamut",()=>yw.getSegmentComments(t)):n==="renren"?i=await _e.run("renren",()=>hw.getSegmentComments(t)):n==="dandan"?i=await _e.run("dandan",()=>Aw.getSegmentComments(t)):n==="animeko"?i=await _e.run("animeko",()=>xw.getSegmentComments(t)):n==="custom"?i=await _e.run("custom",()=>G5.getSegmentComments(t)):n==="other_server"&&(i=await _e.run("other",()=>$oe.getSegmentComments(t))),E("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&$C(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return Og(a,e)}catch(r){return E("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}kt();dr();vt();mo();mn();var kbr=[[/[\(\[(ã€]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],Pbr=[[/\[[^\]]*\]/g," "],[/[ã€ï¼ˆ(][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],Dbr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五å…七八ä¹å百零〇两\d]+)\s*[集期è¯ç« 回段篇]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:æ£åœ¨)?æ’æ”¾[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五å…七八ä¹å百\d]+\s*å£\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[ã€\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],Bbr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function z5(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=zt(e)}catch{}return Dr(e.toLowerCase())}function Mot(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Lbr(t){let e=String(t||"");return kbr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function $ot(t){let e=String(t||"");return Pbr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Wot(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Dbr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=Gl(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of Bbr){let a=e.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=$ot(t),n=Tf(r);return n!==null?n:null}function Mbr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Dr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Dr(Lbr(e)).trim();s&&s!==e&&n(s);let i=Dr(e.replace(/[\(\[(ã€].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Wbr(t){let e=new URL(t.url),r=e.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${e.origin}${i}`}async function $br(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){E("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function Ubr(t,e,r,n){let s=Math.max(0,200-n),i=$ot(r),a=z5(i);if(!a)return s;let o=e?.episodeTitle||"",c=z5(o),u=z5(sm(o)),l=z5(t?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=Wot(i),f=Wot(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=Mot(i),h=Mot(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function Fbr(t,e,r){let n=[];for(let s of t){let i=dy(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=ly(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function Goe(t,e){let{name:r,episode:n}=await $br(t,e);if(!r)return We([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(E("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Mbr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await $1(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&E("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return E("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),We([],200);let c=Wbr(e),u=Fbr(o,i,c).map(f=>({...f,score:Ubr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return E("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),We(d,200)}kt();dr();kt();var Uot=`
|
|
/* \u57FA\u7840\u6837\u5F0F - Zen-iOS Hybrid Design */
|
|
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;800&display=swap');
|
|
|
|
: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 Fot=`
|
|
/* \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 qot=`
|
|
/* \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 jot=`
|
|
/* \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 Qot=`
|
|
// \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">×</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 = {
|
|
'&': '&',
|
|
'<': '<',
|
|
'>': '>',
|
|
'"': '"',
|
|
"'": '''
|
|
};
|
|
return str.replace(/[&<>"']/g, m => map[m]);
|
|
}
|
|
|
|
|
|
// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316
|
|
init();
|
|
`;var Hot=`
|
|
// \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 Got=`
|
|
// \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 zot=`
|
|
// 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 + '">← ' + 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 Kot=`
|
|
// \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 Vot=`
|
|
// \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 Yot=`
|
|
// \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="->">-></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})">×</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, ''');
|
|
|
|
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, ''').replace(/"/g, '"');
|
|
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, ''').replace(/"/g, '"');
|
|
}
|
|
}
|
|
} else {
|
|
childTitleStr = (link.title || '').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"');
|
|
}
|
|
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, ''').replace(/"/g, '"') : '\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 Jot=`
|
|
<!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>${Uot}</style>
|
|
<style>${Fot}</style>
|
|
<style>${qot}</style>
|
|
<style>${jot}</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()">×</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()">×</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()">×</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>
|
|
${Qot}
|
|
${Hot}
|
|
${Got}
|
|
${zot}
|
|
${Kot}
|
|
${Vot}
|
|
${Yot}
|
|
</script>
|
|
</body>
|
|
</html>
|
|
`;vt();var Ta=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Zot(),Xot));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(tct(),ect));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(nct(),rct));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(ict(),sct));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(oct(),act));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function Zoe(){return new Response(Jot.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function K5(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),We({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function cct(){try{let t=O.deployPlatform;if(E("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return E("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),We({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await Ta.getHandler(t);return e?await e.deploy()?(E("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),We({success:!0,message:"Deployment triggered successfully"},200)):(E("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),We({success:!1,message:"Failed to trigger deployment"},500)):(E("error",`[system] [Server] No handler found for platform: ${t}`),We({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return E("error",`[system] [Server] Deployment error: ${t.message}`),We({success:!1,message:`Deployment failed: ${t.message}`},500)}}function uct(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${k$e(r.message)}`).join(`
|
|
`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function lct(){return O.logBuffer=[],We({success:!0,message:"Logs cleared"},200)}async function dct(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{iFe(!0),O.useBangumiData&&TL(O.deployPlatform,!1).catch(t=>{E("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){E("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}E("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>(Un(),VUe));await t(),E("info","[system] [Server] Local cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(lL(),MUe));await t(),E("info","[system] [Server] Redis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>(HT(),T5));await t(),E("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return E("info","[system] [Server] All caches cleared successfully"),We({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(t){return E("error",`[system] [Server] Cache clear failed: ${t.message}`),We({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function qbr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Xoe(t){if(t==null)return t;if(Array.isArray(t))return t.map(Xoe);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Xoe(t[r]);return e}return"***"}function fct(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=qbr(n.interface)),n.params!=null&&(n.params=Xoe(n.params)),n})),We({records:t,todayReqNum:e},200)}function pct(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=e.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return We({success:!0,data:r},200)}catch(t){return E("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),We({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}dr();vt();kt();async function mct(t){try{let{key:e,value:r}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).setEnv(e,r)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function hct(t){try{let{key:e,value:r}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).addEnv(e,r)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function gct(t){try{let{key:e}=await t.json();if(!e)return We({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await Ta.getHandler(r)).delEnv(e)?We({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):We({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),We({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function yct(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return We({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new Rf({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?We({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):We({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return E("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),We({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}ys();dr();vt();kt();var Act=new Map;function xct(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function jbr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&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 bct(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function _ct(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await bct(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:jbr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function Ect(){try{let t=xct(),e=await _ct(t,"saved");return We(e)}catch(t){return We({success:!1,message:t.message},500)}}async function vct(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?xct():r,a=await _ct(s,n?"saved":"input");return We(a)}catch(e){return We({success:!1,message:e.message},500)}}async function Sct(){try{let e=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return e.code!==0?We({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(Act.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),We({success:!0,data:e.data}))}catch(t){return We({success:!1,message:t.message},500)}}function Qbr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function Ict(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return We({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=Qbr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),We(a)}catch(r){return We({success:!1,message:r.message},500)}finally{e&&Act.delete(e)}}async function Cct(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return We({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return We({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await bct(r);if(!n.isValid)return We({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await Ta.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?We({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):We({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):We({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return We({success:!1,message:e.message},500)}}var yt;async function wct(t,e,r,n,s){yt=_g.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(yt.useBangumiData&&await TL(r,c,s),yt.deployPlatform=r,r==="node"){await dJ(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>(HT(),T5));await h(a)}if(await YY(a),!yt.aiValid&&yt.aiBaseUrl&&yt.aiModel&&yt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new Rf({baseURL:yt.aiBaseUrl,model:yt.aiModel,apiKey:yt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(yt.aiValid=!0),E("info",`[system] [Server] request url: ${JSON.stringify(i)}`),E("info",`[system] [Server] request path: ${a}`),E("info",`[system] [Server] client ip: ${n}`),yt.ipBlacklist?.length&&yt.ipBlacklist.some(y=>Hbr(y,n)))return E("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),We({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=yt.token==="87654321",p=d===yt.token||d===yt.adminToken;if(yt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&yt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await lJ(),yt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await VY(),r==="node"&&yt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>(HT(),T5));await h()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(h=>a.includes(h))){let h=yt.reqRecords.length>0?yt.reqRecords[yt.reqRecords.length-1]:null,y=new Date().toDateString();if(h){let S=new Date(h.timestamp).toDateString();E("info",`[system] [Server] currentDate: ${y}`),E("info",`[system] [Server] lastDate: ${S}`),S!==y?yt.todayReqNum=1:yt.todayReqNum++}else yt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let x=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let S=t.clone();if((S.headers.get("content-type")||"").includes("application/json"))x=await S.json();else{let R=await S.text();R&&(x=JSON.parse(R))}}catch{x=null}let A={interface:g,params:x,timestamp:new Date().toISOString(),method:o,clientIp:n};yt.reqRecords.push(A),yt.reqRecords.length>yt.MAX_RECORDS&&(yt.reqRecords=yt.reqRecords.slice(-yt.MAX_RECORDS))}if(a==="/"&&o==="GET")return Zoe();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(yt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===yt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?K5(!1):(E("error",`[system] [Server] Invalid token in path: ${a}`),We({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==yt.token&&u[0]!==yt.adminToken)return a==="/api/config"&&o==="GET"?K5(!1):(E("error",`[system] [Server] Invalid or missing token in path: ${a}`),We({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(E("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return K5(!0);if(a==="/api/reqrecords"&&o==="GET")return fct();if(E("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){E("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)E("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?E("info",`[Path Check] Path after cleanup: "${a}"`):E("info","[Path Check] Path after cleanup: No cleanup needed.");let y=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(E("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(E("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(E("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===y&&E("info","[Path Check] Prefix Check: No prefix addition needed."),E("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return Zoe();if(a==="/api/v2/search/anime"&&o==="GET")return $1(i);if(a==="/api/v2/search/episodes"&&o==="GET")return Bot(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return Goe(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return Goe(i,t);if(a==="/api/v2/match"&&o==="POST")return Dot(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return qoe(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),y=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),x=g==="true"||g==="1",A=b==="true"||b==="1";if(y){if(wf(y)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${y}, skipping rate limit check`),Hoe(y,h,x,A);if(yt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;xL(w),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let B=yt.requestHistory.get(n).filter(M=>w-M<=N);if(B.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${B.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),We({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);B.push(w),yt.requestHistory.set(n,B),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${B.length}/${yt.rateLimitMaxRequests}`)}return Hoe(y,h,x,A)}if(!a.startsWith("/api/v2/comment/"))return E("error","[system] [Server] Missing commentId or url parameter"),We({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let S=parseInt(a.split("/").pop()),I=UC(S);if(I&&wf(I)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${I}, skipping rate limit check`),Qoe(a,h,x,n,A);if(yt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;xL(R),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let k=yt.requestHistory.get(n).filter(B=>R-B<=w);if(k.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${k.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),We({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);k.push(R),yt.requestHistory.set(n,k),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${k.length}/${yt.rateLimitMaxRequests}`)}return Qoe(a,h,x,n,A)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),y=await t.json(),g;try{g=Kb.fromJson(y)}catch{return E("error","[system] [Server] Invalid JSON in request body for segment"),We({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Lot(g,h)}catch(h){return E("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),We({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?uct():a==="/api/logs/clear"&&o==="POST"?lct():a==="/api/env/set"&&o==="POST"?mct(t):a==="/api/env/add"&&o==="POST"?hct(t):a==="/api/env/del"&&o==="POST"?gct(t):a==="/api/deploy"&&o==="POST"?cct():a==="/api/cache/animes"&&o==="GET"?pct():a==="/api/cache/clear"&&o==="POST"?dct():a==="/api/cookie/status"&&o==="GET"?Ect():a==="/api/cookie/qr/generate"&&o==="POST"?Sct():a==="/api/cookie/qr/check"&&o==="POST"?Ict(t):a==="/api/cookie/verify"&&o==="POST"?vct(t):a==="/api/cookie/save"&&o==="POST"?Cct(t):a==="/api/ai/verify"&&o==="POST"?yct(t):We({message:"Not found"},404)}function Hbr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?Gbr(e,t.ip,t.prefix):!1}function Gbr(t,e,r){if(t.includes(":")||e.includes(":")){let o=Tct(t),c=Tct(e);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;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=ece(t),i=ece(e);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function ece(t){let e=t.split(".");if(e.length!==4)return null;let r=e.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function Tct(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=ece(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var Uu=null,q1=9321,V5=0,fy=null,Rct=!1,F1={...process.env,ADMIN_TOKEN:"douer"},Y5=!1,bw=null,Uc=null,Tn={overrides:{},deletedKeys:[]};function Ri(...t){}function _w(...t){}function Pct(){return V5>0}function zbr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function rce(){return{overrides:{},deletedKeys:[]}}function Dct(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return oce.default.resolve(e,"danmu_env_overrides.json")}function Kbr(t){let e=rce();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function Vbr(){Uc=Dct();try{if(!Ew.default.existsSync(Uc)){Tn=rce(),Ri("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Uc});return}let t=Ew.default.readFileSync(Uc,"utf8"),e=t?JSON.parse(t):{};Tn=Kbr(e),Ri("loadPersistedEnvStore()",{loaded:!0,path:Uc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=rce(),_w("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Uc})}}function Ybr(){try{Uc||(Uc=Dct());let t=oce.default.dirname(Uc);Ew.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return Ew.default.writeFileSync(Uc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return _w("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Uc||""}),!1}}function nce(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),Jbr(t)}function Jbr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function Xbr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function Zbr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=Xbr(c);u!==null&&u!==""&&(r[s]=u)}),t}function tce(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return Ybr()?(F1=nce(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],F1=nce(),!1)}var e1r={async setEnv(t,e){return tce(t,e,!1)?(Ri("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return tce(t,e,!1)?(Ri("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return tce(t,"",!0)?(Ri("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function t1r(){Y5||(bw=Ta.getHandler,Ta.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?e1r:bw.call(Ta,e)},Y5=!0,Ri("installNodeEnvHotReloadPatch()",{patched:!0}))}function r1r(){!Y5||!bw||(Ta.getHandler=bw,bw=null,Y5=!1,Ri("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function n1r(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function s1r(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function i1r(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?s1r(t):Buffer.from(String(t),"utf8")}var vw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},sce=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||vw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=n1r(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},ice=class{constructor(e=null,r={}){let n=globalThis.Headers||vw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=i1r(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function a1r(){Rct||(typeof globalThis.Headers!="function"&&(globalThis.Headers=vw),typeof globalThis.Response!="function"&&(globalThis.Response=ice),typeof globalThis.Request!="function"&&(globalThis.Request=sce),Rct=!0,Ri("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Nct(t,e={}){let r=await he({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function o1r(){Ri("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),fy=globalThis.fetch,globalThis.fetch=function(e,r){return V5>0?Nct(e,r):typeof fy=="function"?fy(e,r):Nct(e,r)}}function ace(){if(Ri("uninstallPatches()",{hasOriginalFetch:!!fy}),typeof fy=="function")globalThis.fetch=fy;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}fy=null}function Bct(t=9321){if(q1=t,a1r(),t1r(),Vbr(),F1=nce(),Ri("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:F1.ADMIN_TOKEN==="douer",persistedEnvStorePath:Uc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),Ri("start()",{port:t,alreadyRunning:!!Uu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:zbr()}),!Uu){o1r();try{Uu=kct.default.createServer(async(e,r)=>{V5++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();Ri(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...F1},d=await wct(u,l,"node",e.socket?.remoteAddress||"unknown");Ri(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=Zbr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){_w(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{Ri(`[${n}] complete`,{costMs:Date.now()-s}),V5--}}),Uu.listen(t,"0.0.0.0",()=>{let e=Uu?.address?.();Ri("listen ok",{address:e})}),Uu.on("error",e=>{_w("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),ace(),Uu=null})}catch(e){_w("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),ace()}}}function Lct(){Ri("stop()",{hasServer:!!Uu,port:q1}),Uu&&(Uu.close(),Uu=null),r1r(),ace()}function iAn(){return q1}function Oct(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function c1r(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function u1r(t){let e=c1r(t);if(e&&!Oct(e))return e;let r=String(Z0()||"").trim();return r&&!Oct(r)?r:"127.0.0.1"}function l1r(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:q1}function cce(t,e=q1){let r=u1r(t),n=l1r(e);return`http://${r}:${n}`}function uce(t,e=q1){let r=cce(t,e),n=String(d1r()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function d1r(){return String(F1?.ADMIN_TOKEN||"").trim()||"douer"}function p1r(t){return Sw.default.enc.Utf8.stringify(Sw.default.enc.Base64.parse(t))}function Mct(t){return Sw.default.enc.Base64.stringify(Sw.default.enc.Utf8.parse(t))}function Fct(t){return String(t||"").split(",")[0].trim()}function Wct(t){return Fct(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function $ct(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function J5(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Wct(t?.headers?.["x-forwarded-host"])||Wct(t?.headers?.host),s=Fct(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!$ct(n))return`${a}://${n}`;let o=String(Z0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!$ct(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function m1r(t,e){return{}}async function h1r(t,e){return{class:[{type_id:"setting",type_name:`${J5(t)}/website`}]}}async function g1r(t,e){let r=J5(t),n=r+t.server.prefix+"/proxy",s=uce(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+Mct(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+Mct(s)}]}}async function y1r(t,e){if(t.body.id==="openInternalWebsite"){let r=J5(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=J5(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:uce(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function A1r(t,e){let r=t.params.img,n=p1r(r),s=await Uct.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var qct={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",m1r),t.post("/home",h1r),t.post("/category",g1r),t.post("/detail",y1r),t.get("/proxy/:img",A1r)}};var x1r=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],lce=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||x1r,b1r=async(t,e)=>{await t.db.push("/muou/urls",e)},_1r=async t=>{await t.db.delete("/muou/urls")};async function dce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await lce(e.server)})}),t.put("/urls",async(e,r)=>{await b1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await _1r(e.server),r.send({code:0})})}var fce,X5=t=>{if(!fce){let e=Date.now();fce=new Promise(async r=>{let n=await lce(t),s=await Zn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return fce},j1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function E1r(t){try{if(!j1.url)return;let e={"Content-Type":"application/json"};j1.key&&(e.Authorization=`Bearer ${j1.key}`),await fe(j1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:j1.sendTimeout||1200,receiveTimeout:j1.receiveTimeout||1500})}catch{}}async function pce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function v1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function S1r(t,e){let r=await X5(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await pce(o,Gt),u=De(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),y=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:y,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function I1r(t,e){let r=await X5(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await pce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),E1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function C1r(t,e){let r=await X5(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await pce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var jct={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",lr),t.post("/home",v1r),t.post("/category",S1r),t.post("/detail",I1r),t.post("/play",er),t.post("/search",C1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:X5};var T1r=["http://xiaocgege.shop"],mce=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||T1r,w1r=async(t,e)=>{await t.db.push("/labi/urls",e)},R1r=async t=>{await t.db.delete("/labi/urls")};async function hce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await mce(e.server)})}),t.put("/urls",async(e,r)=>{await w1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await R1r(e.server),r.send({code:0})})}var gce,Z5=t=>{if(!gce){let e=Date.now();gce=new Promise(async r=>{let n=await mce(t),s=await Zn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return gce},Q1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function N1r(t){try{if(!Q1.url)return;let e={"Content-Type":"application/json"};Q1.key&&(e.Authorization=`Bearer ${Q1.key}`),await fe(Q1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Q1.sendTimeout||1200,receiveTimeout:Q1.receiveTimeout||1500})}catch{}}async function yce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function O1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[24]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD",v:"\u4E2D\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function k1r(t,e){let r=await Z5(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await yce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function P1r(t,e){let r=await Z5(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await yce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),N1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function D1r(t,e){let r=await Z5(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await yce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Qct={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",lr),t.post("/home",O1r),t.post("/category",k1r),t.post("/detail",P1r),t.post("/play",er),t.post("/search",D1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:Z5};var B1r=["http://shandian.blog","http://sd.sduc.site"],Ace=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||B1r,L1r=async(t,e)=>{await t.db.push("/shandian/urls",e)},M1r=async t=>{await t.db.delete("/shandian/urls")};async function xce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Ace(e.server)})}),t.put("/urls",async(e,r)=>{await L1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await M1r(e.server),r.send({code:0})})}var bce,e6=t=>{if(!bce){let e=Date.now();bce=new Promise(async r=>{let n=await Ace(t),s=await Zn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return bce},H1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function W1r(t){try{if(!H1.url)return;let e={"Content-Type":"application/json"};H1.key&&(e.Authorization=`Bearer ${H1.key}`),await fe(H1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:H1.sendTimeout||1200,receiveTimeout:H1.receiveTimeout||1500})}catch{}}async function _ce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function $1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],n={};return n[1]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function U1r(t,e){let r=await e6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await _ce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function F1r(t,e){let r=await e6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await _ce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),W1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function q1r(t,e){let r=await e6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await _ce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Hct={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",lr),t.post("/home",$1r),t.post("/category",U1r),t.post("/detail",F1r),t.post("/play",er),t.post("/search",q1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:e6};var j1r=["https://woog.nxog.eu.org"],Ece=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||j1r,Q1r=async(t,e)=>{await t.db.push("/ouge/urls",e)},H1r=async t=>{await t.db.delete("/ouge/urls")};async function vce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Ece(e.server)})}),t.put("/urls",async(e,r)=>{await Q1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await H1r(e.server),r.send({code:0})})}var Sce,t6=t=>{if(!Sce){let e=Date.now();Sce=new Promise(async r=>{let n=await Ece(t),s=await Zn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Sce},G1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function G1r(t){try{if(!G1.url)return;let e={"Content-Type":"application/json"};G1.key&&(e.Authorization=`Bearer ${G1.key}`),await fe(G1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:G1.sendTimeout||1200,receiveTimeout:G1.receiveTimeout||1500})}catch{}}async function Ice(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function z1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"+\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"+\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"+\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function K1r(t,e){let r=await t6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Ice(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function V1r(t,e){let r=await t6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Ice(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),G1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function Y1r(t,e){let r=await t6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Ice(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Gct={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",lr),t.post("/home",z1r),t.post("/category",K1r),t.post("/detail",V1r),t.post("/play",er),t.post("/search",Y1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:t6};var J1r=["https://www.wexwp.cc","https://www.2xiaopan.top"],Cce=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||J1r,X1r=async(t,e)=>{await t.db.push("/erxiao/urls",e)},Z1r=async t=>{await t.db.delete("/erxiao/urls")};async function Tce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Cce(e.server)})}),t.put("/urls",async(e,r)=>{await X1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Z1r(e.server),r.send({code:0})})}var wce,r6=t=>{if(!wce){let e=Date.now();wce=new Promise(async r=>{let n=await Cce(t),s=await Zn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return wce},z1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function e_r(t){try{if(!z1.url)return;let e={"Content-Type":"application/json"};z1.key&&(e.Authorization=`Bearer ${z1.key}`),await fe(z1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:z1.sendTimeout||1200,receiveTimeout:z1.receiveTimeout||1500})}catch{}}async function Rce(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function t_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[22]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function r_r(t,e){let r=await r6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Rce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function n_r(t,e){let r=await r6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Rce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),e_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function s_r(t,e){let r=await r6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Rce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var zct={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",lr),t.post("/home",t_r),t.post("/category",r_r),t.post("/detail",n_r),t.post("/play",er),t.post("/search",s_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:r6};var i_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",a_r="https://img.icons8.com/color/48/video.png",o_r="https://img.icons8.com/color/48/file.png",c_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],u_r=[".srt",".ass",".scc",".stl",".ttml"];async function l_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Kct(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function Vct(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||c_r.some(r=>e.endsWith(r))}function d_r(t){let e=String(t?.file_name||"").toLowerCase();return u_r.some(r=>e.endsWith(r))}function f_r(t,e){return`folder@@@${t}@@@${e}`}function p_r(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function m_r(t,e,r=1){let n=[],s=[],i=await i5e(t,e||"0",r);i.forEach(o=>{let c=Kct(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&Vct(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&d_r(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=Tl({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Kct(o);if(!c&&!Vct(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=o_r;c?l=i_r:l=a_r,a.push({vod_id:c?f_r(u,o.fid):p_r(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Xi(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function h_r(t,e){return await $I(t),{}}async function g_r(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function y_r(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await m_r(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function A_r(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await l_r("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function x_r(t,e){return await V4(t,e)}async function b_r(t,e){return{page:1,pagecount:1,list:[]}}async function __r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Yct={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",h_r),t.post("/home",g_r),t.post("/category",y_r),t.post("/detail",A_r),t.post("/play",x_r),t.post("/search",b_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",K4),t.get("/test",__r)}};var E_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",v_r="https://img.icons8.com/color/48/video.png",S_r="https://img.icons8.com/color/48/file.png",I_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],C_r=[".srt",".ass",".scc",".stl",".ttml"];async function T_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function w_r(t){return t?.type==="folder"}function Jct(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||I_r.includes(e)}function R_r(t,e){return`folder@@@${t}@@@${e}`}function N_r(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function O_r(t,e){let r=[],n=[],s=[],i="";do{let o=await HLe(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&Jct(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&C_r.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=Tl(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=w_r(o);if(!c&&!Jct(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=S_r;c?l=E_r:l=v_r,a.push({vod_id:c?R_r(u,o.file_id):N_r(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Xi(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function k_r(t,e){return await WI(t),{}}async function P_r(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function D_r(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await O_r(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function B_r(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await T_r("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function L_r(t,e){return await H4(t,e)}async function M_r(t,e){return{page:1,pagecount:1,list:[]}}async function W_r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Xct={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",k_r),t.post("/home",P_r),t.post("/category",D_r),t.post("/detail",B_r),t.post("/play",L_r),t.post("/search",M_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Q4),t.get("/test",W_r)}};var eut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",$_r="https://img.icons8.com/color/48/video.png",U_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],n6=100,F_r=5,q_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Zct(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function j_r(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return U_r.some(r=>e.endsWith(r))}function Nce(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Oce(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function Q_r(t){return Number(t?.size||t?.fileSize||0)}function H_r(t,e){return`folder@@@${t}@@@${e}`}function G_r(t){return`file@@@${Nce(t)}@@@own*${Oce(t)}`}function z_r(t){return String(t?.vod_id||"").startsWith("file@@@")}function K_r(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function kce(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function V_r(t){return kce(t,36,10)}async function tut(t,e="-11",r=1){await Wb(t);let n=await _f.listOwnFiles(e,r,n6),s=[];return(n.folderList||[]).forEach(i=>{let a=Oce(i);if(!a)return;let o=Nce(i);s.push({vod_id:H_r(o,a),vod_name:o,vod_pic:eut,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!Oce(i)||!j_r(i))return;let a=Nce(i);s.push({vod_id:G_r(i),vod_name:a,vod_pic:$_r,vod_remarks:Xi(Q_r(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function Y_r(t,e){return await Wb(t),{}}async function J_r(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function X_r(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await tut(t,r||"-11",n);return{page:n,pagecount:s>=n6?n+1:n,limit:n6,total:9999,list:i}}async function Z_r(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=F_r;){let{rawCount:f,list:p}=await tut(t,u,d);if(l.push(...p.filter(z_r)),f<n6)break;d+=1}if(l.length>0){let f=await Zct("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:eut,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(K_r).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Zct("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function eEr(t,e){await Wb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=kce(n,8,6),a=kce(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await _f.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:V_r(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":q_r}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(`
|
|
`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function tEr(t,e){return{page:1,pagecount:1,list:[]}}async function rEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var rut={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",Y_r),t.post("/home",J_r),t.post("/category",X_r),t.post("/detail",Z_r),t.post("/play",eEr),t.post("/search",tEr),t.get("/test",rEr)}};var nEr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",sEr="https://img.icons8.com/color/48/video.png",iEr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function aEr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function oEr(t){return encodeURIComponent(String(t||""))}function cEr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function uEr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return iEr.some(r=>e.endsWith(r))}function nut(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function lEr(t,e){return`folder@@@${t}@@@${e}`}function dEr(t){let e=nut(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${oEr(n)}`}async function fEr(t,e="/",r=1){let{list:n,rawCount:s}=await t$e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=cEr(a);if(!o&&!uEr(a))return i;let c=nut(a);return i.push({vod_id:o?lEr(c,String(a?.path||"/")):dEr(a),vod_name:c,vod_pic:o?nEr:sEr,vod_remarks:o?"\u76EE\u5F55":Xi(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function pEr(t,e){return await $b(t),{}}async function mEr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function hEr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await fEr(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function gEr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await aEr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function yEr(t,e){return await UB(t,e)}async function AEr(t,e){return{page:1,pagecount:1,list:[]}}async function xEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var sut={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",pEr),t.post("/home",mEr),t.post("/category",hEr),t.post("/detail",gEr),t.post("/play",yEr),t.post("/search",AEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",FB),t.get("/test",xEr)}};var bEr="115Drive",iut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",_Er="https://img.icons8.com/color/48/video.png",EEr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};async function vEr(t,e="0",r=1){let n=await X0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await fe.get(o,{headers:{...EEr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function SEr(t){return encodeURIComponent(String(t||""))}function IEr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function CEr(t,e,r){return`LOCAL###${t}###${SEr(e)}###${r}`}function aut(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:IEr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function TEr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:CEr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?iut:_Er,vod_remarks:e?"\u76EE\u5F55":Xi(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function wEr(t,e){return{}}async function REr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function NEr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=aut(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await vEr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(TEr)}}async function OEr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=aut(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:iut,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:bEr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function kEr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await WB(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function PEr(t,e){return{page:1,pagecount:1,list:[]}}async function DEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var out={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",wEr),t.post("/home",REr),t.post("/category",NEr),t.post("/detail",OEr),t.post("/play",kEr),t.post("/search",PEr),t.get("/test",DEr)}};var BEr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",LEr="https://img.icons8.com/color/48/video.png",MEr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function WEr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function $Er(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function UEr(t){return t?.data??t??{}}function FEr(t){let e=UEr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Dce(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Pce(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function cut(t){return Number(t?.Size||t?.size||0)}function qEr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function jEr(t){return String(t?.Etag||t?.etag||"")}function QEr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function HEr(t){let e=Dce(t).toLowerCase();return Number(t?.Category)===2||MEr.some(r=>e.endsWith(r))}function GEr(t,e){return`folder@@@${t}@@@${e}`}function zEr(t){let e=Dce(t),r=["own",Pce(t),qEr(t),String(cut(t)),jEr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function KEr(t,e="0"){await J0(t);let r=await ai.getrootmyfile(e||"0"),n=FEr(r),s=[];return n.forEach(i=>{let a=QEr(i);if(!a&&!HEr(i))return;let o=Dce(i);s.push({vod_id:a?GEr(o,Pce(i)):zEr(i),vod_name:o,vod_pic:a?BEr:LEr,vod_remarks:a?"\u76EE\u5F55":Xi(cut(i)),...a?{cate:{id:Pce(i),name:o}}:{},ratio:1.33})}),s}async function VEr(t,e){return await J0(t),{}}async function YEr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function JEr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await KEr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function XEr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await WEr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function ZEr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await J0(t);try{let n=await ai.getmyDownload(r[1],r[2],r[3],r[4],$Er(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function evr(t,e){return{page:1,pagecount:1,list:[]}}async function tvr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var uut={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",VEr),t.post("/home",YEr),t.post("/category",JEr),t.post("/detail",XEr),t.post("/play",ZEr),t.post("/search",evr),t.get("/test",tvr)}};var fut="https://pan1.me";function lut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function put(t){return String(t||"").trim().replace(/\/+$/,"")||fut}var mut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(lut(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return lut(s,e)?s[e]:r},rvr=async t=>put(await mut(t,"url",fut)),nvr=async t=>String(await mut(t,"cookie","")||"").trim(),Bce=async t=>({url:await rvr(t),cookie:await nvr(t)}),dut=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},svr=async t=>{await t.db.delete("/123ypzysq")};async function Lce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Bce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await dut(e.server,"url",put(n.url)),await dut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await svr(e.server),r.send({code:0})})}var s6="https://pan1.me",ivr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],avr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",ovr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,cvr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,Aut=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],hut=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function cp(t){return String(t||"").replace(/\s+/g," ").trim()}async function Mce(t){let e=await Bce(t.server).catch(()=>({url:s6,cookie:""})),r=String(e.url||s6).trim().replace(/\/+$/,""),n=ivr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||s6,cookie:String(e.cookie||n||"").trim()}}function uvr(t,e=!1){let r={"User-Agent":avr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function xut(t,e=s6){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function Iw(t,e,r,n={}){let s=await fe.request({url:xut(t,r.baseUrl),method:n.method||"GET",headers:uvr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function but(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function _ut(t){let e=De(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=cp(a.text()),c=i.attr("data-tid")||but(a.attr("href"));if(!o||!c)return;let u=cp(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>cp(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function Eut(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function lvr(){return hut[Math.floor(Math.random()*hut.length)]}async function dvr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:lvr()}).toString();await Iw(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function gut(t){return cp(t).match(/(?:æå–ç |访问ç |密ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function fvr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function pvr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function yut(t,e){let r=fvr(t);return cvr.test(r)?e?pvr(r,e):r:""}function mvr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=gut(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=gut(t(u).parent().text())||o,f=yut(l,d);f&&r.add(f)});for(let c of i.html()?.match(ovr)||[]){let u=yut(c,o);u&&r.add(u)}}),[...r]}function hvr(t,e,r){let n={vod_id:e,vod_name:cp(t(".movie-title").first().text())||cp(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:xut(t(".movie-poster img").first().attr("src")||"",r),vod_content:cp(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=cp(t(i).text()),o=cp(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function gvr(t,e){return await lr(t,e),{}}async function yvr(t,e){return{class:Aut}}async function Avr(t,e){let r=String(t.body.id||Aut[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await Mce(t),i=await Iw(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=_ut(i);return{page:n,pagecount:Eut(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function xvr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await Mce(t);for(let i of r){let a=but(i);if(!a)continue;let o=await Iw(`/?thread-${a}.htm`,t,s),c=De(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await dvr(a,t,s),o=await Iw(`/?thread-${a}.htm`,t,s),c=De(o));let u=hvr(c,a,s.baseUrl),l=mvr(c),d=l.length>0?await Xt(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function bvr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await Mce(t),a=await Iw(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=_ut(a);return{page:n,pagecount:Eut(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function _vr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var vut={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",gvr),t.post("/home",yvr),t.post("/category",Avr),t.post("/detail",xvr),t.post("/play",er),t.post("/search",bvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",_vr)}};var Cut="https://www.xn--rhqp87dfoiv9a830g.com";function Sut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Tut(t){return String(t||"").trim().replace(/\/+$/,"")||Cut}var wut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/guanying",{});if(Sut(n,e))return n[e];let s=t.config?.guanying||{};return Sut(s,e)?s[e]:r},Evr=async t=>Tut(await wut(t,"url",Cut)),vvr=async t=>String(await wut(t,"cookie","")||"").trim(),Wce=async t=>({url:await Evr(t),cookie:await vvr(t)}),Iut=async(t,e,r)=>{await t.db.push(`/guanying/${e}`,r)},Svr=async t=>{await t.db.delete("/guanying")};async function $ce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Wce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Iut(e.server,"url",Tut(n.url)),await Iut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Svr(e.server),r.send({code:0})})}var i6="https://www.xn--rhqp87dfoiv9a830g.com",Ivr="https://s.tutu.pm/img",Cvr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Tvr=["CATPAW_GUANYING_COOKIE","GUANYING_COOKIE"],wvr=12,Rut=36,Cw=30,Uce=48,Rvr=24e4,Nut="guanying_video@@@",Out="guanying_group@@@",kut="guanying_link@@@",Put=new Map,Tw=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"ac",type_name:"\u52A8\u6F2B"}],Nvr=["\u7F8E\u56FD","\u5927\u9646","\u65E5\u672C","\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u72AF\u7F6A","\u60AC\u7591","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u840C\u7CFB","\u65E5\u5E38","\u70ED\u8840","\u673A\u6218","\u6E38\u620F","\u60C5\u8272","\u641E\u7B11","\u604B\u7231","\u540E\u5BAB","\u767E\u5408","\u57FA\u8150","\u81F4\u90C1","\u5F02\u4E16\u754C","\u6CE1\u9762","\u6218\u6597","\u52A0\u62FF\u5927","\u9999\u6E2F","\u53F0\u6E7E","\u97E9\u56FD","\u5370\u5EA6","\u5FB7\u56FD","\u6CD5\u56FD","\u82F1\u56FD","\u610F\u5927\u5229","\u5DF4\u897F","\u6CF0\u56FD","\u6FB3\u5927\u5229\u4E9A","\u8377\u5170","\u897F\u73ED\u7259","\u58A8\u897F\u54E5"],Ovr=["\u9884\u544A","\u9AD8\u6E05","\u6807\u6E05","\u4F4E\u6E05","\u62A2\u5148\u7248"];function bo(t){return String(t||"").replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim()}function kvr(t){let e=String(t||"").trim();if(!e)return"";let r=e.match(/^app_auth\s+([^;\s]+)$/i);return r?`app_auth=${r[1]}`:e.includes("=")?e:`app_auth=${e}`}function Pvr(t){return String(t||"").split(";").map(e=>e.trim()).filter(e=>e&&!e.toLowerCase().startsWith("browser_pow=")).join("; ")}function Dut(t){return`${t.baseUrl}|${Pvr(t.cookie)}`}function Dvr(t){let e=Put.get(Dut(t));!e||e.expires<=Date.now()||(t.cookie=a6(t.cookie,e.cookie))}async function Rw(t){let e=await Wce(t.server).catch(()=>({url:i6,cookie:""})),r=Tvr.map(i=>process.env[i]).find(Boolean),s={baseUrl:String(e.url||i6).trim().replace(/\/+$/,"")||i6,cookie:kvr(e.cookie||r||"")};return Dvr(s),s}function Fce(t,e=""){let r={"User-Agent":Cvr,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,application/json,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:e||t.baseUrl};return t.cookie&&(r.Cookie=t.cookie),r}function a6(t,e=[]){let r=new Map;return String(t||"").split(";").forEach(s=>{let i=s.trim(),a=i.indexOf("=");a<=0||r.set(i.slice(0,a),i.slice(a+1))}),(Array.isArray(e)?e:[e]).forEach(s=>{let i=String(s||"").split(";")[0]?.trim(),a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a),c=i.slice(a+1);c?r.set(o,c):r.delete(o)}),[...r.entries()].map(([s,i])=>`${s}=${i}`).join("; ")}function qce(t,e=i6){return new URL(String(t||"/"),e).toString()}function Bvr(t){return typeof t!="string"?!1:t.includes("\u6D4F\u89C8\u5668\u5B89\u5168\u9A8C\u8BC1")||t.includes("powSolve-")||t.includes("pow.worker-")}function Lvr(t){let e=BigInt(`0x${t.N}`),r=BigInt(`0x${t.x}`),n=Number.parseInt(t.t,10)||0;for(let s=0;s<n;s++)r=r*r%e;return r.toString(16)}async function Mvr(t,e){t.cookie=a6(t.cookie,e);let r=Dut(t),n=await fe.get(qce("/res/pow",t.baseUrl),{headers:Fce(t)});t.cookie=a6(t.cookie,n?.headers?.["set-cookie"]);let s=n?.data||{};if(!s.N||!s.x||!s.t)throw new Error(s.error||"\u6D4F\u89C8\u5668\u9A8C\u8BC1\u6311\u6218\u83B7\u53D6\u5931\u8D25");let i=Date.now(),a=Lvr(s),o=3e3-(Date.now()-i);o>0&&await new Promise(u=>setTimeout(u,o));let c=await fe.post(qce("/res/pow",t.baseUrl),new URLSearchParams({y:a}).toString(),{headers:{...Fce(t),"Content-Type":"application/x-www-form-urlencoded"}});if(t.cookie=a6(t.cookie,c?.headers?.["set-cookie"]),!c?.data?.success)throw new Error(c?.data?.error||"\u6D4F\u89C8\u5668\u9A8C\u8BC1\u5931\u8D25");Put.set(r,{cookie:t.cookie,expires:Date.now()+Rvr})}async function jce(t,e,r={},n=!1){let s=await fe.request({url:qce(t,e.baseUrl),method:r.method||"GET",headers:Fce(e,r.referer),data:r.data,validateStatus:i=>i>=200&&i<500});return!n&&Bvr(s?.data)?(await Mvr(e,s?.headers?.["set-cookie"]),jce(t,e,r,!0)):s?.data}async function Qce(t,e,r={}){let n=await jce(t,e,r);return typeof n=="string"?n:JSON.stringify(n||"")}async function Wvr(t,e,r={}){let n=await jce(t,e,r);if(typeof n=="string"){let s=n.trim();if(!s||s.startsWith("<"))throw new Error("\u672A\u767B\u5F55\u6216 Cookie \u5DF2\u5931\u6548");return JSON.parse(s)}return n||{}}function $vr(t,e){let r=e;for(;/\s/.test(t[r]||"");)r++;let n=t[r];if(!(n==="{"?"}":n==="["?"]":""))return"";let i=[],a=!1,o=!1;for(let c=r;c<t.length;c++){let u=t[c];if(a){o?o=!1:u==="\\"?o=!0:u==='"'&&(a=!1);continue}if(u==='"'){a=!0;continue}if(u==="{"||u==="["){i.push(u);continue}if(u==="}"||u==="]"){let l=i[i.length-1]==="{"?"}":"]";if(u!==l)return"";if(i.pop(),i.length===0)return t.slice(r,c+1)}}return""}function ww(t,e){let r=`_obj.${e}=`,n=String(t||"").indexOf(r);if(n<0)return null;let s=$vr(t,n+r.length);return s?JSON.parse(s):null}function But(t){let e=String(t||"").trim(),r=e.match(/(?:^|\/)(mv|tv|ac)\/([A-Za-z0-9]+)(?:$|[?#])/);if(r)return{dir:r[1],id:r[2]};let n=e.match(/^(mv|tv|ac)[:_/|-]([A-Za-z0-9]+)$/);return n?{dir:n[1],id:n[2]}:{dir:"mv",id:e.replace(/[^A-Za-z0-9]/g,"")}}function Hce(t,e,r=256){return`${Ivr}/${t}/${e}/${r}.webp`}function Uvr(t){return Tw.find(e=>e.type_id===t)?.type_name||""}function Fvr(t){return Array.isArray(t)?t.map((e,r)=>r===0?e:Nvr[e]||e).filter(e=>e!=null&&e!==""&&e!==0).map(e=>String(e)):[]}function qvr(t,e){if(t==null||t==="")return"";if(Number.isNaN(Number(t)))return String(t);let r=Number(t);return e==="mv"||r===0?Ovr[r]||String(t):r<1?`\u66F4\u81F3${Math.abs(r)}\u96C6`:`${r}\u96C6\u5168`}function jvr(t,e){return[t?.b?.[e]?`\u78C1${t.b[e]}`:"",t?.w?.[e]?`\u76D8${t.w[e]}`:"",t?.z?.[e]?`\u64AD${t.z[e]}`:""].filter(Boolean).join(" ")}function Qvr(t){return t.filter(Boolean).join(" / ")}function Hvr(t){return!t?.i||!Array.isArray(t.i)?[]:t.i.map((e,r)=>{let n=Array.isArray(t.ty)?["mv","tv","ac"][Number(t.ty[r])-1]||"mv":t.ty||"mv",s=Fvr(t.a?.[r]),i=qvr(t.g?.[r],n),a=Array.isArray(t.q?.[r])?t.q[r].join(" "):"",o=jvr(t,r),c=Qvr(s),u=[a,i,o].filter(Boolean).join(" \xB7 "),l=n==="mv"?c:i;return{vod_id:`${n}/${e}`,vod_name:bo(t.t?.[r]),vod_pic:Hce(n,e),vod_year:s[0]||"",vod_remarks:l||c||u,vod_tag:s.slice(1).join("/"),topRightRemarks:a||o||i}}).filter(e=>e.vod_id&&e.vod_name)}function Gvr(t){let e=t?.l||{};return Array.isArray(e.i)?e.i.map((r,n)=>{let s=e.d?.[n]||"mv",i=bo(e.title?.[n]),a=e.year?.[n]||"",o=e.pf?.db?.s?.[n]||e.pf?.im?.s?.[n]||"";return{vod_id:`${s}/${r}`,vod_name:i,vod_pic:Hce(s,r),vod_year:a,vod_remarks:[Uvr(s),a,o?`\u8BC4\u5206 ${o}`:""].filter(Boolean).join(" \xB7 "),vod_content:bo(e.info?.[n])}}).filter(r=>r.vod_id&&r.vod_name):[]}function Gce(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function zce(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function zvr(t){let e=But(t?.vod_id);return Gce(Nut,{dir:t?.dir||e.dir,id:t?.id||e.id,name:t?.vod_name||t?.name||"",pic:t?.vod_pic||t?.pic||"",remarks:t?.vod_remarks||t?.remarks||"",year:t?.vod_year||t?.year||"",tag:t?.vod_tag||t?.tag||""})}function Lut(t){return zce(Nut,t)}function Kvr(t){return{vod_id:`${t?.dir||"mv"}/${t?.id||""}`,vod_name:bo(t?.name),vod_pic:t?.pic||"",vod_year:t?.year||"",vod_remarks:bo(t?.remarks),vod_tag:t?.tag||""}}function Mut(t){let e=zvr(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"guanying_pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function Vvr(t,e){return Gce(Out,{dir:t?.dir||"mv",id:t?.id||"",name:t?.name||t?.vod_name||"",panKey:e})}function Wut(t){return zce(Out,t)}function Yvr(t){return Gce(kut,{url:t?.url||"",title:t?.title||"",type:t?.type||""})}function Jvr(t){return zce(kut,t)}function Xvr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function Zvr(t,e,r){let n=["title","name","t","n","text","desc","info","remark","remarks"].map(i=>bo(t?.[i])).find(Boolean);if(n)return n;let s=["title","name","t","n","text","desc","info","remark","remarks","source"];for(let i of s){let a=e?.[i];if(!Array.isArray(a))continue;let o=bo(a[r]);if(o&&!/^https?:\/\//i.test(o))return o}return""}function Kce(t){let e=new Set,r=[],n=(a,o,c=null)=>{let u=Xvr(a);!/^https?:\/\//i.test(u)||e.has(u)||(e.add(u),r.push({url:u,title:Zvr(c,t,o)}))},s=Array.isArray(t?.list)?t.list:[];for(let a=0;a<s.length&&r.length<Rut;a++){let o=s[a]||{};n(o.url||o.u||o.link||o.share_url||o.shareUrl,a,o)}let i=Array.isArray(t?.url)?t.url:[];for(let a=0;a<i.length&&r.length<Rut;a++)n(i[a],a);return r}function $ut(t){let e=String(t||"").trim();return Si().find(r=>r.key===e)||{key:e,name:e||"\u7F51\u76D8",pic:""}}function Vce(t){return Si().find(e=>{try{return e.validator(t)}catch{return!1}})}function Uut(t){let e=new Map;return t.forEach((r,n)=>{let s=typeof r=="string"?r:r?.url,i=Vce(s);if(!i?.key)return;e.has(i.key)||e.set(i.key,{panInfo:i,links:[]});let a=n+1;e.get(i.key).links.push({url:s,type:i.key,title:bo(r?.title)||`\u94FE\u63A5${a}`})}),[...e.values()]}async function Fut(t,e){let r=t.map(n=>typeof n=="string"?n:n?.url).filter(n=>Vce(n));return r.length===0?null:await Xt(r.slice(0,wvr),e).catch(n=>(console.warn("[guanying] \u7F51\u76D8\u89E3\u6790\u5931\u8D25:",n?.message||n),null))}function qut(t,e){e?.froms&&e?.urls&&(t.vod_play_from=e.froms,t.vod_play_url=e.urls),Array.isArray(e?.links)&&e.links.length&&(t.vod_links=e.links)}async function Yce(t,e,r){let n=await Wvr(`/res/downurl/${t}/${e}`,r,{referer:`${r.baseUrl}/${t}/${e}`});if(n?.code&&n.code!==200)throw new Error(bo(n.msg)||`\u8D44\u6E90\u63A5\u53E3\u8FD4\u56DE ${n.code}`);return n}async function eSr(t,e,r,n,s){let i;try{i=await Yce(e,r,s)}catch(o){t.vod_content=[t.vod_content,`\u8D44\u6E90\u52A0\u8F7D\u5931\u8D25\uFF1A${bo(o?.message||o)}`].filter(Boolean).join(`
|
|
`);return}let a=Kce(i.panlist).filter(o=>Vce(o.url));if(a.length){let o=await Fut(a,n);qut(t,o)}a.length&&(t.vod_content=[t.vod_content,`\u8D44\u6E90\uFF1A\u7F51\u76D8${a.length}\u6761`].filter(Boolean).join(`
|
|
`))}async function tSr(t,e){let r=await Rw(t),n=await Yce(e.dir,e.id,r),s=Uut(Kce(n.panlist));return{page:1,pagecount:1,limit:Cw,total:s.length,list:s.map(({panInfo:i,links:a})=>{let o=Vvr(e,i.key);return{vod_id:o,vod_name:i.name||i.key,vod_pic:i.pic||"",vod_remarks:`${a.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"guanying_pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:i.key,cate:{id:o,name:i.name||i.key}}})}}async function rSr(t,e){let r=Number.parseInt(t.body.page,10)||1,n=await Rw(t),s=await Yce(e.dir,e.id,n),a=Uut(Kce(s.panlist)).find(({panInfo:f})=>f.key===e.panKey),o=a?.links||[],c=Math.max(1,Math.ceil(o.length/Cw)),u=(r-1)*Cw,l=r<=c?o.slice(u,u+Cw):[],d=a?.panInfo||$ut(e.panKey);return{page:r,pagecount:c,limit:Cw,total:o.length,list:l.map((f,p)=>{let m=u+p+1,h=f.title||`${d.name||"\u7F51\u76D8"} \u94FE\u63A5${m}`;return{vod_id:Yvr({...f,title:h}),vod_name:h,vod_pic:d.pic||"",vod_remarks:d.name||"",type_name:d.name||""}})}}async function nSr(t,e){return await lr(t,e),{}}async function sSr(t,e){return{class:Tw}}async function iSr(t,e){let r=String(t.body?.id||t.body?.type_id||t.body?.categoryId||""),n=Lut(r);if(n?.dir&&n?.id)return await tSr(t,n);let s=Wut(r);if(s?.dir&&s?.id&&s?.panKey)return await rSr(t,s);let i=String(t.body.id||Tw[0].type_id),a=Tw.some(m=>m.type_id===i)?i:Tw[0].type_id,o=Number.parseInt(t.body.page,10)||1,c=await Rw(t),u=new URLSearchParams;o>1&&u.set("page",String(o));let l=await Qce(`/${a}${u.size?`?${u.toString()}`:""}`,c),d=ww(l,"inlist"),f=ww(l,"page")||{},p=Hvr(d).map(Mut);return{page:o,pagecount:Number(f.pages)||o,limit:Uce,total:p.length,list:p}}async function aSr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=await Rw(t),s=[];for(let i of r){let a=Jvr(i);if(a?.url){let m=$ut(a.type),h={vod_id:String(i||""),vod_name:bo(a.title)||m.name||"\u7F51\u76D8\u8D44\u6E90",vod_pic:m.pic||"",vod_remarks:m.name||"",type_name:m.name||""};qut(h,await Fut([a.url],t)),s.push(h);continue}let o=Lut(i);if(o?.dir&&o?.id){s.push(Kvr(o));continue}if(Wut(i))continue;let{dir:c,id:u}=But(i);if(!u)continue;let l=await Qce(`/${c}/${u}`,n),d=ww(l,"d")||{},f=bo(d.title)||u,p={vod_id:`${c}/${u}`,vod_name:f,vod_pic:Hce(c,u,384),vod_year:d.year||"",vod_area:Array.isArray(d.diqu)?d.diqu.join("/"):"",vod_lang:Array.isArray(d.yuyan)?d.yuyan.join("/"):"",vod_type:Array.isArray(d.leixing)?d.leixing.join("/"):"",vod_director:Array.isArray(d.daoyan)?d.daoyan.join("/"):"",vod_actor:Array.isArray(d.zhuyan)?d.zhuyan.join("/"):"",vod_remarks:bo(d.status)||d.times||"",vod_content:bo(d.summary)};await eSr(p,c,u,t,n),s.push(p)}return{list:s}}async function oSr(t,e){return await er(t,e)}async function cSr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,limit:Uce,total:0,list:[]};let s=await Rw(t),i=new URLSearchParams({q:r,type:"",mode:"1"});n>1&&i.set("page",String(n));let a=await Qce(`/search?${i.toString()}`,s),o=ww(a,"search"),c=ww(a,"page")||{},u=Gvr(o).map(Mut);return{page:n,pagecount:Number(c.pages)||1,limit:Uce,total:u.length,list:u}}async function uSr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u75F4\u8FF7",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var jut={meta:{key:"guanying",name:"\u300C\u76D8\u300D\u89C2\u5F71",type:3},api:async t=>{t.post("/init",nSr),t.post("/home",sSr),t.post("/category",iSr),t.post("/detail",aSr),t.post("/play",oSr),t.post("/search",cSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",uSr)}};var lSr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",dSr="https://img.icons8.com/color/48/video.png",Qut=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function fSr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function pSr(t){return Number(t?.resType||0)===2}function mSr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Qut.includes(e)||Qut.some(s=>n.endsWith(s))}function Hut(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Jce(t){return String(t?.fileId||"")}function hSr(t){return Number(t?.fileSize||t?.size||0)}function gSr(t,e){return`folder@@@${t}@@@${e}`}function ySr(t){return`file@@@${Hut(t)}@@@own*${Jce(t)}`}async function ASr(t,e=""){let r=await A$e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=pSr(i);if(!a&&!mSr(i))return;let o=Hut(i);s.push({vod_id:a?gSr(o,Jce(i)):ySr(i),vod_name:o,vod_pic:a?lSr:String(i?.thumbnail||"").trim()||dSr,vod_remarks:a?"\u76EE\u5F55":Xi(hSr(i)),...a?{cate:{id:Jce(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function xSr(t,e){return await hC(t),{}}async function bSr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function _Sr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await ASr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function ESr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await fSr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function vSr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await x$e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function SSr(t,e){return{page:1,pagecount:1,list:[]}}async function ISr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Gut={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",xSr),t.post("/home",bSr),t.post("/category",_Sr),t.post("/detail",ESr),t.post("/play",vSr),t.post("/search",SSr),t.get("/test",ISr)}};var CSr=["http://103.217.192.130:16969"],Xce=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||CSr,TSr=async(t,e)=>{await t.db.push("/huban/urls",e)},wSr=async t=>{await t.db.delete("/huban/urls")};async function Zce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Xce(e.server)})}),t.put("/urls",async(e,r)=>{await TSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await wSr(e.server),r.send({code:0})})}var eue,o6=t=>{if(!eue){let e=Date.now();eue=new Promise(async r=>{let n=await Xce(t),s=await Zn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return eue},K1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function RSr(t){try{if(!K1.url)return;let e={"Content-Type":"application/json"};K1.key&&(e.Authorization=`Bearer ${K1.key}`),await fe(K1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:K1.sendTimeout||1200,receiveTimeout:K1.receiveTimeout||1500})}catch{}}async function tue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function NSr(t,e){let r=[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function OSr(t,e){let r=await o6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await tue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function kSr(t,e){let r=await o6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await tue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),RSr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function PSr(t,e){let r=await o6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await tue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var zut={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",lr),t.post("/home",NSr),t.post("/category",OSr),t.post("/detail",kSr),t.post("/play",er),t.post("/search",PSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:o6};var DSr=["http://103.217.192.184:12512"],rue=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||DSr,BSr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},LSr=async t=>{await t.db.delete("/xiaoban/urls")};async function nue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await rue(e.server)})}),t.put("/urls",async(e,r)=>{await BSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await LSr(e.server),r.send({code:0})})}var sue,c6=t=>{if(!sue){let e=Date.now();sue=new Promise(async r=>{let n=await rue(t),s=await Zn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return sue},V1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function MSr(t){try{if(!V1.url)return;let e={"Content-Type":"application/json"};V1.key&&(e.Authorization=`Bearer ${V1.key}`),await fe(V1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:V1.sendTimeout||1200,receiveTimeout:V1.receiveTimeout||1500})}catch{}}async function iue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function WSr(t,e){let r=[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function $Sr(t,e){let r=await c6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await iue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function USr(t,e){let r=await c6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await iue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),MSr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function FSr(t,e){let r=await c6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await iue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Kut={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",lr),t.post("/home",WSr),t.post("/category",$Sr),t.post("/detail",USr),t.post("/play",er),t.post("/search",FSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:c6};var qSr=["https://wogg.xxooo.cf","https://www.wogg.net"],aue=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||qSr,jSr=async(t,e)=>{await t.db.push("/wanou/urls",e)},QSr=async t=>{await t.db.delete("/wanou/urls")};async function oue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await aue(e.server)})}),t.put("/urls",async(e,r)=>{await jSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await QSr(e.server),r.send({code:0})})}var cue,d6=t=>{if(!cue){let e=Date.now();cue=new Promise(async r=>{let n=await aue(t),s=await Zn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return cue},Y1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function HSr(t){try{if(!Y1.url)return;let e={"Content-Type":"application/json"};Y1.key&&(e.Authorization=`Bearer ${Y1.key}`),await fe(Y1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Y1.sendTimeout||1200,receiveTimeout:Y1.receiveTimeout||1500})}catch{}}async function u6(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function GSr(t,e){return await lr(t,e),{}}async function zSr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function KSr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function l6(t,e){return KSr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function VSr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r<e.length;r++)if(e[r]!="")return r;return-1}async function YSr(t,e){let r=await d6(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 u6(`${r}/index.php/vodsearch/${o.join("-")}.html`),l=De(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:l6(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await u6(c),l=De(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:l6(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function JSr(t,e){let r=await d6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await u6(`${r}/index.php/voddetail/${i}.html`),o=De(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let y=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=VSr(y);if(b===5){let x={id:"s-5-"+decodeURIComponent(y[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(x)}/]${g}[/a]`)}else if(b===1){let x={id:"s-1-"+decodeURIComponent(y[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(x)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:l6(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await Xt(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls,d.vod_links=p.links),HSr({detail_url:`${r}/index.php/voddetail/${i}.html`,html:a,parsed:{vod_name:d.vod_name||"",vod_pic:d.vod_pic||"",vod_content:d.vod_content||"",panUrls:Array.isArray(f)?f:[]}}),s.push(d)}return{list:s}}async function XSr(t,e){let r=await d6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await u6(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=De(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:l6(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function ZSr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u<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 Vut={meta:{key:"wanou",name:"\u300C\u76D8\u300D\u73A9\u5076",type:3},api:async t=>{t.post("/init",GSr),t.post("/home",zSr),t.post("/category",YSr),t.post("/detail",JSr),t.post("/play",er),t.post("/search",XSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",ZSr)},check:d6};var eIr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],uue=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||eIr,tIr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},rIr=async t=>{await t.db.delete("/zhizhen/urls")};async function lue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await uue(e.server)})}),t.put("/urls",async(e,r)=>{await tIr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await rIr(e.server),r.send({code:0})})}var due,f6=t=>{if(!due){let e=Date.now();due=new Promise(async r=>{let n=await uue(t),s=await Zn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return due},J1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function nIr(t){try{if(!J1.url)return;let e={"Content-Type":"application/json"};J1.key&&(e.Authorization=`Bearer ${J1.key}`),await fe(J1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:J1.sendTimeout||1200,receiveTimeout:J1.receiveTimeout||1500})}catch{}}async function fue(t){return(await fe.get(t,{headers:{"User-Agent":Gt}})).data}async function sIr(t,e){let r=[{type_id:"26",type_name:"\u81FB\u5F69"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],n={};return n[26]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function iIr(t,e){let r=await f6(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await fue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var p of d){let y=l(p).find(".module-item-pic a").attr("href"),g=l(p).find(".module-item-pic img").attr("alt"),b=l(p).find(".module-item-pic img").attr("data-src"),x=l(p).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:b,vod_remarks:x})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function aIr(t,e){let r=await f6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await fue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),nIr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function oIr(t,e){let r=await f6(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await fue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Yut={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",lr),t.post("/home",sIr),t.post("/category",iIr),t.post("/detail",aIr),t.post("/play",er),t.post("/search",oIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:f6};var p6=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Jut=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Xut=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),elt="douerpan,zyfb123",cIr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},pue=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(p6(n,e))return n[e];let s=t.config?.tgchannel||{};return p6(s,e)?s[e]:r},Zut=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},m6=t=>pue(t,"url","https://t.me"),mue=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},hue=t=>pue(t,"channelUsername",elt),gue=t=>pue(t,"homeChannelUsername",elt),h6=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},g6=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(p6(e,"channelNameMap"))return Zut(e.channelNameMap);let r=t.config?.tgchannel||{};return p6(r,"channelNameMap")?Zut(r.channelNameMap):cIr},X1=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},uIr=async t=>{await t.db.delete("/tgchannel")};async function yue(t){t.get("/config",async(e,r)=>{let n=await m6(e.server),s=await mue(e.server),i=await hue(e.server),a=await gue(e.server),o=await h6(e.server),c=await g6(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:Jut(i),homeChannelUsername:Jut(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await X1(e.server,"url",e.body.url),await X1(e.server,"count",e.body.count),await X1(e.server,"channelUsername",Xut(e.body.channelUsername).join(",")),await X1(e.server,"homeChannelUsername",Xut(e.body.homeChannelUsername).join(",")),await X1(e.server,"pic",e.body.pic),await X1(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await uIr(e.server),r.send({code:0})})}function lIr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function nlt(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/åç§°[:|:]/)?.[1]||t,t=t.split(`
|
|
`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»]/.test(t)?(t=t.replace(/^[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»][^\)\]\})】》ã€ã€ã€•〗〉﹞]]*[\)\]\})】》ã€ã€ã€•〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»].*$/,"").trim()):t=t.replace(/[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五å…七八ä¹å百åƒä¸‡äº¿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五å…七八ä¹å百åƒä¸‡äº¿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|æœæ¯”)?\s*(高ç 率|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(æœæ¯”视界|æœæ¯”音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|æœæ¯”|高ç 率|ä¸ç 率|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|超高ç 率|EDR|æ ‡ç |Vivid|三维è彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国å—幕|åŒè¯|简ä¸|æ—¥è¯|æ— æŸ|特别版|软å—幕|补链接|MAX|ä¸ç |音效|高ç |å°é…|国è¯|环绕声|è“光原盘|臻享超高清|首æ’|ç‚¹æ˜ |Viu|10B|硬å—幕)\s*/g,"").replace(/\s*内å°[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大å°\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var dIr={"User-Agent":"MoZhao"};function Aue(t){return Si().some(e=>e.validator(t))}function slt(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function Nw(t){return slt(t,Aue)}function y6(t){return slt(t,A6)}function up(t){return[...new Set((t||[]).filter(Boolean))]}function fIr(t){return String(t||"").trim().replace(/&/g,"&").replace(/[\)\]\}>)】》ã€ã€ã€•〗〉﹞]ã€ã€‚,,;ï¼›!?ï¼ï¼Ÿ]+$/g,"")}function pIr(t){let e=String(t||"");return up([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(fIr))}function mIr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(alt(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function xue(t){let e=[],r=pIr(t);for(let n of r)Aue(n)&&e.push(n);return e}function ilt(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)A6(n)&&e.push(n);return e}var alt=t=>/t.me\/.*\/.*/.test(t),A6=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),olt=t=>Si().find(e=>e.validator(t)),clt=(t,e)=>!e||typeof e!="object"?t:e[t]||t,ult=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function bue(t){let e=await he.get(t,{timeout:5e3,headers:dIr});return De(e.data)}async function hIr(t){let e=await bue(t),r=e(".tl_article").text()||e("body").text()||"";return{links:up([...xue(r),...Nw(e("a"))])}}async function llt(t){let e=up((t||[]).filter(A6));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await hIr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return up(r.flat())}async function gIr(t){let e=await bue(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=lIr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(`
|
|
`);let o=e(s).find(".tgme_widget_message_text").text(),c=nlt(o),u=o,l=up([...xue(o),...Nw(e(s).find(".tgme_widget_message_text a")),...Nw(e(s).find(".tgme_widget_message_inline_button"))]),d=up([...y6(e(s).find(".tgme_widget_message_text a")),...y6(e(s).find(".tgme_widget_message_inline_button")),...ilt(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=mIr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function yIr(t){let e=await bue(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=nlt(r),i=up([...xue(r||""),...Nw(e(".tgme_widget_message_text a")),...Nw(e(".tgme_widget_message_inline_button"))]),a=up([...ilt(r||""),...y6(e(".tgme_widget_message_text a")),...y6(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await llt(a),c=up([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function AIr(t,e){return await lr(t,e),{}}async function xIr(t){let e=await gue(t.server),r=await g6(t.server);return{class:ult(e).map(n=>({type_id:n,type_name:clt(n,r)}))}}var tlt={},rlt={},_ue={};async function dlt(t){let e=await m6(t.server),r=await h6(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await gIr(`${e}/s/${n}${s>1?`?before=${rlt[n]}`:""}`);rlt[n]=i[0].messageId,s===1&&(tlt[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=olt(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(_ue[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(tlt[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function bIr(t,e){let r=await m6(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=_ue[i]||"";if(a.length===1&&alt(a[0])){let l=await yIr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(Aue)&&a.some(A6)&&(a=await llt(a));let c=await Xt(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,u.vod_links=c.links),s.push(u)}return{list:s}}async function _Ir(t,e){let r=await mue(t.server),n=await hue(t.server),s=await h6(t.server),i=await g6(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=ult(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>dlt({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",x;g.rawData.panLinks.forEach(A=>{let S=olt(A);S&&(b+=b?`|${S.name}`:S.name),x||(x=S.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||x,vod_remarks:`${b}:${clt(l[m],i)}`}),g.vod_name&&g.vod_id&&(_ue[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var flt={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",AIr),t.post("/home",xIr),t.post("/category",dlt),t.post("/detail",bIr),t.post("/play",er),t.post("/search",_Ir),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var x6=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),EIr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),vIr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),mlt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(x6(n,e))return n[e];let s=t.config?.tgsou||{};return x6(s,e)?s[e]:r},plt=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},Eue=t=>mlt(t,"url","https://tgsou.252035.xyz"),vue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},Sue=t=>mlt(t,"channelUsername",""),Iue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},Cue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(x6(e,"channelNameMap"))r=plt(e.channelNameMap);else{let n=t.config?.tgsou||{};x6(n,"channelNameMap")&&(r=plt(n.channelNameMap))}return r},Ow=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function Tue(t){t.get("/config",async(e,r)=>{let n=await Eue(e.server),s=await vue(e.server),i=await Sue(e.server),a=await Iue(e.server),o=await Cue(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:EIr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Ow(e.server,"url",e.body.url),await Ow(e.server,"count",e.body.count),await Ow(e.server,"channelUsername",vIr(e.body.channelUsername).join(",")),await Ow(e.server,"pic",e.body.pic),await Ow(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var hlt={};async function SIr(t,e){return await lr(t,e),{}}async function IIr(t,e){return{class:[]}}var CIr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function TIr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/åç§°[:|:]/)?.[1]||t,t=t.split(`
|
|
`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»]/.test(t)?(t=t.replace(/^[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»][^\)\]\})】》ã€ã€ã€•〗〉﹞]]*[\)\]\})】》ã€ã€ã€•〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»].*$/,"").trim()):t=t.replace(/[\(\[\{(ã€ã€Šã€Œã€Žã€”〖〈ï¹ï¼»].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五å…七八ä¹å百åƒä¸‡äº¿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五å…七八ä¹å百åƒä¸‡äº¿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|æœæ¯”)?\s*(高ç 率|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(æœæ¯”视界|æœæ¯”音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|æœæ¯”|高ç 率|ä¸ç 率|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|超高ç 率|EDR|æ ‡ç |Vivid|三维è彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国å—幕|åŒè¯|简ä¸|æ—¥è¯|æ— æŸ|特别版|软å—幕|补链接|MAX|ä¸ç |音效|高ç |å°é…|国è¯|环绕声|è“光原盘|臻享超高清|首æ’|ç‚¹æ˜ |Viu|10B|硬å—幕)\s*/g,"").replace(/\s*内å°[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大å°\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function wIr(t,e){return{page:1,pagecount:1,list:[]}}async function RIr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=hlt[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function NIr(t,e){let r=await Eue(t.server),n=await vue(t.server),s=await Sue(t.server),i=await Iue(t.server),a=await Cue(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await he.get(d.toString()),p=new Map;for(let h of f.data.results){let[y,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let x=0;x<b.length&&(!l||x<=u);x++){let[A,S]=b[x].split("$$"),[I,R]=A.split("@"),w=Si().find(N=>N.validator(I));if(w){let N=TIr(S)||o,k=!!R,B=k?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${y}`:w.pic,M=k?B:I;p.has(M)||p.set(M,{links:[],panInfos:[],pic:B,group:y,title:N});let D=p.get(M),L=I?.replace(/\s+/g,"");D.links.includes(L)||(D.links.push(L),D.panInfos.push(w))}}}let m=[];for(let[h,y]of p.entries()){let g=[...new Set(y.panInfos.map(b=>b.name))].join("/");m.push({vod_id:y.links.join("|"),vod_name:y.title,vod_pic:y.pic,vod_remarks:`${g}:${CIr(y.group,a)}`}),y.title&&y.links.length&&(hlt[y.links.join("|")]=y.title)}return{page:1,pagecount:1,list:m}}var glt={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",SIr),t.post("/home",IIr),t.post("/category",wIr),t.post("/detail",RIr),t.post("/play",er),t.post("/search",NIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var ylt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),OIr="http://127.0.0.1:8080",xlt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(ylt(n,e))return n[e];let s=t.config?.tgfilebot||{};return ylt(s,e)?s[e]:r},wue=t=>xlt(t,"url",OIr),Rue=t=>xlt(t,"password",""),Alt=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},kIr=async t=>{await t.db.delete("/tgfilebot")};async function Nue(t){t.get("/config",async(e,r)=>{let n=await wue(e.server),s=await Rue(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await Alt(e.server,"url",e.body.url||""),await Alt(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await kIr(e.server),r.send({code:0})})}var PIr="http://127.0.0.1:8080",_lt="",kw=20,DIr=30;async function BIr(t,e){return{}}function LIr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ss(t){return String(t||"").replace(/\s+/g," ").trim()}function Elt(t){return ss(t).replace(/[$#]/g," ")}function Oue(t){return ss(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function vlt(t){let e=String(t||"").replace(/\r\n/g,`
|
|
`).split(`
|
|
`);for(let r of e){let n=ss(r);if(n&&!/^(主演|类型|制片国家|è¯è¨€|ä¸Šæ˜ æ—¥æœŸ|片长|åˆå|导演|编剧)\s*[::]/.test(Oue(n)))return n}return""}function Slt(t){return String(t||"").replace(/[ï¼-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function MIr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function E6(t){let e=ss(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-9ï¼-ï¼™])(?:第\s*)?([0-9ï¼-ï¼™]{1,4})\s*(?:集|話|è¯|回|期)(?:\D|$)/);return r?"\u7B2C"+Slt(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-ã€\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function blt(t){let e=Slt(ss(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五å…七八ä¹å百åƒä¸‡ä¸¤]{1,8})\s*(?:集|話|è¯|回|期)/);return r?MIr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-ã€\[((]|$)/),r?Number(r[1]):0)}function Ilt(t,e){let r=Oue(vlt(t));if(!r)return{name:"",remark:""};let n=r.match(/^[ã€\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ss(n[1]),remark:E6(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ss(s),remark:E6(e)};let i=s.match(/^(.*?)\s*(第\s*[0-9ï¼-9零〇一二三四五å…七八ä¹å百åƒä¸‡ä¸¤]+\s*(?:集|話|è¯|回|期))(?:\s|$)/);return i?{name:ss(i[1]),remark:ss(i[2]).replace(/\s+/g,"")}:{name:ss(s),remark:E6(e)}}function py(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r<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 kue(t){return encodeURIComponent(JSON.stringify(t||{}))}function my(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function v6(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n<e.length-1;)r/=1024,n++;let s=n===0||r>=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function WIr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function b6(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function Clt(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+`
|
|
`+r).toLowerCase();if(!n.trim())return!1;let i=b6(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=b6(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=b6(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=b6(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function $Ir(t){let e=process.env.TGFILEBOT_URL||await wue(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await Rue(t);return{url:LIr(e)||PIr,password:String(r||"").trim()}}async function Tlt(t,e,r={}){let n=await $Ir(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function I6(t,e,r={},n=3e4){let s=await Tlt(t,e,r),i=await he.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function UIr(t){let e=ss(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function _6(t){return Oue(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!ï¼??ã€/\\|()[\]ã€ã€‘()《》<>〈〉"'“â€â€˜â€™Â·]/g,"").toLowerCase()}function FIr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qIr(t,e){let r=ss(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+FIr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function S6(t){try{return my(t&&t.vod_id)}catch{return{}}}function jIr(t,e){let r=S6(t),n=_6(ss(e).replace(/^#+\s*/,""));if(!n)return 0;let s=_6(r.name||t&&t.vod_name||""),i=_6(vlt(r.text||"")),a=_6(r.text||"");return s===n?100:i===n?98:qIr(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function QIr(t,e){return t.map((r,n)=>{let s=S6(r);return{video:r,index:n,score:jIr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function HIr(t,e){let r=new Set(t.map(n=>{let s=S6(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=S6(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function GIr(t,e=""){let r=Ilt(t?.text||t?.name,t?.name),n=r.name||ss(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ss(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:kue(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||_lt,vod_remarks:i.remark||"",topRightRemarks:v6(t?.size)||""}}function wlt(t){let e=[];for(let r of py(t)){let n=r&&r.channel?r.channel:"",s=py(r&&r.item);for(let i of s)!i||Clt(i)||e.push(GIr(i,n))}return e.sort((r,n)=>{try{return Number(my(n.vod_id).date||0)-Number(my(r.vod_id).date||0)}catch{return 0}}),e}function zIr(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回å¤|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function Rlt(t,e){return`${Elt(t)}$${kue(KIr(e))}`}function KIr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function VIr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function YIr(t){let e=VIr(t);try{let r=my(e.token),n=blt(r.remark||"");if(n>0)return n}catch{}return blt(e.title)}function JIr(t){return t.map((e,r)=>({item:e,index:r,episode:YIr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function Nlt(t,e){let r=Elt(t),n=v6(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function XIr(t){return t&&t.items?py(t.items):t&&t.item?[t]:py(t)}function ZIr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=my(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of py(r)){let i=py(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||Clt(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=Ilt(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||E6(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ss(a.name)||e.remark||e.name;n.add(o),t.push(Rlt(Nlt(f,a.size),d))}}return t}async function eCr(t,e){try{let r=await I6(t.server,"/channels",{},12e3);return{class:py(r.channels).map(s=>{let i=ss(s&&s.id);return i?{type_id:i,type_name:ss(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function tCr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ss(t.body?.id||"all")||"all",s=await I6(t.server,"/latest",{channel:n,page:r,limit:kw}),i=wlt(s.items);return{page:r,pagecount:s.more?r+1:r,limit:kw,total:s.total||i.length,list:i}}async function rCr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=my(s),a=kue(i),o=ss(i.name)||`Telegram ${i.mid||""}`.trim(),c=[Rlt(Nlt(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&zIr(i)){let d=await I6(t.server,"/replies",{cid:i.cid,mid:l,limit:DIr},2e4);ZIr(c,i,XIr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${v6(i.size)}`:"",i.date?`Date: ${WIr(i.date)}`:"",ss(i.text||"")].filter(Boolean).join(`
|
|
`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||_lt,vod_remarks:i.remark||"",topRightRemarks:v6(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:JIr(c).join("#")})}return{list:n}}async function nCr(t,e){let r=my(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await Tlt(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function sCr(t,e){let r=ss(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of UIr(r))try{let a=await I6(t.server,"/search",{keywords:i,page:n,limit:kw},2e4);s=HIr(s,wlt(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=QIr(s,r),{page:n,pagecount:s.length>=kw?n+1:n,limit:kw,total:s.length,list:s}}var Olt={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",BIr),t.post("/home",eCr),t.post("/category",tCr),t.post("/detail",rCr),t.post("/play",nCr),t.post("/search",sCr)}};var Plt=Ce(NI(),1),Pue=Ce(Xn(),1),hy="https://frodo.douban.com",fi={},klt=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function Dlt(t){if(fi.id&&fi.ua)return fi;let e=t.server.prefix+"/device";return fi=await t.server.db.getObjectDefault(e,{}),fi.id?fi.ua||(fi.ua=klt(fi.id),await t.server.db.push(e,fi)):(fi.id=Yh(40).toLowerCase(),fi.ua=klt(fi.id),await t.server.db.push(e,fi)),fi}function gy(t){t+=`&udid=${fi.id}&uuid=${fi.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${fi.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,Plt.default)().unix().toString(),n=Pue.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Pue.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function yy(t,e){return(await fe.get(t,{headers:{"User-Agent":e||fi.ua}})).data}async function iCr(t,e){return await Dlt(t),{}}async function aCr(t,e){let r=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],n={};return n.t1=[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],n.t4=[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function oCr(t,e){await Dlt(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=gy(`${hy}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=gy(`${hy}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let y=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&y.append("sort",l),h.length>0&&y.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${y.toString()}`,x=(await fe.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,A=x&&x.items?x.items:[],S=[];for(let I of A)if(I&&(I.type==="movie"||I.type==="tv")){let R="";if(I.rating&&typeof I.rating.value<"u"){let w=I.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}S.push({vod_id:I.id||"",vod_name:I.title||"",vod_pic:I.pic&&(I.pic.normal||I.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:S}}else if(r=="t3"){let a=gy(`${hy}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await yy(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=gy(`${hy}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await yy(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=gy(`${hy}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await yy(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=gy(`${hy}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await yy(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=gy(`${hy}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await yy(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function cCr(t,e){return{}}async function uCr(t,e){return{}}async function lCr(t,e){return{}}async function dCr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u<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 Blt={meta:{key:"douban",name:"\u300C\u8350\u300D\u8C46\u74E3",type:3,indexs:1},api:async t=>{t.post("/init",iCr),t.post("/home",aCr),t.post("/category",oCr),t.post("/detail",cCr),t.post("/play",uCr),t.post("/search",lCr),t.get("/test",dCr)}};function fCr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function pCr(t,e){return{}}async function mCr(t,e){return"true"}async function hCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await Xt(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=fCr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function gCr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Llt={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",pCr),t.post("/support",mCr),t.post("/detail",hCr),t.post("/play",er),t.get("/test",gCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var T6=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,Due=async t=>T6(t,"url","https://pan.199333.xyz"),Bue=async t=>{let e=await T6(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Lue=async t=>{let e=await T6(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Mue=async t=>{let e=await T6(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},C6=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},yCr=async t=>{await t.db.delete("/pansou")};async function Wue(t){t.get("/config",async(e,r)=>{let n=await Due(e.server),s=await Bue(e.server),i=await Lue(e.server),a=await Mue(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await C6(e.server,"url",e.body.url||""),await C6(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await C6(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await C6(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await yCr(e.server),r.send({code:0})})}var Wlt={},$ue="pansou_group@@@",ACr=5*60*1e3,xCr=30,Z1=new Map,bCr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},_Cr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Ay(t){let e=String(t||"").trim().toLowerCase();return bCr[e]||e}function Mlt(t){return[...new Set((t||[]).map(Ay).filter(Boolean))]}function ECr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${$ue}${n.join("@@@")}`}function $lt(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith($ue)){let n=r.slice($ue.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function Ult(t){let e=Ay(t),r=_Cr[e]||e;return Si().find(n=>n.key===r||Ay(n.key)===e)}function Flt(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function qlt(t,e=null){let r=Ay(t),n=e||Ult(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function Uue(t){return{apiUrl:await Due(t),channels:await Bue(t),plugins:await Lue(t),cloudTypes:await Mue(t)}}function vCr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=Mlt([r]):e.cloudTypes.length>0&&(n.cloud_types=Mlt(e.cloudTypes)),n}function SCr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function ICr(t){let e=Z1.get(t);return e?e.expiresAt<=Date.now()?(Z1.delete(t),null):e.mergedByType:null}function CCr(t){if(!t||typeof t!="object")return"";let e=SCr();for(Z1.set(e,{mergedByType:t,expiresAt:Date.now()+ACr});Z1.size>xCr;){let r=Z1.keys().next().value;Z1.delete(r)}return e}function TCr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function wCr(t){return t?t.replace(/^(åç§°[::])/,"").replace(/\s+/g," ").trim():""}function RCr(t,e,r=""){let n=Ay(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Ay(a)!==n)&&Array.isArray(o))for(let c of o){let u=Flt(c);if(!u)continue;let l=Si().find(y=>y.validator(u));if(!l)continue;let d=qlt(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:wCr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let y=TCr(c.source);y&&!h.sources.includes(y)&&h.sources.push(y)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function NCr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Ay(a);if(!o)continue;let c=Ult(o),u=qlt(o,c);for(let l of i){let d=Flt(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=ECr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function jlt(t,e,r="",n=null){n=n||await Uue(t);let s=vCr(e,n,r);return he.post(`${n.apiUrl}/api/search`,s)}function OCr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(Wlt[e.vod_id]=e.vod_name)})}async function kCr(t,e){return await lr(t,e),{}}async function PCr(t,e){return{class:[]}}async function DCr(t,e){let r=$lt(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?LCr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function BCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if($lt(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=Wlt[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function LCr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await Uue(t.server),o=n?ICr(n):null;if(o||(o=(await jlt(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=RCr(o,s,r);return OCr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function MCr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await Uue(t.server),i=await jlt(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=CCr(a);return{page:1,pagecount:1,list:NCr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Qlt={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",kCr),t.post("/home",PCr),t.post("/category",DCr),t.post("/detail",BCr),t.post("/play",er),t.post("/search",MCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Hlt="https://pinglian.lol";function WCr(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Glt(t){return String(t||"").trim().replace(/\/+$/,"")||Hlt}function zlt(t){return String(t||"").trim()}var que=async(t,e,r)=>{let n=await t.db.getObjectDefault("/pinglian",{});return WCr(n,e)?n[e]:r},jue=async t=>Glt(await que(t,"url",Hlt)),$Cr=async t=>zlt(await que(t,"username","")),UCr=async t=>String(await que(t,"password","")||""),Que=async t=>({url:await jue(t),username:await $Cr(t),password:await UCr(t)}),Fue=async(t,e,r)=>{await t.db.push(`/pinglian/${e}`,r)},FCr=async t=>{await t.db.delete("/pinglian")};async function Hue(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Que(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Fue(e.server,"url",Glt(n.url)),await Fue(e.server,"username",zlt(n.username)),await Fue(e.server,"password",String(n.password||"")),r.send({code:0})}),t.delete("/config",async(e,r)=>{await FCr(e.server),r.send({code:0})})}var Gue="https://pinglian.lol",qCr=25*60*1e3,jCr=5*60*1e3,QCr=30,w6=30,rdt="pinglian_video@@@",R6="pinglian_group@@@",zue="pinglian_link@@@",Klt=[{type_id:"1",type_name:"\u7535\u5F71\u7247",children:[{type_id:"1001",type_name:"\u5267\u60C5\u7247"},{type_id:"1002",type_name:"\u559C\u5267\u7247"},{type_id:"1004",type_name:"\u52A8\u4F5C\u7247"},{type_id:"1007",type_name:"\u6050\u6016\u7247"},{type_id:"1008",type_name:"\u7231\u60C5\u7247"},{type_id:"1011",type_name:"\u52A8\u753B\u7535\u5F71"},{type_id:"1014",type_name:"\u79D1\u5E7B\u7247"},{type_id:"1015",type_name:"\u6218\u4E89\u7247"},{type_id:"1027",type_name:"\u52A8\u753B\u7247"},{type_id:"1024",type_name:"\u7535\u5F71"},{type_id:"1028",type_name:"\u5267\u60C5"},{type_id:"1029",type_name:"\u5267\u60C5,\u60AC\u7591,\u60CA\u609A"},{type_id:"1031",type_name:"\u559C\u5267,\u7231\u60C5"},{type_id:"1032",type_name:"\u6050\u6016"},{type_id:"1033",type_name:"\u79D1\u5E7B,\u60AC\u7591,\u60CA\u609A"},{type_id:"1034",type_name:"\u559C\u5267"},{type_id:"1058",type_name:"\u5267\u60C5,\u72AF\u7F6A"},{type_id:"1059",type_name:"\u5267\u60C5,\u7231\u60C5,\u60CA\u609A"},{type_id:"1060",type_name:"\u5267\u60C5,\u60CA\u609A,\u6218\u4E89"},{type_id:"1036",type_name:"\u5267\u60C5,\u5BB6\u5EAD"},{type_id:"1037",type_name:"\u79D1\u5E7B,\u6050\u6016"},{type_id:"1038",type_name:"\u5267\u60C5,\u60CA\u609A,\u707E\u96BE"},{type_id:"1039",type_name:"\u559C\u5267 / \u52A8\u753B"},{type_id:"1040",type_name:"\u52A8\u4F5C / \u5947\u5E7B"},{type_id:"1041",type_name:"\u60AC\u7591,\u60CA\u609A,\u6050\u6016"},{type_id:"1042",type_name:"\u5267\u60C5,\u8FD0\u52A8"},{type_id:"1043",type_name:"\u559C\u5267,\u52A8\u4F5C,\u7231\u60C5"},{type_id:"1044",type_name:"\u52A8\u4F5C,\u79D1\u5E7B,\u5192\u9669"},{type_id:"1045",type_name:"\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1046",type_name:"\u52A8\u4F5C,\u5947\u5E7B,\u5192\u9669"},{type_id:"1047",type_name:"\u52A8\u4F5C,\u6218\u4E89"},{type_id:"1048",type_name:"\u5267\u60C5,\u4F20\u8BB0"},{type_id:"1049",type_name:"\u559C\u5267,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1050",type_name:"\u5267\u60C5 / \u7231\u60C5"},{type_id:"1051",type_name:"\u60CA\u609A,\u6050\u6016"},{type_id:"1052",type_name:"\u559C\u5267,\u52A8\u4F5C"},{type_id:"1053",type_name:"\u5267\u60C5,\u559C\u5267,\u72AF\u7F6A"},{type_id:"1054",type_name:"\u5267\u60C5,\u60CA\u609A"},{type_id:"1055",type_name:"\u52A8\u6F2B\u7535\u5F71"},{type_id:"1056",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1057",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u79D1\u5E7B"}]},{type_id:"2",type_name:"\u8FDE\u7EED\u5267",children:[{type_id:"1000",type_name:"\u77ED\u5267"},{type_id:"1003",type_name:"\u56FD\u4EA7\u5267"},{type_id:"1009",type_name:"\u6B27\u7F8E\u5267"},{type_id:"1012",type_name:"\u65E5\u672C\u5267"},{type_id:"1013",type_name:"\u97E9\u56FD\u5267"},{type_id:"1016",type_name:"\u6CF0\u56FD\u5267"},{type_id:"1020",type_name:"\u6D77\u5916\u5267"},{type_id:"1022",type_name:"\u9999\u6E2F\u5267"},{type_id:"1023",type_name:"\u53F0\u6E7E\u5267"}]},{type_id:"3",type_name:"\u7EFC\u827A\u7247",children:[{type_id:"1005",type_name:"\u5927\u9646\u7EFC\u827A"},{type_id:"1018",type_name:"\u65E5\u97E9\u7EFC\u827A"},{type_id:"1019",type_name:"\u6B27\u7F8E\u7EFC\u827A"},{type_id:"1021",type_name:"\u6E2F\u53F0\u7EFC\u827A"},{type_id:"1035",type_name:"\u7EFC\u827A"}]},{type_id:"4",type_name:"\u52A8\u6F2B\u7247",children:[{type_id:"1006",type_name:"\u65E5\u97E9\u52A8\u6F2B"},{type_id:"1010",type_name:"\u56FD\u4EA7\u52A8\u6F2B"},{type_id:"1017",type_name:"\u6B27\u7F8E\u52A8\u6F2B"},{type_id:"1025",type_name:"\u6D77\u5916\u52A8\u6F2B"},{type_id:"1026",type_name:"\u6E2F\u53F0\u52A8\u6F2B"},{type_id:"1030",type_name:"\u52A8\u6F2B"}]}],HCr=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"},{n:"\u66F4\u65E9",v:"older"}],GCr=[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],zCr=[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u7CA4\u8BED",v:"\u7CA4\u8BED"},{n:"\u95FD\u5357\u8BED",v:"\u95FD\u5357\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u6CD5\u8BED",v:"\u6CD5\u8BED"},{n:"\u5FB7\u8BED",v:"\u5FB7\u8BED"},{n:"\u4FC4\u8BED",v:"\u4FC4\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"},{n:"\u897F\u73ED\u7259\u8BED",v:"\u897F\u73ED\u7259\u8BED"},{n:"\u8461\u8404\u7259\u8BED",v:"\u8461\u8404\u7259\u8BED"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],KCr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",thunder:"xunlei",guangya:"guangyapan",guangyapan:"guangyapan"},VCr={aliyun:"ali",mobile:"yidong",tianyi:"tianyi",123:"123",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",guangyapan:"guangyapan"},Vue=new Map,e_=new Map,O6={},N6=0,Vlt="";function r_(t){let e=String(t||"").trim().toLowerCase();return KCr[e]||e}function k6(t){let e=r_(t);return VCr[e]||e}function ndt(t){let e=k6(t);return Si().find(r=>r.key===e||r_(r.key)===r_(t))}function YCr(t){return!!ndt(t)}function Yue(t){let e=r_(t),r=ndt(e);return{key:e,localKey:r?.key||k6(e),name:r?.name||e,pic:r?.pic||""}}function Dw(t){(Array.isArray(t)?t:[t]).filter(Boolean).forEach(r=>{let n=String(r).split(";")[0],s=n.indexOf("=");s<=0||(O6[n.slice(0,s)]=n.slice(s+1))})}function Bw(){return Object.entries(O6).map(([t,e])=>`${t}=${e}`).join("; ")}function t_(t,e,r={}){let n=new URL(e,t||Gue);return Object.entries(r).forEach(([s,i])=>{i==null||i===""||n.searchParams.set(s,String(i))}),n.toString()}function Jue(t){return typeof t=="string"&&(t.includes("\u9700\u8981\u767B\u5F55 - \u76D8\u94FE")||t.includes("pages/login.php")||t.includes("../api/login.php"))}async function JCr(t){let e=await Que(t).catch(()=>({username:"",password:""})),r=String(e.username||"").trim(),n=String(e.password||"");if(!r||!n)throw new Error("\u8BF7\u5148\u5728 Web \u540E\u53F0\u586B\u5199\u76D8\u94FE\u8D26\u53F7\u548C\u5BC6\u7801");return{url:e.url||Gue,username:r,password:n,key:`${e.url||Gue}
|
|
${r}
|
|
${n}`}}function XCr(t){Vlt!==t&&(O6={},N6=0,Vlt=t)}async function xy(t,e=!1){let r=await JCr(t);if(XCr(r.key),!e&&N6&&Date.now()-N6<qCr&&Bw())return r;O6={};let n=await fe.get(t_(r.url,"/pages/login.php"),{headers:{"User-Agent":Gt}});Dw(n.headers?.["set-cookie"]);let s=new URLSearchParams({username:r.username,password:r.password,remember:"on"}).toString(),i=await fe.post(t_(r.url,"/api/login.php"),s,{headers:{"User-Agent":Gt,Cookie:Bw(),Referer:t_(r.url,"/pages/login.php"),"Content-Type":"application/x-www-form-urlencoded"}});if(Dw(i.headers?.["set-cookie"]),!i.data?.success)throw new Error(`\u76D8\u94FE\u767B\u5F55\u5931\u8D25: ${i.data?.message||"unknown error"}`);return N6=Date.now(),r}async function Xue(t,e,r={},n=!0){let s=await xy(t.server),i=await fe.get(t_(s.url,e,r),{headers:{"User-Agent":Gt,Cookie:Bw(),Referer:s.url,"X-Requested-With":"XMLHttpRequest","Cache-Control":"no-cache",Pragma:"no-cache"}});return Dw(i.headers?.["set-cookie"]),n&&Jue(i.data)?(await xy(t.server,!0),Xue(t,e,r,!1)):i.data}async function sdt(t,e,r={},n=!0){let s=await xy(t.server),i=await fe.get(t_(s.url,e,r),{headers:{"User-Agent":Gt,Cookie:Bw(),Referer:s.url}});return Dw(i.headers?.["set-cookie"]),n&&Jue(i.data)?(await xy(t.server,!0),sdt(t,e,r,!1)):i.data}async function idt(t,e,r,n=!0){let s=await xy(t.server),i=await fe.post(t_(s.url,e),JSON.stringify(r),{headers:{"User-Agent":Gt,Cookie:Bw(),Referer:s.url,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/json"}});return Dw(i.headers?.["set-cookie"]),n&&Jue(i.data)?(await xy(t.server,!0),idt(t,e,r,!1)):i.data}function on(t){return String(t||"").replace(/\s+/g," ").trim()}function ZCr(t){let e=String(t||"").trim();return e?De(`<div>${e}</div>`)("div").text().replace(/\s+/g," ").trim():""}function adt(t){return on(t).replace(/^(åç§°[::]\s*)/,"").replace(/^🎬\s*/,"").replace(/^ðŸ¾\s*/,"").trim()}function e2r(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function t2r(t){let e=e_.get(t);return e?e.expiresAt<=Date.now()?(e_.delete(t),null):e.data:null}function Ylt(t){if(!t||typeof t!="object"||Array.isArray(t))return"";let e=e2r();for(e_.set(e,{data:t,expiresAt:Date.now()+jCr});e_.size>QCr;){let r=e_.keys().next().value;e_.delete(r)}return e}function odt(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function cdt(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function r2r(t){return odt(rdt,{id:t.vod_id||t.id||"",name:t.vod_name||t.name||"",pic:t.vod_pic||t.pic||"",remarks:t.vod_remarks||t.remarks||"",typeName:t.type_name||t.typeName||"",year:t.vod_year||t.year||"",area:t.vod_area||t.area||""})}function udt(t){return cdt(rdt,t)}function n2r(t,e,r="",n=""){return odt(R6,{cloudType:t,keyword:e,searchToken:r,vodId:n})}function ldt(t){let e=cdt(R6,t);if(e)return e;let r=String(t||"").trim();if(!r.startsWith(R6))return null;let n=r.slice(R6.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||""),vodId:""}}function s2r(t,e=""){let r={token:t.token||"",url:t.url||"",title:t.title||e,password:t.password||"",type:t.type||"",source:t.source||"",time:t.time||""};return`${zue}${Buffer.from(JSON.stringify(r),"utf8").toString("base64url")}`}function i2r(t){let e=String(t||"").trim();if(!e.startsWith(zue))return null;try{return JSON.parse(Buffer.from(e.slice(zue.length),"base64url").toString("utf8"))}catch{return null}}function ddt(t){let e={vod_id:String(t?.vod_id??t?.local_id??""),vod_name:on(t?.vod_name),vod_pic:t?.vod_pic||"",vod_remarks:on(t?.vod_remarks||t?.type_name||""),vod_year:on(t?.vod_year),vod_area:on(t?.vod_area),type_name:on(t?.type_name)};return t?.vod_actor&&(e.vod_actor=on(t.vod_actor)),t?.vod_director&&(e.vod_director=on(t.vod_director)),t?.vod_content&&(e.vod_content=ZCr(t.vod_content)),Vue.set(e.vod_id,{...t,...e}),e}function fdt(t){let e=r2r(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function pdt(t){return{vod_id:String(t?.id||""),vod_name:on(t?.name),vod_pic:t?.pic||"",vod_remarks:on(t?.remarks),vod_year:on(t?.year),vod_area:on(t?.area),type_name:on(t?.typeName)}}function Jlt(){return[{key:"year",name:"",init:"",value:HCr},{key:"area",name:"",init:"",value:GCr},{key:"lang",name:"",init:"",value:zCr}]}function a2r(t){return[{n:"\u5168\u90E8",v:""},...t.children.map(e=>({n:e.type_name,v:e.type_id}))]}async function o2r(t,e){return await lr(t,e),await xy(t.server).catch(r=>console.warn(`\u76D8\u94FE\u521D\u59CB\u5316\u767B\u5F55\u5931\u8D25: ${r.message}`)),{}}async function c2r(t,e){let r=[{type_id:"0",type_name:"\u5168\u90E8"},...Klt.map(s=>({type_id:s.type_id,type_name:s.type_name}))],n={};return n[0]=Jlt(),Klt.forEach(s=>{n[s.type_id]=[{key:"class",name:"",init:"",value:a2r(s)},...Jlt()]}),{class:r,filters:n}}async function mdt(t,e){let r=await Xue(t,"/api/get_videos.php",e);return!r||r.code!==1||!Array.isArray(r.list)?{page:Number(e.pg||1),pagecount:1,total:0,list:[]}:r}async function u2r(t,e){let r=t.body?.id||t.body?.type_id||t.body?.categoryId,n=udt(r);if(n?.id&&n?.name)return l2r(t,pdt(n));let s=ldt(r);if(s?.cloudType&&s?.keyword)return f2r(t,s);let i=String(t.body?.id??"0"),a=Number.parseInt(t.body?.page||"1",10)||1,o=a===0?1:a,c=t.body?.filters||{},u=String(c.class||c.tid||i||"0"),l=await mdt(t,{pg:o,t:u,year:c.year||"",area:c.area||"",lang:c.lang||""}),d=(l.list||[]).map(ddt);return{page:Number(l.page||o),pagecount:Number(l.pagecount||o),limit:30,total:Number(l.total||d.length),list:d.map(fdt)}}async function Kue(t,e,r=""){let n=await Xue(t,"/api/search_pan_links.php",{keyword:e,vod_id:r,_t:Date.now()});return!n?.success||!n.data||Array.isArray(n.data)?{}:n.data}function Xlt(t){let e=k6(t),r=Array.isArray(globalThis.Pans)?globalThis.Pans.findIndex(s=>s.key===e):-1;if(r>=0)return r;let n=Si().findIndex(s=>s.key===e);return n>=0?n:999}function hdt(t,e=""){return(t||[]).map(r=>({...r||{},type:r?.type||e})).filter(r=>YCr(r?.type))}function Zlt(t,e,r=""){let n=on(e?.vod_name||e?.name),s=String(e?.vod_id||e?.id||"");return Object.entries(t||{}).map(([i,a])=>{let o=hdt(a?.links,i);if(o.length===0)return null;let c=Yue(i),u=n2r(c.key||i,n,r,s);return{vod_id:u,vod_name:a?.name||c.name||i,vod_pic:c.pic||"",vod_remarks:`${o.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:c.key,cate:{id:u,name:a?.name||c.name||i}}}).filter(Boolean).sort((i,a)=>Xlt(i.panType)-Xlt(a.panType))}async function l2r(t,e){let r=on(e?.vod_name),n=String(e?.vod_id||"");if(!r)return{page:1,pagecount:1,list:[]};let s=await Kue(t,r,n),i=Ylt(s),a=Zlt(s,e,i);return a.length===0&&n&&(s=await Kue(t,r,""),i=Ylt(s),a=Zlt(s,{...e,vod_id:""},i)),{page:1,pagecount:1,list:a}}function d2r(t,e){let r=r_(e);return Object.entries(t||{}).find(([n])=>r_(n)===r)?.[1]||null}function gdt(t){let e=[];t?.source&&e.push(t.source);let r=String(t?.time||"").trim();return r&&!r.startsWith("0001-01-01")&&e.push(r.replace("T"," ").replace(/Z$/,"")),t?.password&&e.push(`\u7801:${t.password}`),e.join(" / ")}async function f2r(t,e){let r=Number.parseInt(t.body?.page||"1",10)||1,n=r===0?1:r,s=on(e?.keyword),i=e?.cloudType||"",a=e?.searchToken||"",o=e?.vodId||"",u=(a?t2r(a):null)||await Kue(t,s,o),l=d2r(u,i),d=hdt(l?.links||[],i),f=Math.max(1,Math.ceil(d.length/w6)),p=(n-1)*w6,m=n<=f?d.slice(p,p+w6):[],h=Yue(i);return{page:n,pagecount:f,limit:w6,total:d.length,list:m.map(y=>({vod_id:s2r({...y,type:y.type||i},s),vod_name:adt(y.title||s),vod_pic:h.pic||"",vod_remarks:gdt(y)||h.name,type_name:l?.name||h.name}))}}async function p2r(t,e){let r=on(t.body?.wd),n=Number.parseInt(t.body?.page||"1",10)||1,s=n===0?1:n;if(!r)return{page:s,pagecount:1,list:[]};let i=await mdt(t,{pg:s,t:0,wd:r}),a=(i.list||[]).map(ddt);return{page:Number(i.page||s),pagecount:Number(i.pagecount||s),total:Number(i.total||a.length),list:a.map(fdt)}}function m2r(t){if(!t)return"";try{return JSON.parse(`"${t}"`)}catch{return t.replace(/\\\//g,"/").replace(/\\n/g,`
|
|
`).replace(/\\r/g,"\r").replace(/\\t/g," ")}}function Pw(t,e){let r=String(t||"").match(new RegExp(`${e}:\\s*"((?:\\\\.|[^"\\\\])*)"`));return r?m2r(r[1]):""}function h2r(t){let e=t("script").map((r,n)=>t(n).html()||"").get().find(r=>r.includes("window.PXZ_VIDEO_DATA"))||"";return{vodName:Pw(e,"vodName"),vodPic:Pw(e,"vodPic"),typeName:Pw(e,"typeName"),vodRemarks:Pw(e,"vodRemarks"),vodScore:Pw(e,"vodScore")}}function edt(t,e){let r="";return t(".premium-meta-grid .meta-item").each((n,s)=>{on(t(s).find(".m-label").text())===e&&(r=on(t(s).find(".m-val").text()))}),r}function g2r(){Array.isArray(globalThis.Pans)||(globalThis.Pans=Si().map(t=>({key:t.key,name:t.name,pic:t.pic,enable:!0})))}function y2r(t,e,r){let n=String(r||"").trim();if(!t||!n)return t;let s=k6(e);if(s==="tianyi")return`${t} \u8BBF\u95EE\u7801:${n}`;if(!["baidu","123","115"].includes(s))return t;try{let i=new URL(t);if(s==="115")return`${i.origin}${i.pathname}?password=${encodeURIComponent(n)}`;let a="pwd";return i.searchParams.has(a)||i.searchParams.set(a,n),i.toString()}catch{return t}}function ydt(t){return/^(https?:\/\/|magnet:\?|ed2k:\/\/|thunder:\/\/)/i.test(String(t||"").trim())}async function A2r(t,e){let r=on(t?.url);if(!r&&ydt(t?.token)&&(r=on(t.token)),!r&&t?.token){let n=await idt(e,"/api/resolve_token.php",{token:t.token});r=on(n?.url)}return y2r(r,t?.type,t?.password)}async function tdt(t,e){if(!t||t.length===0)return null;let n=(await Promise.all(t.map(async s=>{try{return await A2r(s,e)}catch(i){return console.warn(`\u76D8\u94FE\u89E3\u6790\u94FE\u63A5\u5931\u8D25: ${i.message}`),""}}))).filter(s=>s&&Si().some(i=>i.validator(s)));return n.length===0?null:(g2r(),await Xt(n,e))}async function x2r(t,e){let r=await sdt(t,"/pages/video.php",{id:e}),n=De(r),s=h2r(n),i=n(".premium-title").first().clone().children().remove().end().text().trim(),a=on(n(".title-year").first().text()).replace(/[()()]/g,""),o={vod_id:String(e),vod_name:i||s.vodName||on(n("title").text()).replace(/\s*-\s*盘链$/,""),vod_pic:n(".detail-poster img").first().attr("src")||s.vodPic||"",vod_year:a,vod_area:on(n(".premium-tags-top .p-tag.area").first().text()),type_name:on(n(".premium-tags-top .p-tag.type").first().text())||s.typeName,vod_remarks:on(n(".premium-tags-top .p-tag.quality").first().text())||s.vodRemarks,vod_director:edt(n,"\u5BFC\u6F14"),vod_actor:edt(n,"\u4E3B\u6F14"),vod_content:on(n(".premium-plot p").first().text())};return Vue.set(o.vod_id,o),o}async function b2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||"").trim(),a=i2r(i);if(a){let u=Yue(a.type),l={vod_id:i,vod_name:adt(a.title||u.name),vod_pic:u.pic||"",vod_remarks:gdt(a),type_name:u.name},d=await tdt([a],t);d?.froms&&d?.urls&&(l.vod_play_from=d.froms,l.vod_play_url=d.urls,l.vod_links=d.links),n.push(l);continue}let o=udt(i);if(o?.id){n.push(pdt(o));continue}if(ldt(i))continue;if(ydt(i)){let u={vod_id:i,vod_name:i,vod_content:""},l=await tdt([{url:i,type:""}],t);l?.froms&&l?.urls&&(u.vod_play_from=l.froms,u.vod_play_url=l.urls,u.vod_links=l.links),n.push(u);continue}let c=Vue.get(i);if(c?.vod_play_from&&c?.vod_play_url){n.push(c);continue}n.push(await x2r(t,i))}return{list:n}}async function _2r(t,e){return await er(t,e)}var Adt={meta:{key:"pinglian",name:"\u300C\u76D8\u300D\u76D8\u94FE",type:3},api:async t=>{t.post("/init",o2r),t.post("/home",c2r),t.post("/category",u2r),t.post("/detail",b2r),t.post("/play",_2r),t.post("/search",p2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:jue};var s_="https://www.juhebd.com",xdt="https://res.juhebd.com",Zue=24,E2r=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;ã€))\]}】]+/gi,bdt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"acg",type_name:"\u52A8\u6F2B"}];function n_(t){return String(t||"").replace(/\s+/g," ").trim()}function _dt(t){let e=n_(t),r=e.match(/《([^》]+)》(.+)?$/);return r?{name:n_(r[1]),remarks:n_(r[2]||"").replace(/^[.。\-_\s]+/,"")}:{name:e,remarks:""}}function ele(t,e=s_){return t?new URL(t,e).toString():""}function v2r(t){return String(t||"").match(/\/([A-Za-z0-9]+)$/)?.[1]||""||String(t||"").split("/").filter(Boolean).pop()||""}async function Lw(t,e={}){let r;for(let n=0;n<3;n++)try{return(await fe.get(t,{headers:{"User-Agent":Gt,Referer:s_,...e.headers}})).data}catch(s){r=s,await new Promise(i=>setTimeout(i,300*(n+1)))}throw r}function Edt(t){let e=De(t),r=[],n=new Set;return e(".list-item a[href]").each((s,i)=>{let a=e(i),o=a.attr("href")||"";if(!/^\/(mv|tv|acg)\/[A-Za-z0-9]+/.test(o))return;let c=ele(o);if(n.has(c))return;n.add(c);let u=_dt(a.attr("title")||a.text());r.push({vod_id:c,vod_name:u.name,vod_pic:"",vod_remarks:u.remarks||n_(a.closest(".list-item").find(".list-douban, .time, .pull-right").first().text())})}),{$:e,list:r}}function vdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/-{5}(\d+)/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function S2r(t){let e=new Set,r=typeof t=="string"?t:JSON.stringify(t||"");for(let n of r.match(E2r)||[])e.add(n.replace(/&/g,"&"));return[...e]}function I2r(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function C2r(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,I2r(e))}async function T2r(t,e){return await lr(t,e),{}}async function w2r(t,e){return{class:bdt}}async function R2r(t,e){let r=String(t.body.id||bdt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=`${s_}/${r}/index-----${n}`,i=await Lw(s),{$:a,list:o}=Edt(i);return{page:n,pagecount:vdt(a,n),limit:Zue,total:o.length,list:o}}async function N2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=ele(s),a=await Lw(i),o=De(a),c=v2r(i),u=_dt(o("h3").first().clone().children().remove().end().text()||o("title").text().replace(/ - BD影视分享.*/,"")),l={vod_id:i,vod_name:u.name,vod_pic:ele(o(".film-poster").first().attr("src")||o('meta[property="og:image"]').attr("content")||"",i),vod_content:n_(o('meta[name="description"]').attr("content")||o("#description, .content, body").text()),vod_remarks:u.remarks},f=(await Lw(`${xdt}/r?${encodeURIComponent(c)}`,{headers:{Referer:i}})).match(/\/api\/rl[^"']*id=([^"'&]+)/)?.[1]||c,p=await Lw(`${s_}/api/rl?id=${encodeURIComponent(f)}`,{headers:{Referer:`${xdt}/r?${c}`}}),m=typeof p=="string"?JSON.parse(p):p,h=[];m?.data&&(h=JSON.parse(Buffer.from(m.data,"base64").toString("utf8")));let y=S2r(h);await C2r(l,y,t),!l.vod_content&&y.length&&(l.vod_content=`\u5171\u53D1\u73B0${y.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(l)}return{list:n}}async function O2r(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function k2r(t,e){let r=n_(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:Zue,total:0,list:[]};let s=n===1?`${s_}/q/?k=${encodeURIComponent(r)}`:`${s_}/q/index-----${n}?k=${encodeURIComponent(r)}`,i=await Lw(s),{$:a,list:o}=Edt(i);return{page:n,pagecount:vdt(a,n),limit:Zue,total:o.length,list:o}}var Sdt={meta:{key:"bdjuhe",name:"\u300C\u76D8\u300D\u7EFC\u5408",type:3},api:async t=>{t.post("/init",T2r),t.post("/home",w2r),t.post("/category",R2r),t.post("/detail",N2r),t.post("/play",O2r),t.post("/search",k2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var D6="https://1.star2.cn",rle=15,tle=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;ã€))\]}】]+/gi,Idt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"ju",type_name:"\u56FD\u5267"},{type_id:"dj",type_name:"\u77ED\u5267"},{type_id:"zy",type_name:"\u7EFC\u827A"},{type_id:"rh",type_name:"\u97E9\u65E5"},{type_id:"ym",type_name:"\u82F1\u7F8E"},{type_id:"wj",type_name:"\u5916\u5267"},{type_id:"dm",type_name:"\u52A8\u6F2B"}];function Mw(t){return String(t||"").replace(/\s+/g," ").trim()}function Cdt(t){return Mw(t).replace(/^ã€[^】]+】\s*/,"")}function P6(t,e=D6){return t?new URL(t,e).toString():""}async function nle(t){let e;for(let r=0;r<3;r++)try{return(await fe.get(t,{headers:{"User-Agent":Gt,Referer:D6}})).data}catch(n){e=n,await new Promise(s=>setTimeout(s,300*(r+1)))}throw e}function Tdt(t){let e=De(t),r=[],n=new Set;return e(".item").each((s,i)=>{let a=e(i),o=a.find('a.main[href], a[href*=".html"]').first(),c=o.attr("href")||"";if(!/^\/[a-z]+\/\d+\.html$/.test(c))return;let u=P6(c);n.has(u)||(n.add(u),r.push({vod_id:u,vod_name:Cdt(o.text()),vod_pic:P6(a.find("img").attr("data-src")||a.find("img").attr("src")||""),vod_remarks:Mw(a.find(".time").text())}))}),{$:e,list:r}}function wdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/_([0-9]+)\/$/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function P2r(t){let e=new Set;t("a[href]").each((r,n)=>{let s=(t(n).attr("href")||"").replace(/&/g,"&");tle.test(s)&&e.add(s),tle.lastIndex=0});for(let r of t.html().match(tle)||[])e.add(r.replace(/&/g,"&"));return[...e]}function D2r(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function B2r(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,D2r(e))}async function L2r(t,e){return await lr(t,e),{}}async function M2r(t,e){return{class:Idt}}async function W2r(t,e){let r=String(t.body.id||Idt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await nle(`${D6}/${r}_${n}/`),{$:i,list:a}=Tdt(s);return{page:n,pagecount:wdt(i,n),limit:rle,total:a.length,list:a}}async function $2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=P6(s),a=await nle(i),o=De(a),c=Cdt(o("h1, .article-title, .title").first().text()||o("title").text().replace(/-剧é€ç¤¾.*/,"")),u={vod_id:i,vod_name:c,vod_pic:P6(o('meta[property="og:image"]').attr("content")||o(".content img, article img").first().attr("src")||""),vod_content:Mw(o(".entry-content, .article-content, .content").first().text())||Mw(o('meta[name="description"]').attr("content")||"")},l=P2r(o);await B2r(u,l,t),!u.vod_content&&l.length&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function U2r(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function F2r(t,e){let r=Mw(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:rle,total:0,list:[]};let s=await nle(`${D6}/search.html?keyword=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`),{$:i,list:a}=Tdt(s);return{page:n,pagecount:wdt(i,n),limit:rle,total:a.length,list:a}}var Rdt={meta:{key:"shuangxing",name:"\u300C\u76D8\u300D\u53CC\u661F",type:3},api:async t=>{t.post("/init",L2r),t.post("/home",M2r),t.post("/category",W2r),t.post("/detail",$2r),t.post("/play",U2r),t.post("/search",F2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Odt=Ce(require("node:http"),1),xm=Ce(require("node:crypto"),1),_y="http://qkys.qukanwh.com",kdt="2d590b9842d064a1",q2r="09a8dc51639a31801af5f6418caebfabc695eb24",ale="okhttp/4.12.0",od=40,j2r=30*60*1e3,Q2r="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCoYt0BP77U+DM08BiI/QbSRIfxijXo85BTPqIM1Ow8BNwhLETzRIZ+dEwdWDbydG/PspgBAfRpGaYVdJYtvaC2JnoO8+Ik6qMWojfEJxSFLa0Pb0A892tun4gsxoEMjcreZ+YGyaBxAfqX0BSMfdrOgIYaZQjYrw9TRLlUT31QoQIDAQAB",H2r="MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCquQQ5r6+yJI8CDFkXRp8vUsdD45ov8EP12ooLs56ca2DQXaSNGS9910bAPVA9chkp0mKIvKqjAsHz5Tl9EeNPblarGEeJUIxpxZtiSqNTpvtiD/TjhpzuHYic7RAfQ/h7p/ypE8ymU42pYjsB5t26Mv6XgkLV+jzrSf73HlCuS0iMyLmt6zz3Mw9izM13EpB8iFLtfbbYymycKTx4RAmPQLwhNGex/AlUIYxXP4R2yyaa4W6mEtc6aME2QuzJFxPgP3HJ9NBx/LWVn4skxWjZ7zg+VRQRHnjyVaSLu3Z5gN5ITWCyE32qaHJa6WBahZj5jWhRyAG1bQ+xKJa8lBL5AgMBAAECggEAUwv9SjJ0PSwbhNuM2w23kcWquROWhYtTA91zGY4esehqB/IFgb2mpIh8Gje5OKqwIu/8jpd4SiOlRYdUF8sD0DfUYRZGdj2AkFNX6tBz8tVfo6wvbB6naA1lzzBij1L5JO3qsjS3cJFkb+kg2yP66AC2Z+0tpfk8eRhdtshAZwfcd1DEGt1uAvYL1eaUK9HRvpt9lPeGcHERDl2hBd4uyaF0K1O+zF9y59nYbTySWPxRZq3sFEE85xRMlstD7YZi7W2gKvMFRD4/FKmrZ3m7aKJRITtyKOyyPcYmepNv3Qv7kk59Pg38n2WWQ0Ra/bCH3E48YNCnQvZMpitkTfJhoQKBgQDbnROOYTP8OTJ6f/qhoGjxeO3x1VOaOp8l0x7b0SCfoqNGS0Cyiqj72BmJtPMPqSTjn6MmNzqbg1KOdhXyzNozs+i5ccW1M56j96mr5I/Z0FpE3oyIHNfDDBlf9M8YQqEF9oYxniYYft9oapO7cRQkHER6qpvnHTavwlv4m78CXwKBgQDHAjs2YlpKDdI1lcbZJCc7TwtH+Pd2bUki8YXafWNcPhITQHbOZjr310eK1QJC6GJncjkOqbX7yv3ivvTO35FZTQhuA1xEG1P00FG8bE0tHYPIwQHi9y0eA5cieMdo8E6XYria1mw/3fqSQEsfZyJlR32JQIoGAipM8iO1X2nZpwKBgDkMFIhnt5lNQk+P7wsNIDWZtDWdtJnboHuy29E+Abt2A/O+mI/IdRz2hau/1WO8DFkUnszOi+rZshhPlGP90rCbi1igtTrcrdjp/KkqNjPea5R4OwkgdOu1uOG0NheXNzzVTQaWjk7Opjn5dWa7eP/oV+GFb/oZHJuLYVizHGsBAoGADA7rjZEKDYCm4w5PPSr+oY5ZjaPdQrS+gLqHtMRyN82fBMGcMUdqfUfzEstzVqCEDeaS5HuOBlK3bXzKkppjUTjksN3NQmcxgBz7RuJ9DqXCLXDcb2cwuafYCYOt+YLOEEgwDVm+t2P44dG5e46hO+fICH/7nP+WlpD5buz4GfMCgYB57r3g/6hi9WUDnfc7ZAzWMqR0EhJVYKYy+KFEtdIPzhkkIHq5RASe88E9kzoGoZFdb3tIjvGZWcHerirrqWkMsuQtP/Qi0zjieid5tAPj+r4kbiCVTw0E0jnmPBzGInQi7lpeTTKnG1fbyS5lBS+WmHfIuzpECgCkxhaT+LJJkg==",G2r=xm.default.createPublicKey({key:Buffer.from(Q2r,"base64"),format:"der",type:"spki"}),Pdt=xm.default.createPrivateKey({key:Buffer.from(H2r,"base64"),format:"der",type:"pkcs8"}),Ndt=Math.ceil((Pdt.asymmetricKeyDetails?.modulusLength||2048)/8),a_=he.create({timeout:18e3,proxy:!1,httpAgent:new Odt.default.Agent({keepAlive:!0}),validateStatus:t=>t>=200&&t<500}),cd={userId:"",token:"",tokenAt:0};function z2r(t){return xm.default.createHash("md5").update(String(t)).digest("hex").toUpperCase()}function Ddt(t){return Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}function Bdt(t){return JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"))}function is(t){return String(t??"").trim()}function by(t){return Array.isArray(t)?t:[]}function sle(t){return xm.default.publicEncrypt({key:G2r,padding:xm.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t),"utf8")).toString("base64")}function K2r(t){let e=0;for(;e<t.length&&t[e]===0;)e++;if(t[e]===2){let r=t.indexOf(0,e+1);if(r>=0)return t.subarray(r+1)}return t}function V2r(t){let e=Buffer.from(String(t||""),"base64"),r=[];for(let n=0;n<e.length;n+=Ndt){let s=xm.default.privateDecrypt({key:Pdt,padding:xm.default.constants.RSA_NO_PADDING},e.subarray(n,n+Ndt));r.push(K2r(s))}return Buffer.concat(r).toString("utf8")}function o_(t={}){return{"User-Agent":ale,Connection:"Keep-Alive","Accept-Encoding":"gzip","Content-Type":"application/json;charset=UTF-8","Cache-Control":"no-cache",token:cd.token||"",deviceId:kdt,client:"app",deviceType:"Android",...t}}function Y2r({episodeId:t="",episodeIndex:e="",id:r="",playerId:n="",typeId:s="",userId:i=""}){return`episodeId${t}episodeIndex${e}id${r}playerId${n}source0typeId${s}userId${i}`}function J2r(t,e){let r=`SaltLSFBTimestamp${t}Params${e}ClientappDeviceId${kdt}`;return z2r(Buffer.from(r,"utf8").toString("base64"))}function X2r(t,e){let r=JSON.stringify(t),n=String(Math.floor(Date.now()/1e3));return[{...o_(),snjm:sle("113"),appsign:sle(q2r),timestamp:n,sign:J2r(n,e)},{key:sle(r)}]}async function lp(t=!1){if(!t&&cd.token&&Date.now()-cd.tokenAt<j2r)return;let r=(await a_.get(`${_y}/api/v1/app/user/visitorInfo`,{headers:o_({token:""})})).data?.data;if(!r?.id||!r?.token)throw new Error("\u5C71\u6942\u5F71\u89C6\u6E38\u5BA2\u767B\u5F55\u5931\u8D25");cd.userId=String(r.id),cd.token=String(r.token),cd.tokenAt=Date.now()}async function i_(t,e=null){await lp();let r=await a_.post(`${_y}${t}`,e==null?"":JSON.stringify(e),{headers:o_()});return r.status===401||r.status===403||r.data?.code===401?(await lp(!0),(await a_.post(`${_y}${t}`,e==null?"":JSON.stringify(e),{headers:o_()})).data||{}):r.data||{}}async function Z2r(t,e={}){await lp();let r=await a_.get(`${_y}${t}`,{params:e,headers:o_()});return r.status===401||r.status===403||r.data?.code===401?(await lp(!0),(await a_.get(`${_y}${t}`,{params:e,headers:o_()})).data||{}):r.data||{}}async function ole(t){await lp();let e=Y2r({episodeId:t.episodeId||"",episodeIndex:t.episodeIndex||"",id:String(t.id||""),playerId:t.playerId||"",typeId:t.typeId||"",userId:String(t.userId||"")}),[r,n]=X2r(t,e),s=await a_.post(`${_y}/api/v1/app/play/movieDetails`,JSON.stringify(n),{headers:r});if(s.status===401||s.status===403||s.data?.code===401)return await lp(!0),ole({...t,userId:cd.userId});if(!s.data?.data)throw new Error(`\u5C71\u6942\u5F71\u89C6\u8BE6\u60C5\u4E3A\u7A7A: ${JSON.stringify(s.data).slice(0,120)}`);return JSON.parse(V2r(s.data.data))}function cle(t={}){let e=String(t.id||""),r=String(t.typeId||"M16");return{vod_id:Ddt({id:e,typeId:r}),vod_name:is(t.name),vod_pic:is(t.cover),vod_remarks:is(t.remarks||t.area||t.year),vod_year:is(t.year),vod_area:is(t.area),vod_content:is(t.desc)}}function eTr(t){try{let e=Bdt(t);return{id:String(e.id||""),typeId:String(e.typeId||"M16")}}catch{return{id:String(t||""),typeId:"M16"}}}async function tTr(){return await lp(!0),{}}async function rTr(){let t=await i_("/api/v1/app/screen/screenType"),e=by(t.data).map(n=>({type_id:String(n.id||""),type_name:is(n.name)})).filter(n=>n.type_id&&n.type_name),r=[];try{let n=await i_("/api/v1/app/recommend/recommendList"),s=by(n.data).slice(0,5);r=(await Promise.all(s.map(a=>i_("/api/v1/app/recommend/recommendSubList",{condition:a.id,pageNum:1,pageSize:6}).catch(()=>({}))))).flatMap(a=>by(a.data?.records).map(cle)).slice(0,24)}catch{}return{class:e,filters:{},list:r}}async function nTr(t){let e=String(t.body?.id||""),r=Math.max(parseInt(t.body?.page||1)||1,1),i=(await i_("/api/v1/app/screen/screenMovie",{condition:{classify:"",region:"",sreecnTypeEnum:"NEWEST",typeId:e,year:""},pageNum:r,pageSize:od})).data||{},a=by(i.records).map(cle),o=parseInt(i.total||i.totalRow||0)||r*od+(a.length>=od?od:0);return{list:a,page:r,pagecount:o?Math.ceil(o/od):r+(a.length>=od?1:0),limit:od,total:o}}async function sTr(t){let e=Math.max(parseInt(t.body?.page||t.body?.pg||1)||1,1),r=t.body?.wd||t.body?.key||t.body?.keyword||"",s=(await i_("/api/v1/app/search/searchMovie",{condition:{value:String(r)},pageNum:e,pageSize:od})).data||{},i=by(s.records).map(cle),a=parseInt(s.total||0)||i.length;return{list:i,page:e,pagecount:a?Math.ceil(a/od):e,limit:od,total:a}}function ile(t){return Ddt(t)}async function iTr(t){let e=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id||t.body?.ids||"",{id:r,typeId:n}=eTr(e);await lp();let s={id:r,source:0,typeId:n,userId:cd.userId,episodeId:"",episodeIndex:"",playerId:""},i=await ole(s),a=String(i.playerId||""),o=by(i.moviePlayerList),c=by(i.episodeList),u=[],l=[];c.length&&(u.push(is(o.find(p=>String(p.id)===a)?.moviePlayerName||"\u9ED8\u8BA4")),l.push(c.map((p,m)=>`${is(p.episode||p.episodeName||p.name||`\u7B2C${p.episodeIndex||m+1}\u96C6`)}$${ile({vid:r,typeId:n,playerId:a,episodeId:String(p.id||""),mode:"episode"})}`).join("#")));for(let p of o){let m=String(p.id||"");if(!m||m===a)continue;let h=parseInt(p.episodeTotal||p.totalEpisode||0)||parseInt(i.totalEpisode||0)||1;if(!h)continue;u.push(is(p.moviePlayerName||`\u7EBF\u8DEF${u.length+1}`));let y=[];for(let g=0;g<Math.min(h,300);g++)y.push(`\u7B2C${g+1}\u96C6$${ile({vid:r,typeId:n,playerId:m,episodeIndex:String(g),mode:"virtual"})}`);l.push(y.join("#"))}l.length||(u.push("\u9ED8\u8BA4"),l.push(`\u64AD\u653E$${ile({vid:r,typeId:n,playerId:a,episodeId:"",mode:"episode"})}`));let d={};try{d=(await i_("/api/v1/app/play/movieDesc",{id:r,typeId:n})).data||{}}catch{}return{list:[{vod_id:e,vod_name:is(d.name||i.name),vod_pic:is(d.cover||i.cover),vod_content:is(d.introduce||d.desc||i.desc),vod_year:is(d.year||i.year),vod_area:is(d.area||i.area),vod_remarks:is(d.remarks||i.currentEpisode||i.remarks),vod_score:is(d.score),type_name:is(d.classify),vod_director:is(d.director),vod_actor:is(d.star),vod_play_from:u.join("$$$")||"\u9ED8\u8BA4",vod_play_url:l.join("$$$")}]}}function aTr(t){let e=String(t||"").toLowerCase();return!e||/\.(m3u8|mp4|flv|m4v|mov|ts)(\?|#|$)/.test(e)?!1:/https?:\/\/(?:[^/]+\.)?(v\.qq\.com|youku\.com|iqiyi\.com|mgtv\.com|bilibili\.com)\//.test(e)}async function oTr(t){try{let e=Bdt(t.body?.id||"");await lp();let r=e.mode==="virtual"?{episodeIndex:String(e.episodeIndex||"0"),id:String(e.vid),playerId:String(e.playerId||""),source:0,typeId:String(e.typeId||"M16"),userId:cd.userId,episodeId:""}:{episodeId:String(e.episodeId||""),id:String(e.vid),playerId:String(e.playerId||""),source:0,typeId:String(e.typeId||"M16"),userId:cd.userId,episodeIndex:""},n=await ole(r),s=is(n.url),i=String(n.playerId||e.playerId||""),a=await Z2r("/api/v1/app/play/analysisMovieUrl",{playerUrl:s,playerId:i}),o=is(a.data||s),c=aTr(o);return{jx:c?1:0,parse:c?1:0,url:o,playUrl:"",header:{"User-Agent":c?ale:"Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"}}}catch(e){return{jx:0,parse:0,url:"",msg:e.message,header:{"User-Agent":ale}}}}var Ldt={meta:{key:"shanzha",name:"\u300C\u76F4\u300D\u5C71\u6942",type:3},api:async t=>{t.post("/init",tTr),t.post("/home",rTr),t.post("/category",nTr),t.post("/detail",iTr),t.post("/play",oTr),t.post("/search",sTr)},check:()=>_y};var Ww=Ce(require("node:crypto"),1);var $dt="\u6A58\u6C41",cTr="https://123-1349250429.cos.ap-shanghai.myqcloud.com/app.txt",lle="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCr8SzZhjYy+rsya1K09t8d2K50pWFoBkgUqMpKOiW+3IEVKd4eTdvg9RSOjQ82kypL6R9BnsmrS1V8s4PVDwjQbUtYhTPPC9Hz16qY7rpD6m0d2vr09/UpWQ5uOy9PR0QTrsioveZ+DIe9jc3C+zBCu/kZSY/R8stwJoiitki3gwIDAQAB",uTr="DGVQRUX5R1LWWDLHTGJSUKG1DJRVPQ==",lTr="OC1A06E197EF10CF3F6058CA7A803B5E",dTr="com.lxf.snzlcgtzxyx",Mdt="3.0.2.1",B6="ed5fdsgucxumegqa",c_="okhttp/3.12.1",u_=21,Wdt="1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Udt=/^(?:https?:)?\/\/.*\.(?:mp4|m3u8|flv|mkv|avi|ts|mov|mpd|m4a|wmv)(?:\?.*)?$/i,Go={host:"",hostExpireAt:0,runtimePublicKey:"",runtimeKeyExpireAt:0};function l_(t){let e="";for(let r=0;r<t-1;r+=1)e+=Wdt[Math.floor(Math.random()*Wdt.length)];return`${e}=`}function fTr(t,e){return`aes-${Buffer.byteLength(t)*8}-${e.toLowerCase()}`}function L6(t,e,r,n=null){let s=Buffer.from(e),i=Ww.default.createCipheriv(fTr(e,r),s,r==="CBC"?Buffer.from(n):null),a=Buffer.concat([i.update(String(t),"utf8"),i.final()]);return r==="CBC"?a.toString("hex"):a.toString("base64")}function Fdt(t,e){let r=`-----BEGIN PUBLIC KEY-----
|
|
${e}
|
|
-----END PUBLIC KEY-----`;return Ww.default.publicEncrypt({key:r,padding:Ww.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t))).toString("base64")}function qdt(){let t=Ww.default.randomUUID().replaceAll("-","").toUpperCase();return{country:"CN",vName:Mdt,cpuId:"MT6893Z%2FCZA",young:0,facturer:"Xiaomi",pkg:dTr,uuid:t,resolution:"1080x2272",mac:"02%3A00%3A00%3A00%3A00%3A00",abid:"397",model:"M2012K10C",plat:"android",udid:t,dpi:"440",net:"1",lang:"zh",brand:"Redmi",density:"2.75",appName:$dt,cpu:"arm64-v8a",chid:"10000",carrier:"%E8%81%94%E9%80%9A",_vOsCode:30,vOs:"11",v:1,tenantId:"",vApp:Mdt.replaceAll(".",""),device:0,androidID:"7f2b18c0b4a8d93f"}}function pTr(){return JSON.stringify({paramsData:L6(JSON.stringify(qdt()),B6,"CBC",B6)})}function mTr(){let t=qdt(),e=Date.now(),r=l_(16),n=Go.runtimePublicKey||lle,s=Fdt(`${e}${r}${t.vApp||"3019"}`,n),i=L6(`${e}${r}`,lTr,"ECB");return t.sig=s,t.random_str=r,t.timestamp=e,t.sig2=i.slice(0,8),t.sig3=i.slice(8),JSON.stringify({paramsData:L6(JSON.stringify(t),B6,"CBC",B6)})}function hTr(){return{"User-Agent":c_,Accept:"application/json","Content-Type":"application/json; charset=utf-8",publicParams:pTr()}}function jdt(){return{"User-Agent":c_,Accept:"application/x-protobuf","Content-Type":"application/x-protobuf",publicParams:mTr()}}function dle(t){let e=BigInt(t),r=[];for(;e>=0x80n;)r.push(Number(e&0x7fn|0x80n)),e>>=7n;return r.push(Number(e)),Buffer.from(r)}function Qdt(t,e){return dle(t<<3|e)}function bm(t,e){let r=Buffer.from(String(e));return Buffer.concat([Qdt(t,2),dle(r.length),r])}function Hdt(t,e){return Buffer.concat([Qdt(t,0),dle(e)])}function Gdt(t){return Buffer.concat(t.filter(Boolean))}function M6(t){let e=Object.entries(t).filter(([,a])=>a!=null&&String(a)!=="").map(([a,o])=>`${a}=${o}`).join("&"),r=Date.now(),n=l_(8),s=L6(`${e}${r}`,uTr,"ECB"),i=`${n}${s}`;return Gdt([bm(1,i.slice(0,20)),bm(2,i.slice(20)),bm(3,l_(20)),Hdt(4,r),bm(5,n)])}function ule(t,e){let r=0n,n=0n;for(;e.pos<t.length;){let s=t[e.pos++];if(n|=BigInt(s&127)<<r,!(s&128))break;r+=7n}return n<=BigInt(Number.MAX_SAFE_INTEGER)?Number(n):n}function dp(t){let e=Buffer.from(t||[]),r=new Map,n={pos:0},s=(i,a)=>{r.has(i)||r.set(i,[]),r.get(i).push(a)};for(;n.pos<e.length;){let i=ule(e,n),a=Number(i>>3),o=Number(i&7);if(o===0)s(a,ule(e,n));else if(o===1)s(a,e.subarray(n.pos,n.pos+8)),n.pos+=8;else if(o===2){let c=ule(e,n);s(a,e.subarray(n.pos,n.pos+c)),n.pos+=c}else if(o===5)s(a,e.subarray(n.pos,n.pos+4)),n.pos+=4;else throw new Error(`unsupported protobuf wire type: ${o}`)}return r}var Ey=(t,e)=>t.get(e)?.[0],hn=(t,e)=>Ey(t,e)?.toString("utf8")||"",vy=(t,e)=>Number(Ey(t,e)||0);function zdt(t){let e=dp(t),r=vy(e,1),n=hn(e,2),s=Ey(e,3)||Buffer.alloc(0);if(r&&r!==200){let i=new Error(n||`upstream api code ${r}`);throw i.code=r,i}return s}function gTr(t){let e=dp(t);return[2,3,4,5].map(r=>hn(e,r)).join("")}function Kdt(t){let e=dp(t);return{path:hn(e,1),thumbnail:hn(e,2)}}function Ni(t){let e=String(t||"");for(let r=0;r<3;r+=1)e=e.replace(/&/g,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">");return e.trim()}function yTr(t){let e=dp(t),r=Ey(e,2)?Kdt(Ey(e,2)):{};return{vod_id:String(vy(e,3)),vod_name:Ni(hn(e,5)),vod_pic:r.thumbnail||r.path||"",vod_remarks:Ni(hn(e,13)),vod_area:Ni(hn(e,1)),vod_year:String(vy(e,14)||""),vod_actor:Ni(hn(e,12)),vod_director:Ni(hn(e,7)),vod_class:Ni(hn(e,15)),vod_content:Ni(hn(e,4))}}function Vdt(t){return(dp(t).get(1)||[]).map(yTr).filter(r=>r.vod_id&&r.vod_name)}function ATr(t){let e=dp(t);return{id:String(vy(e,1)),title:Ni(hn(e,2)),path:hn(e,4),source:hn(e,9),sourceCn:Ni(hn(e,10))}}function xTr(t){let e=dp(t),r=Ey(e,2)?Kdt(Ey(e,2)):{};return{vod_id:String(vy(e,4)),vod_name:Ni(hn(e,9)),vod_pic:r.path||r.thumbnail||"",type_name:Ni(hn(e,13)),vod_area:Ni(hn(e,1)),vod_year:String(vy(e,18)||""),vod_actor:Ni(hn(e,25)),vod_director:Ni(hn(e,12)),vod_remarks:Ni(hn(e,26)),vod_content:Ni(hn(e,6)||hn(e,7)),videos:(e.get(29)||[]).map(ATr).filter(n=>n.path)}}function bTr(t){let e=dp(t),r={};for(let n of e.get(6)||[]){let s=dp(n),i=hn(s,1);i&&(r[i]=hn(s,2))}return{url:hn(e,1),direct:vy(e,5),headers:r,msg:hn(e,9)}}function _Tr(t){return Udt.test(t.path)?t.path:Buffer.from(JSON.stringify({vodPlayFrom:t.source,playUrl:t.path})).toString("base64")}function ETr(t){try{return JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"))}catch{return null}}function vTr(t){if(!t?.converUrl)return[];let e={};try{e=JSON.parse(t.converUrl)}catch{return[]}return["class","area","lang","year","extend_sort"].filter(r=>typeof e[r]=="string"&&e[r].trim()).map(r=>({key:r,name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...e[r].split(",").map(n=>n.trim()).filter(Boolean).map(n=>({n,v:n}))]}))}async function W6(){if(Go.host&&Date.now()<Go.hostExpireAt)return Go.host;let{data:t}=await he.get(cTr,{headers:{"User-Agent":c_},timeout:15e3}),e=String(t?.domain||"").replace(/\/+$/,"");if(!e)throw new Error("\u6A58\u6C41 app.txt \u672A\u8FD4\u56DE domain");return Go.host=e,Go.hostExpireAt=Date.now()+10*60*1e3,Go.host}async function $6(t,e){let r=await W6();await fle(!1);let n=await he.post(`${r}${t}`,e,{headers:jdt(),responseType:"arraybuffer",timeout:2e4});return zdt(Buffer.from(n.data))}async function STr(t){let e=await W6(),{data:r}=await he.get(`${e}${t}`,{headers:hTr(),timeout:2e4});return r}async function fle(t=!1){if(!t&&Go.runtimePublicKey&&Date.now()<Go.runtimeKeyExpireAt)return Go.runtimePublicKey;let e=await W6(),r=Date.now(),n=l_(16),s=Gdt([Hdt(1,r),bm(2,Fdt(`${r}${n}`,lle)),bm(3,l_(16)),bm(4,n),bm(5,l_(16))]),i=await he.post(`${e}/api/v5/find/app/zone`,s,{headers:jdt(),responseType:"arraybuffer",timeout:2e4});return Go.runtimePublicKey=gTr(zdt(Buffer.from(i.data)))||lle,Go.runtimeKeyExpireAt=Date.now()+30*60*1e3,Go.runtimePublicKey}async function ITr(){try{await fle(!0)}catch(t){console.error("[juzhi] init failed:",t.message)}return{}}async function CTr(){await fle(!1);let t=await STr("/api/v3/drama/getCategory?orderBy=type_id"),e=Array.isArray(t?.data)?t.data:[],r=[],n={};for(let s of e){let i=Ni(s?.name),a=String(s?.id||"");if(!a||!i||i==="\u516C\u544A")continue;r.push({type_id:a,type_name:i});let o=vTr(s);o.length>0&&(n[a]=o)}return{class:r,filters:n}}async function TTr(t){let e=t.body||{},r=String(e.id||e.tid||"").trim(),n=Number(e.page||e.pg||1)||1,s=e.filters||e.extend||{},i={pagesize:String(u_),typeId1:r,page:String(n),vodOrderBy:String(s.extend_sort||""),vodArea:String(s.area||""),vodLang:String(s.lang||""),vodClass:String(s.class||""),vodYear:String(s.year||"")},a=Vdt(await $6("/api/proto/v5/drama/category",M6(i)));return{page:n,pagecount:a.length>=u_?n+1:n,limit:u_,total:a.length,list:a}}async function wTr(t){let e=String(t.body?.id||"").trim();if(!e)return{list:[]};let r=xTr(await $6("/api/proto/v5/drama/getDetail",M6({id:e}))),n=new Map;for(let s of r.videos){let i=s.sourceCn||$dt;n.has(i)||n.set(i,[]),n.get(i).push(`${s.title||n.get(i).length+1}$${_Tr(s)}`)}return delete r.videos,r.vod_play_from=[...n.keys()].join("$$$"),r.vod_play_url=[...n.values()].map(s=>s.join("#")).join("$$$"),{list:[r]}}async function RTr(t){let e=String(t.body?.id||"").trim();if(!e)return{parse:0,jx:0,url:""};if(Udt.test(e))return{parse:0,jx:0,url:e,header:{"User-Agent":c_}};let r=ETr(e);if(!r?.playUrl)return{parse:1,jx:1,url:e,header:{"User-Agent":c_}};let n=await $6("/api/proto/v5/videoUsableUrl",M6(r)),s=bTr(n);return{parse:0,jx:0,url:s.url||r.playUrl,playUrl:"",header:Object.keys(s.headers).length>0?s.headers:{"User-Agent":c_},msg:s.msg||void 0}}async function NTr(t){let e=String(t.body?.wd||t.body?.keyword||"").trim(),r=Number(t.body?.page||t.body?.pg||1)||1;if(!e)return{page:r,pagecount:r,list:[]};let n={searchKeys:e,page:String(r),pagesize:String(u_)},s=Vdt(await $6("/api/proto/v5/drama/search",M6(n)));return{page:r,pagecount:s.length>=u_?r+1:r,limit:u_,total:s.length,list:s}}var Ydt={meta:{key:"juzhi",name:"\u300C\u76F4\u300D\u6A58\u6C41",type:3},api:async t=>{t.post("/init",ITr),t.post("/home",CTr),t.post("/category",TTr),t.post("/detail",wTr),t.post("/play",RTr),t.post("/search",NTr)},check:W6};var nft=Ce(require("node:crypto"),1),sft=Ce(require("node:https"),1),ift=Ce(require("node:zlib"),1),aft=Ce(require("node:net"),1),ld={default:nft.default},OTr={default:sft.default},ple={default:ift.default},kTr={default:aft.default},Fu=ud;(function(t,e){let r=ud,n=t();for(;;)try{if(parseInt("956778PWeEsu")/1+parseInt("1231204uLzOTc")/2+-parseInt("559032vtjhhw")/3+parseInt("3084580ayhZHK")/4+parseInt("4896820tXoJWk")/5+-parseInt("417378dsKyYK")/6*(-parseInt("119cdsdmh")/7)+parseInt("8kHNAQr")/8*(-parseInt("32206833nUafGT")/9)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(F6,-726893*1+-120*9138+-4*-641008);var PTr="====",Jdt=[104,2601+2537*-1,-6609+-6679*-1,189*-31+-208*-6+4777,3737*-1+3*1271+114,168,-2145+52*44,7964+-132*-55+7547*-2,353*-26+7+324*29,-252*-1+3971+-567*7,1*-9659+-2*3943+17796,217,-1761*-1+3*-241+-2*421,-8145+8179*1,-7750+-2*2213+-11*-1111,1698*-1+487*16+-6034,4*-749+6978+-3953,-3254*-1+6365+-9599,103,-5993*1+1*4171+1927],DTr=[3409+67*37+-5754,7*-271+-4*2468+11952,-9460*1+-1*2978+-1811*-7,-1*-9259+2695+-11759,-400+-1*-6186+-1844*3,-1*-617+-3009*1+2426,-9702+2*-1154+12070,-1*-4376+134*-34+-38*-5,59*-95+-1*7329+-4*-3246,-2*-4663+7777+-16986,-1861+-51*-38],BTr=[5283*-1+4528*1+197*5,9615+-8161*-1+-17593,415*1+-1555+1283,-3*3329+1*-914+11064,183],LTr=[1286*1+-1406+159*2,-4424+-1*-4607,9219*1+2496+-11543,208+7*137+-1038,-7154+16*463,504+9769*1+-10170,1303+-2*4877+-3*-2857,-5991*-1+-31*-233+1*-13181,-10*898+1729*5+-429*-1,-356*-15+3*1697+519*-20,-768+-1*3305+-1*-4177,-5947+-362*6+8144,2063+-1829*1],MTr=[["4a1a4b2f203179584b",49],-3658+-767*-10+-4*1003,["6a63742f170a3f4ca2bdac",10*-944+10*412+1348*4],1,["7d4a4f150be9c5f5f9f9d1c49180e3",-4414*2+2113+1362*5],4049*-1+-182+-83*-51,["5451a6e9e7f0ccc3fadcd1a6e8ebfa",11*-213+-1*287+-229*-12],868+4*244+-7*263,["afe9",-463*18+1938+-6537*-1]];function WTr(t){let e=Fu,r={GRfXs:function(i,a){return i(a)},hBBpD:function(i,a){return i||a},OeaSy:function(i,a){return i%a},XjKNO:function(i,a){return i!==a},uBoKa:"base64"},n=r.GRfXs(String,r.hBBpD(t,"")).replace(/\s+/g,""),s=r.OeaSy(n.length,-7499*-1+-3360+-4135);return r.XjKNO(s,1*7274+250*-30+226)&&(n+=PTr.slice(s)),Buffer.from(n,r.uBoKa)}function U6(t){let e=Fu,r={NtHRW:function(n,s){return n(s)},NhCHS:function(n,s){return n||s},NmWHw:"hex"};return Buffer.from(r.NtHRW(String,r.NhCHS(t,"")),r.NmWHw)}function Xdt(t,e){let r=Fu;if({ZAxEj:function(s,i){return s===i}}.ZAxEj(t.length,e))return t;let n=Buffer.alloc(e,"0");return t.copy(n,2*3834+4679*1+-12347,1*6857+55*121+1126*-12,Math.min(t.length,e)),n}function $Tr(t,e){let r=Fu,n={pKMuc:function(s,i){return s&i},KwJJp:function(s,i){return s^i},zVhwT:function(s,i){return s&i},KDrdw:function(s,i){return s+i},Psawy:function(s,i){return s*i}};return n.pKMuc(n.KwJJp(t,n.zVhwT(n.KDrdw(15*219+4027+-7145,n.Psawy(e,33*141+8075+-12709)),-9082+1*2993+2*3172)),6*1546+-5281*-1+1*-14302)}function UTr(t){let e=Fu,r={YGwSU:"hex",ikBYv:function(o,c){return o<c},pnDvx:function(o,c){return o^c},qXnqi:function(o,c){return o&c},jCbJV:function(o,c){return o+c},XpZzF:function(o,c){return o*c},ZkLkd:"utf8"},[n,s]=t,i=Buffer.from(n,r.YGwSU),a=Buffer.alloc(i.length);for(let o=7759*-1+-4673*2+3421*5;r.ikBYv(o,i.length);o++)a[o]=r.pnDvx(i[o],r.qXnqi(r.jCbJV(s,r.XpZzF(o,4160+1136*5+9833*-1)),255));return a.toString(r.ZkLkd)}function ud(t,e){let r=F6();return ud=function(n,s){n=n-(197*-39+7*-655+739*17);let i=r[n];if(ud.zSAUtR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,y,g,b=0;g=d.charAt(b++);~g&&(y=h%4?y*64+g:g,h++%4)?p+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=p.length;h<y;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,y="";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,y+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return y};ud.pAVUwB=l,t=arguments,ud.zSAUtR=!0}let o=r[0],c=n+o,u=t[c];return u?i=u:(ud.WVODCV===void 0&&(ud.WVODCV=!0),i=ud.pAVUwB(i,s),t[c]=i),i},ud(t,e)}function FTr(t){let e=Fu,r={BuqNm:function(s,i){return s%i},IAcTR:function(s,i){return s&i},ARsDC:function(s,i){return s^i},sHMzw:function(s,i){return s&i},vCYwq:function(s,i){return s+i},xfXlN:function(s,i){return s*i}},n=r.BuqNm(t,Jdt.length);return r.IAcTR(r.ARsDC(r.ARsDC(Jdt[n],r.sHMzw(r.vCYwq(13003+349*-37,r.xfXlN(n,-2*72+122*29+-69*49)),-327*7+2226+318)),8813+-8*1091),-456*16+-788+8339)}function gle(t,e){let r=Fu,n={xgXBv:function(s,i){return s<i},oxVPu:function(s,i,a){return s(i,a)},AWyhO:function(s,i){return s&i},hKbkW:function(s,i){return s+i},yQIzu:function(s,i){return s&i},SeFjR:function(s,i){return s===i},Capci:function(s,i){return s&i},mtBAD:function(s,i){return s-i},iqnDm:function(s,i){return s(i)},FnfXN:function(s,i){return s&i},rVrfN:function(s,i){return s-i},JCHWv:function(s,i){return s*i},SJeac:function(s,i){return s&i},EsUkn:function(s,i){return s|i},LxhYH:function(s,i){return s<<i},BnaIc:function(s,i){return s>>>i},rvgxf:function(s,i){return s^i},kEVlz:function(s,i){return s|i},XSydQ:function(s,i){return s&i},oJsnV:function(s,i){return s&i},RcKbj:function(s,i){return s&i},CGqkS:function(s,i){return s|i},cqhuY:function(s,i){return s&i},qaGuy:function(s,i){return s&i},zZeWi:function(s,i){return s&i},wRhvB:function(s,i){return s^i},FsKpU:function(s,i){return s-i},eFcAQ:function(s,i){return s-i},MGbKK:function(s,i){return s===i},jxHsB:function(s,i){return s&i},VBTqL:function(s,i){return s%i},tARXP:function(s,i){return s%i},SnDJJ:function(s,i){return s===i},QiNHU:function(s,i){return s===i},ASapl:"number"};for(let s=1291*-4+-5489+10653*1;n.xgXBv(s,t.length);s++)switch(n.oxVPu($Tr,t[s],s)){case 9866+1*-41+-11*892:e.noise=n.AWyhO(n.hKbkW(n.hKbkW(e.noise||-3*1001+-375+-3378*-1,s),e.i||-107*-89+9783+-7*2758),128520+-2674*-7+-81703);break;case-13*-302+-5283+1390:e.r0=n.yQIzu(e.raw[e.i],560*14+-12*484+-1777);break;case-1*-9814+-56*38+-7652:e.r1=n.SeFjR(e.i,-1*2285+-5217+242*31)?-853+6*-302+2774:n.Capci(e.raw[n.mtBAD(e.i,1031*5+-1*8227+-439*-7)],1162+-1*-8609+39*-244);break;case 3422*-1+-64*-67+831*-1:e.r2=n.iqnDm(FTr,e.i);break;case 36:e.r3=n.FnfXN(n.rVrfN(n.hKbkW(e.r0,16686+-16471*1),n.JCHWv(-767*1+14*695+-1119*8,e.i)),-1*-3299+3422+-6466);break;case-50*39+379*-1+26*91:e.r4=n.SJeac(n.EsUkn(n.LxhYH(e.r3,-11162+-11*-1015),n.BnaIc(e.r3,-43*52+-15*262+51*121)),2*2127+4362+-8361);break;case-5*-1019+-35*-173+-11112:e.r5=n.AWyhO(~n.rvgxf(e.r2,e.r1),2580+-2393*2+-23*-107);break;case 2567+1*8931+-1637*7:e.r6=n.kEVlz(n.XSydQ(e.r5,3978+208*32+-10580),n.oJsnV(n.RcKbj(~e.r5,255),82*109+2*-845+-7047)),e.r7=n.CGqkS(n.RcKbj(n.cqhuY(~e.r4,225*32+-37*-179+-13568),6*-228+4806*-1+6228),n.qaGuy(e.r4,9361+9798*-1+29*22));break;case-823*-1+3*41+-906:e.out[e.i]=n.zZeWi(n.wRhvB(e.r6,e.r7),-9918+-2*-3495+1*3183);break;case-1*8075+5083+3057:e.part=e.parts[n.FsKpU(n.eFcAQ(e.parts.length,-3*2309+-1628*-2+-1*-3672),e.i)]||"";break;case 9647+50*9+-10031*1:e.num=n.oxVPu(parseInt,e.part.replace("0x",""),-737+1046*6+-5529);break;case-2209*1+-2632+4908:n.MGbKK(n.jxHsB(e.i,8461+-2*4519+17*34),6914+2*3217+94*-142)?e.num-=11:n.MGbKK(n.VBTqL(e.i,-509+-257*-14+1543*-2),7800+-3*2600)?e.num-=4:n.MGbKK(n.tARXP(e.i,4354+29*96+-7132),1894*2+-2*3622+-48*-72)?e.num-=-7872+-9*-863+114:n.SnDJJ(n.tARXP(e.i,-1873+-1086*1+4*741),-281*23+-1717+8180)?e.num-=3944*1+31*71+6143*-1:e.num-=-1*1033+-4519+5555;break;case 68:e.out+=String.fromCharCode(n.Capci(e.num,-1*7231+1418+6068));break;case 346*-17+-8387*-1+-2408:{let i=MTr[e.i++];e.out+=n.QiNHU(typeof i,n.ASapl)?n.iqnDm(String,e.args[i]??""):n.iqnDm(UTr,i);break}default:throw new Error("bad vm opcode "+t[s]+":"+s)}return e}function qTr(t){let e=Fu,r={UYiTH:function(i,a){return i<=a},iwuAz:function(i,a){return i(a)},MzhTW:function(i,a){return i<a},jhpbc:function(i,a,o){return i(a,o)}};if(!t||r.UYiTH(t.length,9309+-3361*1+743*-8))return Buffer.alloc(-1693*1+-4076*-1+-1*2383);let n=r.iwuAz(U6,t.slice(1658*-2+1*-949+4269)),s={raw:n,out:Buffer.alloc(n.length),i:0};for(s.i=-298*-3+-7109+6215*1;r.MzhTW(s.i,n.length);s.i++)r.jhpbc(gle,DTr,s);return s.out}function jTr(t){let e=Fu,r={OVsuP:function(i,a){return i(a)},bcYCI:"utf8",tFSSy:function(i,a){return i<a},qNNJV:function(i,a){return i-a},ZNLiL:function(i,a,o){return i(a,o)}},n=r.OVsuP(WTr,t).toString(r.bcYCI),s={parts:n.split("0x"),out:"",i:0};for(s.i=-3982+-22*-181;r.tFSSy(s.i,r.qNNJV(s.parts.length,-6*409+3737*-1+6192));s.i++)r.ZNLiL(gle,BTr,s);return s.out}function QTr(t){let e=Fu,r={LDmDb:function(a,o){return a(o)},Rnqdr:function(a,o){return a||o},TfZEQ:"2423",wNUjB:"2324",IsIxR:function(a,o){return a<o},NzXdf:"Invalid 2423 data: missing 2324 separator",BifcB:function(a,o){return a+o},polBc:function(a,o,c){return a(o,c)},kvJwL:function(a,o,c){return a(o,c)},bACXi:function(a,o){return a(o)}},n=r.LDmDb(String,r.Rnqdr(t,""));if(!n.startsWith(r.TfZEQ))return null;let s=n.split(r.wNUjB);if(r.IsIxR(s.length,-5591*-1+-1670+-3919))throw new Error(r.NzXdf);let i=r.BifcB(s[6049+778*3+-8383].lastIndexOf(r.TfZEQ),4);return{encrypted:r.LDmDb(U6,s[-41*-16+1656+2311*-1].slice(1*739+-7845+11*646,-(-2699+2725*1))),iv:r.polBc(Xdt,r.LDmDb(U6,n.slice(-(-1491+41*37))),-8663+18*-93+10353),key:r.kvJwL(Xdt,r.bACXi(U6,s[9*-889+1042+6959].slice(i)),4220+-4204*1)}}function HTr(t,e,r,n){let s=Fu,i={lUAcQ:function(o,c,u){return o(c,u)}},a={args:[t,e,r,n],out:"",i:0};return i.lUAcQ(gle,LTr,a),a.out}function F6(){let t=["smowW6dcPZK","h8kchGOO","b8kXd8k0AW","rmkWaKFdHq","oNiuoI4","ymoRW57dNmkaW7/dHrhdQmks","EtyOo8oG","WQj7nv3cHW","k18H","cmkEcSk4DW","WP3cJrJdV8kL","zmkXjW","W4SbW5FcNCoh","r8ooW4JdMCkm","j3eukI4","FH7cGmocWPm","WOhdPCklAbK","jLGtW4jC","eNRcN3NdPG","W4/dHdxcGJldK8o5BmoBgqaD","BZe0pCoy","W5y+WOvP","ttKneSoBWRe","agJdLCkWW60uWO/dUa","tIq1jCoA","m8kjg8kkAW","B8oUW6hcQvK","WOrQWQbPBq","ifJcQSkH","mSo3W6xdKSke","tSoRW5hcPGS","gSoUWQi","W5KTWO0","fwNcU2NdNN8","smoEWOq1nG","W5/dNSkGWRyv","ASoaWOiAbq","WOnzoxhcUmo8","BSoGWQi2jG","WOpcMsS","nCkEo8k0Dq","WOnxdq3dSG","hJVdKxFdSG","k8ofWRu5vW","WP4mW5W","WPNcKCo/W6qj","v2JcGCk9W6eDWOpcQK4M","W4JdHtRcHtddK8kTFSoPcamEW60","y8kEvdT6y2WyWOzY","W5T1W47dNCoN","bmopWOegWPy","W4DyWP3dTLWOW57cMCoq","wCoMWOefjq","ECoxv8kMW4VdTYxcL8k6WRfjsa","W5TDzNFdUmo2oquzWO0","yrPbWOTBELBdUCkuWQq","vmoSW43cHGS","WPmoW44","e3WsW6jj","rSkvtd1IyG","C8osWOmhga01mgyh","WOFcVmkKsCkpfhbcW7ZcIq","af3cNhtdNW","bmk0W6hcNWe","hSo2WQi4WOW","cmkqWOf2pa","fSk3WPpdTW","fKCsW5L4","eM5rrCkzW6elbveuectcVX8","utJcHSkPWQ5bWPVdTvT2","W5bOW48ze8kGbWFdR3G","WPpdRmk3cW","W49iWPhcJG","lCofW4qpqGWKn2vx","qcNcJSoGWQW","WOzPW5KZrvD2c2i","pCk6amoNWPe","WPxdISkZuGNdHW","jGZdQa","bqpdRvldQq","EX0Bmmof","kK/cQ8kRWP5V","jmkGlmoMWRW","WQhcNK7dMMe","nmkRd8ou","kSkikcaA","CcTlBNXeqchdSbZcT8o6","WP4uW5pdGW","W4awWRu6yW","WR8AW63dRwO","WQSRWPBdN8kVmG1zWQ/dNSksWRu","rCksowddGG","uSkxEHHG","W7SCWO0uqW","zCoKW7VdJmkWWObe","ggdcUwhdIq","WP7cKmoUW6ei","amktdGuj","W4OBW7JcOSoR","FYtcHLNcRmojW7XOB8oaamkJ","WPjMWQPEvSo9wWy","s8kwWQvEW68","WPfdbJRdOq","WO9IWRTZuG","WQhdUmk0mCkh","d8oSW7JdOmkB","WPNcV8oL","DmoZW4ZcShK","A8oMW4dcLXe","iwWBW7fB","iq7dSeFdHa","jCktamosWPu","DmkJaCkIuq","dCkBbmkOrW","WQFdKmklxZq","DSobW53cO3W","W4K4wey","WRWQW6ZdGK4","z8ooW5ZcPgC","WOXXWRfzzG","waiUW77cR8kL","agVdKmk5W64uWOJcQuvaDG1HlW","dwBdUHRdJG","WOhdJmkgj8kd","wrRcGmodWO4","iSkWW6fRWO7dU8ooo0hcVq","ggLvqSkyW6fOyvOeaJC","WQlcTmozW4uu","FSk0WRXQW47dSa","W7bRW4i","dCkWWPBdUCooW7Lt","W4mcW6ZcKmo4","W43dQCkvWPGe","uSoNW6qRDcNdQtFdV8ktyKBdKG","W5qPWOGLEa","BCkepCo1","dSkLW4NcVqS","fwrAq8kxW6SiqMCUoXxcKW","WQa2W7uG","WPWVW68nWO4","omkilsWC","bSojWOi2WRC","WONdJSkVqq4","W6b0W5/dGSo8","WPTWeq","hmoOW6NcIINcQ3a","WPv5WPvdua","WQ3dT8kDg8km","W40sW5KDkmoW","lSkdhCoZW47dSq","WO8hWPtcVCoB","W70aW5NcHW","W4dcUSocBX3cGCo8e2mk","BSkbk8kHArqjvwNcTW","dCkGWRP4i2S","W4HbW7ZdL8oc","W5FcRCk2gSkAtwDbW67cHW","yCoWW7tcRWy","wtTUF2y","vsVcJCoK","B8kugSkuza","WObjiW","aeGUW79R","l8oUW4q","jSk9W73cRdK","tIKx","WQ7dISkNnmkH","W4u9WPa8qeD3","WOldQmkqFW8","EmouFhTmaCoPm1iRW6P6xa","lCkKW6hcQqS","lSoPWOqvCW","jmkrma","WRuiW5tdTLe","nCkWoSkyv8kqWRfC","amkngSkOzG","W7GUW4ZcJmo/mX1mWQhdLq","lmoRhfip","gmoYWRG","W6ddNSkiWRSZW4u","rXmHW6VcR8k+W5yYc8kg","y8ksp8kM","mxu0emke","B8kjWOzjm8kErg0yW4y","ySohWQGcoa","aCkyWPtdTI3dJc/cUgtcV09ZWPC","qCoMW77cK2W","WOlcMti","pmoJW5/dRCks","DCkstqHQlCo1gSoEtmkLWP/dLW","cwlcKxJdKG","y8kmnmk6qW"];return F6=function(){return t},F6()}var GTr="http://itv666.cc/aowu/config.webp",zTr="AppV6Dxs",KTr="xgsecretcustompasswordsymbol",Zdt=Buffer.from(KTr,"utf8").toString("base64"),eft="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",oft="okhttp/5.2.1",Uw="",f_="",Fw="",cft="",uft="",lft="",dft="",Sy={},mle=null,fft=0;function q6(){return Math.floor(Date.now()+fft).toString()}function pft(t={}){let e=t.date||t.Date;if(!e)return;let r=Date.parse(e);Number.isFinite(r)&&(fft=r-Date.now())}function Iy(t){return encodeURIComponent(String(t??"")).replace(/%20/g,"+")}function d_(t,e){let r=e.toLowerCase();return Object.keys(t||{}).some(n=>n.toLowerCase()===r)}function tft(t){let e=String(t||"").replace(/\s+/g,""),r=e.length%4;return r!==0&&(e+="====".slice(r)),Buffer.from(e,"base64")}function VTr(t){return Buffer.from(String(t||""),"hex")}function hle(t,e,r){let n=ld.default.createDecipheriv("aes-128-cbc",Buffer.from(e),Buffer.from(r));return Buffer.concat([n.update(t),n.final()]).toString("utf8")}function YTr(t,e){let r=ld.default.createDecipheriv("aes-128-ecb",Buffer.from(e),null);return Buffer.concat([r.update(t),r.final()]).toString("utf8")}function JTr(t){let e=String(t||"").replace(/\n/g,"").match(/[A-Za-z0-9]{8}\*\*(.*)/s);return e?Buffer.from(e[1].trim(),"base64").toString("utf8"):t}function XTr(t){let e=QTr(t);return e?hle(e.encrypted,e.key,e.iv):t}function ZTr(t){let e=String(t||"").replace(/(\s|^)\/\/.*$/gm,""),r=e.trim();try{if(r.startsWith("{")||r.startsWith("["))return JSON.stringify(JSON.parse(r))}catch{}return e}function mft(t,e){let r=String(e||"").toLowerCase();return r.includes("gzip")?ple.default.gunzipSync(t):r.includes("deflate")?ple.default.inflateSync(t):r.includes("br")?ple.default.brotliDecompressSync(t):t}function hft(t){let e=Buffer.from(`\r
|
|
\r
|
|
`),r=t.indexOf(e);return r<0?null:{head:t.subarray(0,r).toString("latin1"),body:t.subarray(r+e.length)}}function ewr(t){let e=0,r=[];for(;e<t.length;){let n=t.indexOf(`\r
|
|
`,e,"latin1");if(n<0)break;let s=t.subarray(e,n).toString("latin1").split(";")[0].trim(),i=parseInt(s,16);if(!Number.isFinite(i)||(e=n+2,i===0))break;r.push(t.subarray(e,e+i)),e+=i+2}return Buffer.concat(r)}function twr(t){let e=hft(t);if(!e)throw new Error("bad HTTP response");let r=e.head.split(`\r
|
|
`),n=parseInt((r[0].match(/\s(\d{3})\s/)||[])[1]||"0",10),s={};for(let a of r.slice(1)){let o=a.indexOf(":");if(o<=0)continue;let c=a.slice(0,o).trim().toLowerCase(),u=a.slice(o+1).trim();s[c]=s[c]?`${s[c]}, ${u}`:u}let i=/chunked/i.test(s["transfer-encoding"]||"")?ewr(e.body):e.body;return{status:n,headers:s,body:i}}function rwr(t,e={},r="utf8",n=0){return new Promise((s,i)=>{let a=new URL(t),o=Number(a.port||80),c=kTr.default.createConnection({host:a.hostname,port:o}),u=[],l=!1;function d(p){let m=hft(p);if(!m)return!1;let h=m.head.toLowerCase(),y=h.match(/\r\ncontent-length:\s*(\d+)/i);return y?m.body.length>=parseInt(y[1],10):/\r\ntransfer-encoding:\s*chunked/i.test(h)?m.body.includes(Buffer.from(`0\r
|
|
\r
|
|
`)):!1}function f(){if(l)return;let p=Buffer.concat(u);if(d(p)){l=!0,c.destroy();try{let m=twr(p);if(pft(m.headers||{}),m.status>=300&&m.status<400&&m.headers.location&&n<5){let h=new URL(m.headers.location,t).toString();yle(h,e,r,n+1).then(s,i);return}s(mft(m.body,m.headers["content-encoding"]).toString(r))}catch(m){i(m)}}}c.setTimeout(15e3),c.on("connect",()=>{let p={...e},m=[`GET ${a.pathname}${a.search} HTTP/1.1`],h=d_(p,"User-Agent");for(let[y,g]of Object.entries(p))m.push(`${y}: ${g}`);m.push(`Host: ${a.host}`),d_(p,"Connection")||m.push("Connection: Keep-Alive"),d_(p,"Accept-Encoding")||m.push("Accept-Encoding: gzip"),h||m.push(`User-Agent: ${oft}`),c.write(m.join(`\r
|
|
`)+`\r
|
|
\r
|
|
`)}),c.on("data",p=>{u.push(p),f()}),c.on("timeout",()=>c.destroy(new Error(`timeout GET ${t}`))),c.on("error",p=>{l||i(p)}),c.on("end",f)})}function yle(t,e={},r="utf8",n=0){return new Promise((s,i)=>{let a=new URL(t);if(a.protocol==="http:"){rwr(t,e,r,n).then(s,i);return}let o=OTr.default,c={...e};d_(c,"Accept-Encoding")||(c["Accept-Encoding"]="gzip"),d_(c,"Connection")||(c.Connection="Keep-Alive"),d_(c,"User-Agent")||(c["User-Agent"]=oft);let u=o.request({protocol:a.protocol,hostname:a.hostname,port:a.port||void 0,method:"GET",path:`${a.pathname}${a.search}`,headers:c,timeout:15e3,rejectUnauthorized:!1},l=>{let d=l.headers.location;if(l.statusCode>=300&&l.statusCode<400&&d&&n<5){l.resume();let p=new URL(d,t).toString();yle(p,e,r,n+1).then(s,i);return}let f=[];l.on("data",p=>f.push(p)),l.on("end",()=>{try{pft(l.headers||{});let p=Buffer.concat(f),m=mft(p,l.headers["content-encoding"]);s(m.toString(r))}catch(p){i(p)}})});u.on("timeout",()=>u.destroy(new Error(`timeout GET ${t}`))),u.on("error",i),u.end()})}function p_(t,e={},r="utf8"){return yle(t,e,r)}async function nwr(t,e){let r,n=e.trim();return t.includes("xpgtv.net")?r=hle(Buffer.from(n,"base64"),"XXPGXXPGXXPGXXPG","GPXXGPXXGPXXGPXX"):t.includes("162.14.115.43")?r=hle(VTr(n),"y1u21fuSl329o4Xr","9Amg1OE5L5zYJY01"):t.includes("lotics")?r=YTr(Buffer.from(n,"base64"),"loamen.commmmmmm"):r=XTr(JTr(e).trim()),ZTr(r)}function swr(t,e){let r=JSON.parse(t),n=(Array.isArray(r.sites)?r.sites:[]).find(s=>s&&s.key===e);return!n||n.ext==null?null:typeof n.ext=="string"?n.ext:JSON.stringify(n.ext)}async function iwr(t,e){let r=await p_(t,{"User-Agent":"okhttp/3.12.11",Accept:"*/*","Accept-Encoding":"identity",Connection:"close"},"latin1"),n=await nwr(t,r);return swr(n,e)}function awr(t){return qTr(t)}function owr(t){let e=String(t||"").replace(/\\n/g,`
|
|
`).trim();if(e.includes("-----BEGIN"))return ld.default.createPublicKey(e);let r=e.replace("-----BEGIN PUBLIC KEY-----","").replace("-----END PUBLIC KEY-----","").replace(/\s+/g,"");return ld.default.createPublicKey({key:Buffer.from(r,"base64"),format:"der",type:"spki"})}function cwr(t){let e=String(t||"").replace(/\\n/g,`
|
|
`).trim();if(e.includes("-----BEGIN"))return ld.default.createPrivateKey(e);let r=e.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace("-----BEGIN RSA PRIVATE KEY-----","").replace("-----END RSA PRIVATE KEY-----","").replace(/\s+/g,"");return ld.default.createPrivateKey({key:Buffer.from(r,"base64"),format:"der",type:"pkcs8"})}function $w(t,e){let r=owr(e),n=Buffer.from(String(t),"utf8"),s=Math.ceil((r.asymmetricKeyDetails?.modulusLength||1024)/8)-11,i=[];for(let a=0;a<n.length;a+=s){let o=n.subarray(a,Math.min(a+s,n.length));i.push(ld.default.publicEncrypt({key:r,padding:ld.default.constants.RSA_PKCS1_PADDING},o).toString("base64"))}return i.join("").replace(/\s+/g,"")}function uwr(t){return jTr(t)}function j6(t,e){if(t=String(t??"").trim(),t.startsWith("{")||t.startsWith("["))return t;let r,n=t.indexOf(Zdt);if(n>=0){let o=t.slice(0,n),c=tft(t.slice(n+Zdt.length)).toString("utf8").trim(),u=parseInt(c,10);if(u<0||u>o.length)throw new Error(`bad cutLen=${u}, leftLen=${o.length}`);let l=o.slice(0,u),d=o.slice(u);r=uwr(l)+d}else r=t;let s=tft(r);if(s.length%128!==0)throw new Error(`RSA cipher length is not multiple of 128: ${s.length}`);let i=cwr(e),a=[];for(let o=0;o<s.length;o+=128)a.push(ld.default.privateDecrypt({key:i,padding:ld.default.constants.RSA_PKCS1_PADDING},s.subarray(o,o+128)));return Buffer.concat(a).toString("utf8")}function lwr(t){let e={};try{let r=typeof t=="string"?JSON.parse(t):t||{},n=r.headers&&typeof r.headers=="object"?r.headers:null;if(!n)return e;for(let s of Object.keys(n)){let i=n[s];e[s]=String(i)}e["content-type"]="application/json; charset=utf-8"}catch(r){console.error("getHeader failed:",r.message||r)}return e}function rft(t){return{"User-Agent":t}}function dwr(t){let e=typeof t=="string"?JSON.parse(t):t||{};return e.headers&&typeof e.headers=="object"?{...e.headers,...e}:e}function fwr(t){return String(t||"").split(",").map(e=>e.trim()).filter(Boolean)}function pwr(t,e,r){let n=[],s=new Set;for(let i of r){let a=String(i||"").trim();if(!a)continue;let o=a==="\u5168\u90E8"||a.startsWith("\u5168\u90E8")?{n:"\u5168\u90E8",v:""}:{n:a,v:a},c=o.v===""?"__all__":`${o.n}|${o.v}`;s.has(c)||(s.add(c),n.push(o))}return n.length&&!n.some(i=>i.v==="")&&n.unshift({n:"\u5168\u90E8",v:""}),{key:t,name:"",init:"",value:n}}function mwr(t){return""}function hwr(t){if(!t||!t.trim())return{class:[],filters:{}};let e;try{e=JSON.parse(t)}catch{return{class:[],filters:{}}}let r=Array.isArray(e.data)?e.data:[],n=[],s={};for(let i of r){let a=String(i?.type_id??"").trim(),o=String(i?.type_name??"").trim();if(!a||!o||a==="58")continue;n.push({type_id:a,type_name:o});let c=[],u=i.type_extend&&typeof i.type_extend=="object"?i.type_extend:null;if(!u){s[a]=c;continue}for(let l of["class","area","lang","year"]){let d=fwr(u[l]);d.length&&c.push(pwr(l,mwr(l),d))}c.length&&(s[a]=c)}return{class:n,filters:s}}function gft(t){let e=JSON.parse(t),r=Array.isArray(e.data)?e.data:[],n=[];for(let s of r)n.push({vod_id:String(s.vod_id??""),vod_pic:String(s.vod_pic??""),vod_name:String(s.vod_name??""),vod_remarks:String(s.vod_remarks??"")});return n}function gwr(t,e){return!Array.isArray(t)||!e?null:t.find(r=>r&&r.name===e)||null}async function ywr(t,e){try{let r=await iwr(GTr,zTr),n=awr(r).toString("utf8"),s=JSON.parse(n),i=dwr(s.headers);Uw=s.host,f_=s.ek,Fw=s.dk,cft=s.rsaM5,lft=s.apkLength,dft=s.pkid,Sy=lwr(s.headers),uft=i["build-time"]||i.headers?.["build-time"]||""}catch(r){console.error("WexV6DaShiXiong init failed:",r.message||r)}return{}}async function Awr(t,e){try{let r=q6(),n=$w(r,f_),s=await p_(`${Uw}/v6/nav?csrf=${Iy(n)}&token=`,Sy);return hwr(s)}catch(r){return console.error("WexV6DaShiXiong home failed:",r.message||r),{class:[],filters:{}}}}async function xwr(t,e){try{let r=t.body.filters||{},n=t.body.id||"",s=t.body.page||"1",i=r.cateId==null?n:r.cateId,a=r.area==null?"":r.area,o=r.year==null?"":r.year,c=r.class==null?"":r.class,u=r.lang==null?"":r.lang,l=q6(),d=Iy($w(l,f_)),f=`/v6/video?area=${a}&year=${o}&pg=${s}&csrf=${d}&lang=${u}&class=${Iy(c)}&tid=${i}&order=time&token=`,p=await p_(Uw+f,Sy);return p=j6(p,Fw),{page:parseInt(s,10)||1,pagecount:9999,limit:12,total:999999,list:gft(p)}}catch(r){return console.error("WexV6DaShiXiong category failed:",r.message||r),{page:1,pagecount:1,limit:12,total:0,list:[]}}}async function bwr(t,e){let r="",n="",s="";try{mle=null;let i=t.body.id,a=String(Array.isArray(i)?i[0]:i),o=q6(),c=Iy($w(o,f_)),u=HTr(o,cft,lft,uft);r=u;let l=$w(u,f_),d=Iy(l),f=`${Uw}/v6/video_detail?pkid=${dft}&ck=${d}&csrf=${c}&id=${a}&token=`,p=await p_(f,Sy);n=p,p=j6(p,Fw),s=p;let m=JSON.parse(p);if(!m.data||!m.data.vod_info)throw new Error(`unexpected detail response: ${p.slice(0,500)}`);let h=m.data.vod_info,y={vod_id:String(a),vod_name:h.vod_name||"",vod_year:h.vod_year||"",vod_content:h.vod_content||"",vod_actor:h.vod_actor||"",vod_director:h.vod_director||"",vod_play_from:"",vod_play_url:""},g=Array.isArray(h.vod_url_with_player)?h.vod_url_with_player:[];mle=g;let b=[],x=[];for(let A of g)b.push(String(A.name??"")),x.push(String(A.url??""));return b.length&&(y.vod_play_from=b.join("$$$"),y.vod_play_url=x.join("$$$")),{list:[y]}}catch(i){return console.error("WexV6DaShiXiong detail failed:",i.message||i,"ckdata=",r,"plain=",s.slice(0,500),"raw=",n.slice(0,300),"Header=",Sy),{list:[]}}}async function _wr(t,e){try{let r=t.body.flag||"",n=String(t.body.id||""),s=gwr(mle,r)||{},i=eft;Object.prototype.hasOwnProperty.call(s,"user_agent")&&(i=s.user_agent||eft);let a=s.parse_api||"";if(!a||n.includes("http"))return{url:n,header:rft(i),parse:0};let o=await p_(a+n,Sy);return o=j6(o,Fw),{url:JSON.parse(o).url||"",header:rft(i),parse:0}}catch(r){return console.error("WexV6DaShiXiong play failed:",r.message||r),{url:"",header:{},parse:0}}}async function Ewr(t,e){try{let r=t.body.wd||"",n=t.body.page||"1",s=q6(),i=Iy($w(s,f_)),a=`${Uw}/v6/search?pg=${n}&csrf=${i}&text=${Iy(r)}&tid=0&token=`,o=await p_(a,Sy);return o=j6(o,Fw),{page:parseInt(n,10)||1,pagecount:9999,list:gft(o)}}catch(r){return console.error("WexV6DaShiXiong search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var yft={meta:{key:"dashixiong",name:"\u300C\u76F4\u300D\u5927\u5E08\u5144",type:3},api:async t=>{t.post("/init",ywr),t.post("/home",Awr),t.post("/category",xwr),t.post("/detail",bwr),t.post("/play",_wr),t.post("/search",Ewr)}};var Ty=Ce(require("node:crypto"),1);var Cy="https://yoapp.bytegooty.com/yoapp.php",vwr="https://yoapp.bytegooty.com",wy="yoapp_45a4b99f474dbd78bec9760023749d6524efa4f9",Swr="649ff43aec4f7c9b26d4cd8454c7327f",Iwr="1F83BDCA0957AADDCD3CE53088D60FD228ADC463EBA105495E4EBAE6962B54D6",Cwr="0ef76bb9504ed221a7943892fad460e46f46baff6be593d124836282206c3f02",Twr="49f48cf4f713d712eb4c7631d8927477",xft="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36 Edg/148.0.0.0",H6=12,Ale="",m_="",qw="",Q6=null;function xle(t){return Ty.default.createHash("sha256").update(String(t??""),"utf8").digest("hex")}function wwr(t,e){return Ty.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("hex")}function ble(t,e){return Ty.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"").replace(/[\r\n]/g,"").trim()}function _le(){return Ty.default.randomBytes(16).toString("hex")}function Rwr(){let t=Ty.default.randomUUID().replace(/-/g,"").toLowerCase(),e="0123456789abcdefghijklmnopqrstuvwxyz",r=[3,5,7,11,13,17,19,23],n=0;for(let i=0;i<t.length;i++)i!==1&&(n+=parseInt(t[i],16)*r[i%r.length]);let s=t.slice(0,1)+e[n%e.length]+t.slice(2);return`${s.slice(0,8)}-${s.slice(8,12)}-${s.slice(12,16)}-${s.slice(16,20)}-${s.slice(20)}`}function bft(){let t={"User-Agent":xft};return Ale&&(t.Cookie=Ale),t}function Ele(t,e,r){return{...bft(),"X-Yoapp-Timestamp":String(t||""),"X-Yoapp-Device-Id":String(m_||""),"X-API-TOKEN":wy,"X-Yoapp-Nonce":String(e||""),"X-Yoapp-Sign":String(r||"")}}function _ft(){return xle(wy.trim()+m_.trim().toLowerCase()+Swr)}function Nwr(){let t=qw?qw.trim():_ft();return wwr(t,Iwr.trim().replace(/[:\-\s]/g,""))}function Owr(t){try{return new URL(t).searchParams.get("action")||""}catch{return""}}function kwr(t){try{let e=new URL(t).search?new URL(t).search.slice(1):"";if(!e)return"";let r=[];for(let n of e.split("&")){let s=n.indexOf("="),i=s>0?n.slice(0,s):n,a=s>=0?n.slice(s+1):"",o=i.toLowerCase();o==="token"||o==="sign"||r.push([i,a])}return r.sort((n,s)=>n[0].localeCompare(s[0])).map(([n,s])=>`${n}=${s}`).join("&")}catch{return""}}function vle(t,e,r,n,s=""){let i=new URL(r);return[t,i.pathname,Owr(r),m_,e,n,xle(kwr(r)),xle(s)].join(`
|
|
`)}function jw(t){let e=Ty.default.createDecipheriv("aes-256-cbc",Buffer.from(Cwr,"hex"),Buffer.from(Twr,"hex"));return Buffer.concat([e.update(Buffer.from(String(t||""),"base64")),e.final()]).toString("utf8")}function dd(t,e={}){if(t&&typeof t=="object")return t;try{return JSON.parse(String(t||""))}catch{return e}}async function Pwr(){let e=(await fe.get(vwr,{headers:{"User-Agent":xft}})).headers?.["set-cookie"]||[];return(Array.isArray(e)?e:[e]).filter(Boolean).map(r=>String(r).split(";")[0].trim()).filter(Boolean).join("; ")}async function Qw(t,e=Nwr()){let r=Date.now().toString(),n=_le(),s=ble(e,vle("GET",r,t,n,""));return fe.get(t,{headers:Ele(r,n,s)})}async function Dwr(t,e,r,n=Date.now().toString(),s=_le()){let i=ble(e,vle("POST",n,t,s,r));return fe.post(t,r,{headers:Ele(n,s,i)})}async function Eft(t,e){try{m_=Rwr(),qw="",Ale=await Pwr();let r=_ft(),n=Date.now().toString(),s=_le(),i=`${Cy}?action=app_config`,a=ble(r,vle("GET",n,i,s,""));await fe.get(i,{headers:Ele(n,s,a)});let o=JSON.stringify({device_id:m_,ip:""}),c=await Dwr(`${Cy}?action=device_secret`,r,o,n,s),u=dd(c.data),l=dd(jw(u.data));qw=String(l.device_secret||"")}catch(r){console.error("AnimeFanShu init failed:",r.message||r)}return{}}async function Hw(){m_&&qw||(Q6||(Q6=Eft().finally(()=>{Q6=null})),await Q6)}function Aft(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=String(n??"").trim();if(!s||s==="\u6392\u5E8F"||s==="\u93BA\u6391\u7C2D")continue;let i=s==="\u5168\u90E8"||s.startsWith("\u5168\u90E8")||s==="\u934F\u3129\u5134"?{n:"\u5168\u90E8",v:""}:{n:s,v:s},a=i.v===""?"__all__":`${i.n}\0${i.v}`;r.has(a)||(r.add(a),e.push(i))}return e.length?(e.some(n=>n.v==="")||e.unshift({n:"\u5168\u90E8",v:""}),e):[]}function Bwr(t){let e=dd(t),r=Array.isArray(e.sections)?e.sections:[],n=[],s={};for(let i of r){let a=String(i.type_id??"").trim(),o=String(i.type_name??"").trim();if(!a||!o)continue;n.push({type_id:a,type_name:o});let c=[],u=Aft(i.extend_class_items),l=Aft(i.extend_year_items);u.length&&c.push({key:"class",name:"",init:"",value:u}),l.length&&c.push({key:"year",name:"",init:"",value:l}),c.length&&(s[a]=c)}return{class:n,filters:s}}function vft(t){let e=dd(t),r=[];for(let n of Object.keys(e||{})){if(n==="system_verify")continue;let s=e[n]||{};r.push({vod_id:String(s.vod_id??""),vod_name:String(s.vod_name??""),vod_pic:String(s.vod_pic??""),vod_remarks:String(s.vod_remarks??"")})}return r.filter(n=>n.vod_id&&n.vod_name)}async function Lwr(t,e){await Hw();try{let r=`${Cy}?action=home_sections&token=${wy}&limit=16`,n=await Qw(r);return Bwr(typeof n.data=="string"?n.data:JSON.stringify(n.data||{}))}catch(r){return console.error("AnimeFanShu home failed:",r.message||r),{class:[],filters:{}}}}async function Mwr(t,e){await Hw();try{let r=t.body?.filters||t.body?.extend||{},n=r.cateId==null?t.body?.id||"":r.cateId,s=String(t.body?.page||"1"),i=r.year==null?"":r.year,a=r.class==null?r.type||"":r.class,o=`${Cy}?action=category_videos&token=${wy}&type_id=${n}&page=${s}&page_size=${H6}&year=${i}&class=${encodeURIComponent(a)}&sort=time`,c=await Qw(o),u=jw(dd(c.data).data);return{page:parseInt(s,10)||1,pagecount:9999,limit:H6,total:999999,list:vft(u)}}catch(r){return console.error("AnimeFanShu category failed:",r.message||r),{page:1,pagecount:1,limit:H6,total:0,list:[]}}}async function Wwr(t,e){await Hw();try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||""),s=`${Cy}?action=video_detail&token=${wy}&vod_id=${n}`,i=await Qw(s),a=dd(jw(dd(i.data).data)),o={vod_id:n,vod_name:a.vod_name||"",vod_year:a.vod_year||"",vod_content:a.vod_content||"",vod_actor:a.vod_actor||"",vod_director:a.vod_director||"",vod_play_from:"",vod_play_url:""},c=[],u=[];for(let l of a.play_sources||[]){let d=l.player_name||l.from||"\u9ED8\u8BA4\u7EBF\u8DEF",f=l.from||"",m=(Array.isArray(l.episodes)?l.episodes:[]).map((h,y)=>{let g=h.name||`\u7B2C${y+1}\u96C6`,b=h.episode_id||"";return b?`${g}$${b}|||${f}|||${n}`:""}).filter(Boolean).join("#");m&&(c.push(d),u.push(m))}return o.vod_play_from=c.join("$$$"),o.vod_play_url=u.join("$$$"),{list:[o]}}catch(r){return console.error("AnimeFanShu detail failed:",r.message||r),{list:[]}}}async function $wr(t,e){await Hw();try{let[r,n,s]=String(t.body?.id||"").split("|||"),i=`${Cy}?action=video_play&token=${wy}&vod_id=${s}&source=${n}&episode_index=${r}&episode_id=${r}`,a=await Qw(i);return{url:dd(jw(dd(a.data).data)).play_url||"",header:bft(),parse:0}}catch(r){return console.error("AnimeFanShu play failed:",r.message||r),{url:"",header:{},parse:0}}}async function Uwr(t,e){await Hw();try{let r=t.body?.wd||"",n=String(t.body?.page||"1"),s=`${Cy}?action=search_videos&token=${wy}&keyword=${encodeURIComponent(r)}&page=${n}&page_size=${H6}`,i=await Qw(s),a=jw(dd(i.data).data);return{page:parseInt(n,10)||1,pagecount:9999,list:vft(a)}}catch(r){return console.error("AnimeFanShu search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Sft={meta:{key:"fanshu",name:"\u300C\u76F4\u300D\u756A\u85AF",type:3},api:async t=>{t.post("/init",Eft),t.post("/home",Lwr),t.post("/category",Mwr),t.post("/detail",Wwr),t.post("/play",$wr),t.post("/search",Uwr)}};var Ile=Ce(require("node:crypto"),1);var Ift="https://app.whjzjx.cn",Fwr="https://u.shytkjgs.com/user/v3/account/login",qwr="B@ecf920Od8A4df7",jwr="okhttp/4.10.0",Sle=24,z6="",G6=null;function Qwr(t){return Ile.default.createHash("md5").update(String(t??"")).digest("hex")}function Hwr(t){let e=Ile.default.createCipheriv("aes-128-ecb",Buffer.from(qwr,"utf8"),null);return Buffer.concat([e.update(String(t),"utf8"),e.final()]).toString("base64")}function V6(t={}){let e={"User-Agent":jwr,platform:"1",version_name:"3.9.2"};return z6&&(e.Authorization=z6),{...e,...t}}async function Cft(t,e){try{let r=Date.now(),n={first_install_time:r,last_update_time:r,install_first_open:!0,package_name:"com.jz.xydj",device:Qwr(String(r)),timestamp:r},s=Hwr(JSON.stringify(n)),i=await fe.post(Fwr,s,{headers:V6({"Content-Type":"application/json; charset=utf-8"}),transformRequest:[a=>a]});z6=String(i.data?.data?.token||"")}catch(r){console.error("XingYa init failed:",r.message||r)}return{}}async function Tft(){z6||(G6||(G6=Cft().finally(()=>{G6=null})),await G6)}function zo(t){return String(t??"").replace(/\s+/g," ").trim()}function fp(t){return Array.isArray(t)?t:[]}function wft(t={}){return{vod_id:String(t.id??""),vod_name:zo(t.title),vod_pic:zo(t.cover_url),vod_remarks:t.total?`${t.total}\u96C6`:zo(t.score_str)}}function Gwr(t){let e={};for(let r of fp(t?.list)){let n=String(r.id??"").trim();if(!n)continue;let s=[],i=fp(r.alg_class).map(o=>{let c=zo(o.class_name),u=String(o.id??"").trim();return c==="\u5168\u90E8"||u==="0"?{n:"\u5168\u90E8",v:""}:{n:c,v:u}}).filter(o=>o.n),a=fp(r.first_level_ranking).map(o=>({n:zo(o.name),v:String(o.id??"")})).filter(o=>o.n&&o.v);i.length&&s.push({key:"class",name:"",init:"",value:i}),a.length&&s.push({key:"rank",name:"",init:"1",value:a}),s.length&&(e[n]=s)}return e}async function K6(t,e={}){return await Tft(),(await fe.get(`${Ift}${t}`,{headers:V6(),...e})).data||{}}async function zwr(t,e={}){return await Tft(),(await fe.post(`${Ift}${t}`,e,{headers:V6()})).data||{}}async function Kwr(t,e){try{let n=(await K6("/cloud/v2/theater/classes")).data||{};return{class:fp(n.list).filter(i=>!String(i.show_type||"").includes("Bookstore")).map(i=>({type_id:String(i.id??""),type_name:zo(i.class_name)})).filter(i=>i.type_id&&i.type_name),filters:Gwr(n)}}catch(r){return console.error("XingYa home failed:",r.message||r),{class:[],filters:{}}}}async function Vwr(t,e){try{let r=String(t.body?.id||""),n=Math.max(parseInt(t.body?.page||1,10)||1,1),s=t.body?.filters||t.body?.extend||{},i=[];if(r==="9"){if(n>1)return{page:n,pagecount:1,limit:0,total:0,list:[]};let o=s.rank||"1",c=await K6(`/cloud/v1/first_level_ranking/detail?id=${encodeURIComponent(o)}`);i=fp(c.data?.list)}else{let o=s.class||"0",c=await K6("/cloud/v2/theater/home_page",{params:{theater_class_id:r,class2_ids:o,type:1,page_num:n,page_size:Sle}});i=fp(c.data?.list).map(u=>u.theater||u)}let a=i.map(wft).filter(o=>o.vod_id&&o.vod_name);return{page:n,pagecount:a.length>=Sle?n+1:n,limit:r==="9"?a.length:Sle,total:a.length,list:a}}catch(r){return console.error("XingYa category failed:",r.message||r),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function Ywr(t,e){try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||"");if(!n)return{list:[]};let i=(await K6("/v2/theater_parent/detail",{params:{theater_parent_id:n}})).data||{},a={vod_id:n,vod_name:zo(i.title),vod_pic:zo(i.cover_url),type_name:fp(i.desc_tags).map(zo).filter(Boolean).join(","),vod_content:zo(i.introduction),vod_play_from:"",vod_play_url:""},o=fp(i.theaters).map((c,u)=>{let l=c.num||`\u7B2C${u+1}\u96C6`,d=zo(c.son_video_url);return d?`${l}$${d}`:""}).filter(Boolean).join("#");return o&&(a.vod_play_from="\u661F\u82BD",a.vod_play_url=o),{list:[a]}}catch(r){return console.error("XingYa detail failed:",r.message||r),{list:[]}}}async function Jwr(t,e){return{url:zo(t.body?.id),header:V6(),parse:0}}async function Xwr(t,e){try{let r=zo(t.body?.wd),n=Math.max(parseInt(t.body?.page||1,10)||1,1);if(!r)return{page:n,pagecount:1,list:[]};let s=await zwr("/v3/search",{text:r}),i=fp(s.data?.theater?.search_data).map(wft).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:1,list:i}}catch(r){return console.error("XingYa search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Rft={meta:{key:"xingya",name:"\u300C\u76F4\u300D\u661F\u82BD",type:3},api:async t=>{t.post("/init",Cft),t.post("/home",Kwr),t.post("/category",Vwr),t.post("/detail",Ywr),t.post("/play",Jwr),t.post("/search",Xwr)}};var h_=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Cle=async(t,e)=>{await t.db.push("/live2vod",e)},Zwr=async t=>{await t.db.delete("/live2vod")};async function Tle(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await h_(e.server)})}),t.put("/config",async(e,r)=>{await Cle(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Zwr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await h_(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await h_(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Cle(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await h_(e.server);s.sources&&n>=0&&n<s.sources.length?(s.sources.splice(n,1),await Cle(e.server,s),r.send({code:0})):r.code(404).send({code:1,msg:"\u7D22\u5F15\u65E0\u6548"})})}var Ko={sources:[],def_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"},Gw={},Y6={};async function eRr(t){return(await fe(t,{method:"get",headers:{"User-Agent":"okhttp/3.14.9"},timeout:1e4})).data}function tRr(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 rRr(t){let e=t.split(`
|
|
`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function J6(t){if(Gw[t])return Gw[t];let e=await eRr(t),r;/#EXTM3U/.test(e)?r=tRr(e):r=rRr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Gw[t]=r,r}async function nRr(t,e){let r=await h_(t.server);Ko.sources=r.sources||[],Ko.def_pic=r.def_pic||Ko.def_pic,Object.keys(Gw).forEach(s=>delete Gw[s]),Y6={};let n=Ko.sources.map(async s=>{try{let i=await J6(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),Y6[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),Y6[s.url]=[]}});return await Promise.all(n),{}}async function sRr(t,e){return{class:Ko.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:Y6}}async function iRr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Ko.sources.find(c=>c.url===r)?.img||"";try{let c=await J6(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Ko.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function aRr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Ko.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await J6(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Ko.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let y=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Ko.def_pic,vod_content:`\u9891\u9053: ${c}
|
|
\u5206\u7EC4: ${o}
|
|
\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:y.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Ko.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function oRr(t,e){return{parse:0,url:t.body.id}}async function cRr(t,e){let r=t.body.wd,n=[];for(let s of Ko.sources)try{let i=await J6(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Ko.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function uRr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Nft={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",nRr),t.post("/home",sRr),t.post("/category",iRr),t.post("/detail",aRr),t.post("/play",oRr),t.post("/search",cRr),t.get("/test",uRr)}};var wle=Ce(Xn(),1);var kft=process.env.JINPAI_HOST||"https://m.jiabaide.cn",X6="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",lRr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",dRr={"User-Agent":X6,Referer:`${kft}/`},fRr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},pRr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function mRr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function Pft(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function hRr(t={}){let e=String(Date.now()),r={...t,key:lRr,t:e},n=wle.default.SHA1(wle.default.MD5(Pft(r)).toString()).toString();return{...dRr,t:e,sign:n}}async function g_(t,e={}){let r=Pft(e),n=`${kft}${t}${r?`?${r}`:""}`,s=await fe.get(n,{headers:hRr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Dft(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function gRr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function yRr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function ARr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|è¯|期)?(?:[\s.ã€:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function xRr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|è¯|期)\s*|(\d+)\s*[.ã€:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Bft(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function bRr(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function _Rr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function ERr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find(bRr);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return _Rr(n)||n||"\u64AD\u653E"}function Oft(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=ERr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":X6},priority:Lft({...t,name:n,qualityLabel:r})||1}}function Lft(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:è“å…‰|è—å…‰|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:æµç•…|æµæš¢)/i.test(e)?360:0}function vRr(t=[]){return t.map((e,r)=>({item:e,index:r,score:Lft(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function SRr(){let t=[],e={},r=await g_("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await g_("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(fRr)){let d=c==="serialList"?[...pRr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function IRr(t,e){return{}}async function CRr(t,e){try{let{classes:r,filters:n}=await SRr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function TRr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await g_("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Dft).filter(u=>u.vod_id&&u.vod_name);return Bft(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function wRr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await g_("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=ARr(f.episodeNumber,f.name,p+1),y=xRr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=gRr({vodId:c,nid:m,episodeName:y,sourceName:u,title:o.vodName});return`${y}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:mRr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function RRr(t,e){let r=At(t.body?.id),n=yRr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await g_("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=vRr(o.map(Oft).filter(Boolean)),u={"User-Agent":X6};if(!c.length){let l=Oft(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":X6}}}}async function NRr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await g_("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Dft).filter(c=>c.vod_id&&c.vod_name);return Bft(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Mft={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",IRr),t.post("/home",CRr),t.post("/category",TRr),t.post("/detail",wRr),t.post("/play",RRr),t.post("/search",NRr)}};var _m={host:"https://api.ztcgi.com",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 9; V2196A Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36;webank/h5face;webank/1.0;netType:NETWORK_WIFI;appVersion:416;packageName:com.jp3.xg3",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function ORr(){return[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}]}function Rle(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${_m.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function kRr(t,e){return{}}async function PRr(t,e){return{class:ORr()}}async function DRr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${_m.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await fe.get(i,{headers:_m.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(y=>({vod_id:String(y.id),vod_name:y.title||"",vod_pic:Rle(y.path||""),vod_remarks:y.mask||""})).filter(y=>y.vod_id&&y.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function BRr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${_m.host}/api/video/detailv2?id=${s}`,o=(await fe.get(i,{headers:_m.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Rle(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],y=[];h.forEach((g,b)=>{let x=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,A=g.url||g.play_url||"";A&&y.push(`${x}$${A}`)}),y.length>0&&(l.push(m),d.push(y.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function LRr(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:_m.headers}:{parse:1,url:n}}async function MRr(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${_m.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await fe.get(i,{headers:_m.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Rle(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function WRr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c<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 Wft={meta:{key:"jianpian",name:"\u300C\u76F4\u300D\u8350\u7247",type:3},api:async t=>{t.post("/init",kRr),t.post("/home",PRr),t.post("/category",DRr),t.post("/detail",BRr),t.post("/play",LRr),t.post("/search",MRr),t.get("/test",WRr)}};var y_=Ce(require("node:crypto"),1);var $ft={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},Nle={"User-Agent":"Lavf/57.83.100"},$Rr=`-----BEGIN PRIVATE KEY-----
|
|
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1
|
|
ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU
|
|
1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK
|
|
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-----`,Uft="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",Ole="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Kw={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},URr=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"}],FRr={1:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},zw=new Map,qRr={category:3e5,detail:3e5,play:3e5,search:6e4};function jRr(t){return y_.default.createHash("md5").update(t).digest("hex")}function QRr(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=y_.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function HRr(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=y_.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function GRr(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;s<e.length;s+=r){let i=e.slice(s,s+r),a=y_.default.privateDecrypt({key:$Rr,padding:y_.default.constants.RSA_NO_PADDING},i),o=a.indexOf(0,2);if(o===-1){for(o=0;o<a.length&&a[o]===0;)o+=1;n.push(a.slice(o))}else n.push(a.slice(o+1))}return Buffer.concat(n).toString("utf8").trim()}function zRr(t,e){let r=`token_id=,token=${Ole},phone_type=1,request_key=${t},app_id=1,time=${e},keys=${Uft}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return jRr(r)}function KRr(t){let e=zw.get(t);return e?Date.now()>e.expire?(zw.delete(t),null):e.data:null}function VRr(t,e,r){zw.set(t,{data:e,expire:Date.now()+(qRr[r]||6e4)}),zw.size>200&&zw.clear()}async function Vw(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=KRr(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=QRr(JSON.stringify(t)),a=zRr(i,s),o=new URLSearchParams({token:Ole,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Uft,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await fe.post(`${$ft.host}${e}`,o,{headers:$ft.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=GRr(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=HRr(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&VRr(n,f,r),f}function Fft(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function YRr(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function Z6(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function JRr(t,e){return{}}async function XRr(t,e){return{class:URr,filters:FRr}}async function ZRr(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await Vw({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Kw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>Fft(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function eNr(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await Vw({keywords:r,order_val:"1",page:n},Kw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>Fft(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function tNr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=YRr(i);if(!a)continue;let[o,c]=await Promise.all([Vw({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:Ole},Kw.PLAY_INFO,"detail"),Vw({vurl_cloud_id:"2",vod_d_id:a},Kw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],y=[];if(Object.entries(m).forEach(([x,A])=>{A?.param&&(h.push(String(A.param)),y.push(String(x)))}),!h.length)return;y.sort((x,A)=>Z6(A)-Z6(x));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${y.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function rNr(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:Nle};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:Nle};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>Z6(u)-Z6(c)),s.resolution=i[0]);let a=await Vw(s,Kw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:Nle}}var qft={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",JRr),t.post("/home",XRr),t.post("/category",ZRr),t.post("/detail",tNr),t.post("/play",rNr),t.post("/search",eNr)}};var pp=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),nNr=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Qft=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),Hft=24,sNr=10*60*1e3,iNr=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],aNr={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},fd={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function oNr(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var Ny=oNr(nNr);function Gft(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${pp}${e}`:`${pp}/${e}`:`${pp}${Ny}/`}function Ry(t){return gn(t).replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/gi,"'").replace(/</gi,"<").replace(/>/gi,">").replace(/\s+/g," ").trim()}function zft(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${pp}${e}`:`${pp}/${e}`:""}function cNr(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Kft(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${Ny}/${e}`:`${Ny}/${e.replace(/^\/+/,"")}`:""}async function Yw(t,e={}){let r=Gft(t),n={"User-Agent":Qft,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${pp}${Ny}/`,...e.headers||{}},s=await fe({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Vft(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Kft(c),l=Ry(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=zft(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=Ry(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),cNr(n)}function uNr(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function lNr(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function dNr(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function fNr(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function Ple(t,e=1,r={}){let n=fNr(r),s=n.class,i=n.area,a=n.year,o=aNr[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${Ny}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function pNr(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function kle(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),pNr(n)}function jft(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=kle(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=kle(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=kle(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function mNr(t=!1){if(!t&&fd.expiresAt>Date.now()&&Object.keys(fd.filters).length>0)return{filters:fd.filters,filter_def:fd.filterDef};try{let[e,r]=await Promise.all([Yw(Ple("movie",1,{})),Yw(Ple("tv",1,{}))]);fd.filters={movie:jft(De(e)),tv:jft(De(r))},fd.expiresAt=Date.now()+sNr}catch{if(!Object.keys(fd.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];fd.filters={movie:e,tv:e}}}return{filters:fd.filters,filter_def:fd.filterDef}}async function hNr(t,e){return{}}async function gNr(t,e){let{filters:r}=await mNr();return{class:iNr,filters:r}}async function yNr(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Yw(Ple(r,n,s)),a=De(i),o=Vft(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=Hft&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function ANr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Kft(s);if(!i)continue;let a=await Yw(i),o=De(a),c=Ry(o("h1.product-title").text()),u=Ry(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=zft(o("header.product-header img.thumb").attr("src")||""),f=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=Ry(o(".product-excerpt").filter((S,I)=>o(I).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",y=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=uNr(a),x=(i.match(/(\d+)\.html/)||[])[1]||"",A=b.map((S,I)=>{let R=b.length>1?`\u7B2C${I+1}\u96C6`:gn(S)||"\u6B63\u7247",w=lNr({infoId:g||x,param:S,referer:Gft(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:y,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:A.length?"PPnix":"",vod_play_url:A.join("#")})}catch{continue}return{list:n}}async function xNr(t,e){try{let r=dNr(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${pp}${Ny}/`);return{parse:0,url:`${pp}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:pp,"User-Agent":Qft}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function bNr(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Yw(`${Ny}/search/${s}--.html${i}`),o=De(a),c=Vft(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=Hft?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Yft={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",hNr),t.post("/home",gNr),t.post("/category",yNr),t.post("/detail",ANr),t.post("/play",xNr),t.post("/search",bNr)}};var jn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},Jw=48,_Nr=5*60*1e3,ENr=60,Jft=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),tM={expireAt:0,list:[]},eM=null;function Oy(t){return De(`<div>${String(t||"")}</div>`).text().replace(/\s+/g," ").trim()}function Lle(t=jn.host){return{"User-Agent":jn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Xw(t,e=jn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Mle(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,jn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function vNr(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Xw(e);let r=Mle(e);return r?`${jn.host}/?cat=${encodeURIComponent(r)}`:jn.host}function SNr(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Xw(e,jn.host):""}function INr(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Oy(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:jn.pic,vod_remarks:Oy(t[2]),vod_year:String(t[3]??"").trim(),type_name:Oy(t[4]),vod_actor:Oy(t[5])}}async function Ble(t,e={}){let r=Xw(t,e.base||jn.host),n=await fe({url:r,method:"get",timeout:e.timeout||jn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Lle(e.referer||jn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function CNr(){let t=await fe({url:`${jn.listUrl}?_=${Date.now()}`,method:"get",timeout:jn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Lle(jn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map(INr).filter(Boolean);return tM={expireAt:Date.now()+_Nr,list:r},r}async function rM(){return tM.expireAt>Date.now()&&tM.list.length>0?tM.list:(eM||(eM=CNr().finally(()=>{eM=null})),eM)}function Xft(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function Zft(t,e,r=Jw){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function TNr(t,e){let r=Mle(e);return t.find(n=>n.id===r||n.vod_id===r)}function wNr(t){return Oy(t).replace(/[$#]/g," ").trim()}function RNr(t,e){let r=Oy(t),n=r.match(/\[(.*)\]/);return wNr(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function NNr(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function ONr(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function kNr(t,e,r){let n=De(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:RNr(o,e.length),apiReq:a})})}async function PNr(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;o<ENr&&i;o+=1){n.add(a),kNr(i,r,s);let c=De(i||"");if(o===0&&r.length===0){let l=Xw(c(".cat-links a").first().attr("href"),a);if(l&&!n.has(l)){a=l,i=await Ble(a,{referer:e});continue}}let u=Xw(c(".nav-previous a").first().attr("href"),a);if(!u||n.has(u))break;a=u,i=await Ble(a,{referer:e})}return r.reverse()}function DNr(t){return(Array.isArray(t)?t.join(";"):String(t||"")).split(";").map(r=>r.trim()).filter(r=>["e","p","h"].includes(r.split("=")[0])).join("; ")}function Dle(t,e=jn.host){let r={"User-Agent":jn.ua,Referer:e||jn.host};return t&&(r.Cookie=t),r}async function BNr(t,e){let r=await fe({url:jn.playApi,method:"post",data:`d=${t}`,timeout:jn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Lle(jn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=SNr(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:DNr(r.headers?.["set-cookie"])}}async function LNr(t,e){return{}}async function MNr(t,e){try{let r=Xft(await rM(),"\u9023\u8F09\u4E2D").slice(0,Jw);return{class:Jft,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Jft,filters:{},list:[]}}}async function WNr(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return Zft(Xft(await rM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Jw,total:0}}}async function $Nr(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:Jw,total:0};try{let s=r.toLowerCase(),i=(await rM()).filter(a=>a.vod_name.toLowerCase().includes(s));return Zft(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Jw,total:0}}}async function UNr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await rM().catch(()=>[]);for(let a of n){let o=Mle(a),c=vNr(a);try{let u=await Ble(c),l=De(u||""),d=TNr(i,a),f=Oy(l(".page-title, h1").first().text()),m=(await PNr(u,c)).map(h=>`${h.name}$${NNr({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||jn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function FNr(t,e){let r=String(t.body?.id||"").trim(),n=ONr(r),s=String(n.apiReq||r).trim(),i=n.referer||jn.host;if(!s)return{parse:0,jx:0,url:"",header:Dle("",i)};try{let a=await BNr(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:Dle(a.cookie,jn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:Dle("",i)}}}var ept={meta:{key:jn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",LNr),t.post("/home",MNr),t.post("/category",WNr),t.post("/detail",UNr),t.post("/play",FNr),t.post("/search",$Nr)}};var ky="https://gimy01.tv",npt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",qNr=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"34",type_name:"\u77ED\u5267"},{type_id:"13",type_name:"\u9646\u5267"}],tpt={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Py(t){return String(t||"").replace(/\/+$/,"")}function spt(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Yo(t){let e=spt(t);return Object.keys(tpt).forEach(r=>{e=e.replace(new RegExp(r,"g"),tpt[r])}),e}function jNr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Dy(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Py(ky)+e:Py(ky)+"/"+e.replace(/^\.\//,""):""}function nM(t){return{"User-Agent":npt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Py(ky)+"/"}}function QNr(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:<!doctype\s+html|<html[\s>])/i.test(n))return n}catch{}return e}function HNr(t){return new Promise(e=>setTimeout(e,t))}function GNr(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Zw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await fe(t,{method:e.method||"get",headers:{...nM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return QNr(i.data)}catch(i){if(n=i,s>=r||!GNr(i))throw i;await HNr(300*(s+1))}throw n}function zNr(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function KNr(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function ipt(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function apt(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function opt(t){let e=String(t||"").trim();if(!e)return"";if(apt(e))return e;let r=ipt(e);if(r&&typeof r=="object"){let s=opt(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function cpt(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function VNr(t,e){let r=cpt(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function YNr(t,e,r,n){let s="https://player.gimy.bot/"+VNr(t,e)+"/",i=cpt(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function rpt(t,e=Py(ky)){return{"User-Agent":npt,Referer:t||Py(ky)+"/",Origin:e}}function JNr(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function upt(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Dy(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=Yo(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Dy(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+å…¨\)?|å…¨\d+集|已完çµ|已完结|HDä¸å—|HD|TC|HC|æ¶å…ˆç‰ˆ|抢先版)/i);n[u]=!0,r.push(JNr({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?Yo(m[0]):""}))}),r}function Vo(t,e){let r=new RegExp("<span[^>]*>\\s*"+jNr(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?Yo(n[1]):""}function XNr(t){let e=[],r=[],n=new Set,s=(c,u)=>(Yo(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Dy(m);if(!h||l.has(h))return;l.add(h);let y=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(y+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=Yo(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=Yo(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=Yo(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=Yo(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function ZNr(t,e){return{}}async function eOr(t,e){return{class:qNr}}async function tOr(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Zw(Py(ky)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=De(s),a=upt(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function rOr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Dy(i),o=await Zw(a),c=De(o),u=XNr(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Vo(o,"\u985E\u5225")||Vo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:Yo(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Dy(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:Yo(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Vo(o,"\u72C0\u614B")||Vo(o,"\u72B6\u6001"),type_name:Yo(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Vo(o,"\u5E74\u4EE3")||Vo(o,"\u5E74\u4EFD")||f,vod_area:Vo(o,"\u570B\u5BB6/\u5730\u5340")||Vo(o,"\u56FD\u5BB6/\u5730\u533A")||Vo(o,"\u5730\u5340")||Vo(o,"\u5730\u533A"),vod_actor:Vo(o,"\u4E3B\u6F14")||Yo(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Vo(o,"\u5C0E\u6F14")||Vo(o,"\u5BFC\u6F14")||Yo(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function nOr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Dy(r);try{let s=await Zw(n,{referer:n}),i=zNr(s),a=KNr(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:nM(n)};if(apt(a))return{parse:0,url:a,header:rpt(n)};let c=i?.link_next?Dy(i.link_next):"",u=YNr(a,o,n,c),l=await Zw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=ipt(l),f=opt(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:rpt(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:nM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:nM(n)}}}async function sOr(t,e){let r=spt(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Py(ky)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Zw(s),a=De(i),o=upt(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var lpt={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",ZNr),t.post("/home",eOr),t.post("/category",tOr),t.post("/detail",rOr),t.post("/play",nOr),t.post("/search",sOr)}};var A_="https://www.dbku.tv",iOr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36",aOr=2e4,dpt=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u8FDE\u7EED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"}],oOr={\u7C7B\u578B:"tid",\u5267\u60C5:"class",\u5730\u533A:"area",\u5E74\u4EFD:"year",\u8BED\u8A00:"lang",\u5B57\u6BCD:"letter",\u6392\u5E8F:"by"},cOr={area:1,by:2,class:3,lang:4,letter:5,year:11},sM={expireAt:0,value:null};function x_(t){return String(t||"").replace(/\/+$/,"")}function pi(t=""){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Em(t=""){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?x_(A_)+e:x_(A_)+"/"+e.replace(/^\.\//,""):""}function iM(t){return{"User-Agent":iOr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||x_(A_)+"/"}}async function tR(t,e={}){let r=/^https?:\/\//i.test(t)?t:Em(t),n=await fe(r,{method:e.method||"get",headers:{...iM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||aOr,responseType:"text",transformResponse:[s=>s]});return String(n.data||"")}function uOr(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function lOr(t){let e=String(t||"").match(/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i);if(!e)return null;try{return JSON.parse(e[1])}catch{return null}}function dOr(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function fOr(t,e=1,r={}){let n=new Array(12).fill("");n[0]=String(r.tid||t||"1").trim(),n[1]=String(r.area||"").trim(),n[2]=String(r.by||r.sort||"").trim(),n[3]=String(r.class||"").trim(),n[4]=String(r.lang||"").trim(),n[5]=String(r.letter||"").trim(),n[8]=String(e||1).trim(),n[11]=String(r.year||"").trim();let s=n.map(i=>encodeURIComponent(i)).join("-");return`${x_(A_)}/vodshow/${s}.html`}function pOr(t,e){let r=String(t||"").match(/\/vodshow\/([^/?#]+)\.html/i);if(!r)return"";let n=decodeURIComponent(r[1]).split("-");if(e==="tid")return n[0]||"";let s=cOr[e];return s===void 0?"":n[s]||""}function mOr(t){let e={};return t(".myui-screen__list").each((r,n)=>{let s=pi(t(n).find("li:first a").text()),i=oOr[s];if(!i)return;let a=[];t(n).find("li a").slice(1).each((o,c)=>{let u=pi(t(c).text());if(!u)return;let l=t(c).attr("href")||"",d=o===0?"":pOr(l,i);a.push({n:u,v:d})}),a.length>1&&(e[i]={key:i,name:"",init:"",value:a})}),Object.values(e)}async function hOr(){if(sM.value&&sM.expireAt>Date.now())return sM.value;let t={};return await Promise.all(dpt.map(async e=>{try{let r=await tR(`${x_(A_)}/vodshow/${e.type_id}-----------.html`),n=De(r),s=mOr(n);s.length&&(t[e.type_id]=s)}catch(r){console.error(`dbku filter fetch failed ${e.type_id}:`,r.message)}})),sM={expireAt:Date.now()+6*60*60*1e3,value:t},t}function fpt(t,e){let r=e&&e.length?e:t.root(),n=[],s=new Set;return r.find(".myui-vodlist__box").each((i,a)=>{let o=t(a),c=o.find('a.myui-vodlist__thumb[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=pi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Em(c.attr("data-original")||c.find("img").attr("data-original")||c.find("img").attr("src")||""),vod_remarks:pi(c.find(".pic-text").text())}))}),n.length||r.find(".myui-vodlist__media li").each((i,a)=>{let o=t(a),c=o.find('a[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=pi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Em(o.find("[data-original]").first().attr("data-original")||o.find("img").first().attr("src")||""),vod_remarks:pi(o.find(".pic-text, .pic-tag").first().text())}))}),n}function eR(t,e){let r=t(".myui-content__detail p.data").filter((s,i)=>pi(t(i).text()).includes(`${e}\uFF1A`)).first();if(!r.length)return"";let n=r.clone();return n.find(".text-muted, .split-line").remove(),pi(n.text().replace(new RegExp(`^${e}[\uFF1A:]?`),""))}function gOr(t){let e=[],r=[];if(t('.tab-content [id^="playlist"]').each((n,s)=>{let i=[];t(s).find('a[href*="/vodplay/"]').each((a,o)=>{let c=pi(t(o).text()),u=t(o).attr("href")||"";!c||!u||i.push(`${c}$${Em(u)}`)}),i.length&&(e.push(n===0?"\u72EC\u64AD\u5E93":`\u72EC\u64AD\u5E93${n+1}`),r.push(i.join("#")))}),!r.length){let n=[];t('a[href*="/vodplay/"]').each((s,i)=>{let a=pi(t(i).text()),o=t(i).attr("href")||"";!a||!o||!/第|æ£ç‰‡|HD|全集|期|集/i.test(a)||n.push(`${a}$${Em(o)}`)}),n.length&&(e.push("\u72EC\u64AD\u5E93"),r.push([...new Set(n)].join("#")))}return{playFrom:e.join("$$$"),playUrl:r.join("$$$")}}async function yOr(t,e){return{}}async function AOr(t,e){return{class:dpt,filters:await hOr()}}async function xOr(t,e){let r=String(t.body?.id||"1").trim(),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=t.body?.filters||{},i=fOr(r,n,s),a=await tR(i),o=De(a),c=fpt(o,o("#content-container").first()),u=pi(o(".myui-page").first().text()),l=Number.parseInt(u.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),d=o(".myui-page a").filter((f,p)=>pi(o(p).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:l||(d?n+1:n),limit:48,total:(l||(d?n+1:n))*48,list:c}}async function bOr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=Em(s);if(!i)continue;let a=await tR(i),o=De(a),c=gOr(o);n.push({vod_id:String(s||""),vod_name:pi(o(".myui-content__detail h1.title").first().text()||o("title").text().replace(/线上看[\s\S]*$/i,"")),vod_pic:Em(o(".myui-content__thumb img").first().attr("data-original")||o("meta[property='og:image']").attr("content")||""),type_name:eR(o,"\u5206\u7C7B"),vod_year:eR(o,"\u5E74\u4EFD"),vod_area:eR(o,"\u5730\u533A"),vod_remarks:pi(o('.myui-content__detail .data:contains("\u66F4\u65B0") .text-red').first().text()),vod_actor:eR(o,"\u4E3B\u6F14"),vod_director:eR(o,"\u5BFC\u6F14"),vod_content:pi(o("#desc .data p").first().text()||o("#desc .sketch").first().text()),vod_play_from:c.playFrom,vod_play_url:c.playUrl})}return{list:n}}async function _Or(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=Em(r);try{let s=await tR(n,{referer:n}),i=lOr(s),a=uOr(i);return dOr(a)?{parse:0,url:a,header:iM(n)}:{parse:1,url:a||n,header:iM(n)}}catch(s){return console.error("dbku play failed:",s.message),{parse:1,url:n,header:iM(n)}}}async function EOr(t,e){let r=pi(t.body?.wd||""),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=`${x_(A_)}/vodsearch/-------------.html?wd=${encodeURIComponent(r)}&page=${n}`,i=await tR(s),a=De(i),o=fpt(a,a("#content-container").first()),c=pi(a(".myui-page").first().text()),u=Number.parseInt(c.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),l=a(".myui-page a").filter((d,f)=>pi(a(f).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:u||(l?n+1:n),list:o}}var ppt={meta:{key:"dbku",name:"\u300C\u76F4\u300D\u72EC\u64AD\u5E93",type:3},api:async t=>{t.post("/init",yOr),t.post("/home",AOr),t.post("/category",xOr),t.post("/detail",bOr),t.post("/play",_Or),t.post("/search",EOr)}};var Wle="https://hanxiaoquan.hanju.workers.dev",vOr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",SOr=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function $le(t){return String(t||"").replace(/\/+$/,"")}function pd(t){return String(t||"").replace(/\s+/g," ").trim()}function IOr(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:$le(Wle)+(e.startsWith("/")?e:"/"+e):""}function mpt(){let t=$le(Wle);return{"User-Agent":vOr,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Ule(t,e,r=3e4){let n=await fe($le(Wle)+t,{method:"post",headers:mpt(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function Fle(t){return{vod_id:String(t?.vod_id||""),vod_name:pd(t?.vod_name),vod_pic:IOr(t?.vod_pic),vod_remarks:pd(t?.vod_remarks||t?.vod_class),vod_year:pd(t?.vod_year),vod_director:pd(t?.vod_director),vod_actor:pd(t?.vod_actor),vod_content:pd(t?.vod_content)}}function b_(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“â€â€˜â€™!?ï¼ï¼Ÿ()()\[\]ã€ã€‘]/g,"")}function COr(t,e){let r=b_(e),n=b_(t?.vod_name),s=b_(t?.vod_remarks),i=b_(t?.vod_actor),a=b_(t?.vod_director),o=b_(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function TOr(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=Fle(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=COr(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function wOr(t){let e=Fle(t);e.type_name=pd(t?.vod_class),e.vod_area=pd(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=pd(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function ROr(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function NOr(t,e){return{}}async function OOr(t,e){return{class:SOr}}async function kOr(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Ule("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(Fle).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:ROr(s,n,i),total:s?.total||i.length,list:i}}async function POr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Ule("/api/detail",{b_id:i});a?.data&&n.push(wOr(a.data))}return{list:n}}async function DOr(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:mpt()}:{parse:1,url:""}}async function BOr(t,e){let r=pd(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Ule("/api/search",{keyword:r,page:String(o)},6e4),u=TOr(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var hpt={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",NOr),t.post("/home",OOr),t.post("/category",kOr),t.post("/detail",POr),t.post("/play",DOr),t.post("/search",BOr)}};var jle=Ce(require("node:vm"),1),_o=Ce(Xn(),1);var wa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},gpt=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],LOr=/^(?:lzm3u8|bfzym3u8)$/i;function ypt(t){return String(t||"").replace(/\/+$/,"")}function Ws(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function Rs(t=""){return String(t).replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function qle(t=""){return Rs(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function Apt(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Eo(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?ypt(wa.host)+e:ypt(wa.host)+"/"+e.replace(/^\.\//,""):""}function MOr(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(wa.host).host}${e}`}catch{}return e}function WOr(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Ept(t=`${wa.host}/`){return{"User-Agent":wa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function E_(t,e={}){let r=/^https?:\/\//i.test(t)?t:Eo(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Ept(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function $Or(t,e={}){let r=await fe({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Qle(t=""){let e=Rs(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排åº|é€‰æ‹©æ’æ”¾æº|åˆ‡æ¢æ’放æº|更多|展开|æ”¶èµ·)$/i.test(e)}function UOr(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function FOr(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=Eo(t.playUrl||t.playId||t.url||t.id||""),a=Rs(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=Eo(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function xpt(t,e,r=0){if(Qle(t))return null;let n=Rs(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=FOr(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function qOr(t){let e=Ws(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=Rs(Ws(t,/<div class=["']module-(?:poster-item-title|card-item-title)["']>([\s\S]*?)<\/div>/i,1,""))||Ws(t,/alt=["']([^"']+)["']/i,1,""),n=Eo(Ws(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=Rs(Ws(t,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function Gle(t){let e=String(t||""),r=[],n=/<a href=["']\/detail\/(\d+)\.html["'] title=["']([^"']+)["'] class=["']module-poster-item module-item["']>([\s\S]*?)<\/a>/gi,s;for(;(s=n.exec(e))!==null;){let a=s[0];r.push({vod_id:s[1],vod_name:Rs(s[2]),vod_pic:Eo(Ws(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:Rs(Ws(a,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))})}if(r.length)return r;let i=/<div class=["']module-card-item module-item["']>([\s\S]*?)<\/div>\s*<\/div>/gi;for(;(s=i.exec(e))!==null;){let a=qOr(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function jOr(t){let e=[],r=/<div[^>]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Ws(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Qle(i)||e.push(i);continue}let a=Rs(n[1]||"").trim();a&&!Qle(a)&&e.push(a)}return e}function QOr(t){let e=[],r=/<div class=["']module-play-list-content[^"']*["']>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let i=n[1],a=[],o=/<a[^>]+class=["']module-play-list-link[^"']*["'][^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,c;for(;(c=o.exec(i))!==null;){let u=Eo(c[1]),l=Rs(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${Rs(i[2]).trim()||"\u64AD\u653E"}$${Eo(i[1])}`)]:e}function HOr(t="",e=""){let r=Rs(Ws(t,/<a[^>]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=Rs(Ws(t,/(?:æ£åœ¨æ’放|当剿’放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${Apt(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${Apt(e)}\u300B?\\s*`),"").trim()),s.trim()}function GOr(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=HOr(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function zOr(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function KOr(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return Eo(r)}function Hle(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||LOr.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function bpt(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return _o.default.enc.Base64.parse(e)}catch{}return _o.default.enc.Utf8.parse(e)}function VOr(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:_o.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:wa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function YOr(t,e){let r=Ws(e,/<script[^>]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await E_(n,{referer:t})}
|
|
;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=VOr(t);jle.default.createContext(a),jle.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function JOr(t,e,r){let n=MOr(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await fe.get(i,{timeout:wa.timeout,responseType:"text",transformResponse:[y=>y],validateStatus:()=>!0,headers:Ept(`${wa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=WOr(a.headers?.["set-cookie"]),u=await YOr(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await $Or(d,{method:"post",data:f,headers:{"User-Agent":wa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let y=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(y&&g){h=(_o.default.AES.decrypt(m,_o.default.enc.Utf8.parse(y),{iv:_o.default.enc.Utf8.parse(g),mode:_o.default.mode.CBC,padding:_o.default.pad.Pkcs7}).toString(_o.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let y=bpt(p.aes_key||""),g=bpt(p.aes_iv||"");if(m&&y&&g)try{h=(_o.default.AES.decrypt(m,y,{iv:g,mode:_o.default.mode.CBC,padding:_o.default.pad.Pkcs7}).toString(_o.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=Eo(h),Hle(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function __(t={}){return{"User-Agent":wa.ua,Referer:`${wa.host}/`,Origin:wa.host,...t}}function _pt(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:__(e)}}async function XOr(t,e){return{}}async function ZOr(t,e){try{let r=await E_("/");return{class:gpt,filters:{},list:Gle(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:gpt,filters:{},list:[]}}}async function ekr(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await E_(s),a=Gle(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function tkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=UOr(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await E_(o),u=[...c.matchAll(/<div class=["']module-info-tag-link["']>([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=jOr(c),d=QOr(c),f=[];if(d.forEach((h,y)=>{let g=xpt(l[y]||`\u7EBF\u8DEF${y+1}`,h,y);g&&f.push(g)}),f.length===0){let h=new Set,y=[...c.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,x)=>{let A=Eo(b[1]),S=Rs(b[2]).trim()||`\u7B2C${x+1}\u96C6`;return!A||h.has(A)?"":(h.add(A),`${S}$${A}`)}).filter(Boolean),g=xpt(l[0]||"\u64AD\u653E\u7EBF\u8DEF",y,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:Rs(Ws(c,/<h1[^>]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:Eo(Ws(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+data-original=["']([^"']+)["']/i,1,""))||Eo(Ws(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:qle(u[2]||""),vod_year:Rs(u[0]||""),vod_area:Rs(u[1]||""),vod_remarks:Rs(Ws(c,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))||Rs(Ws(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:qle(Ws(c,/\u4e3b\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:qle(Ws(c,/\u5bfc\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:Rs(Ws(c,/<div class=["']module-info-introduction-content[^"']*["'][^>]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function rkr(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await E_(s),a=Gle(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function nkr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:Eo(r);try{let s=await E_(n,{referer:n}),i=zOr(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:__()};let a=String(i.from||t.body?.flag||"").trim(),o=KOr(i.url,i.encrypt);if(Hle(o,a))return{parse:0,jx:0,url:o,playId:o,header:__({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:Eo(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:__({Referer:n})}}try{let u=await JOr(String(i.url||""),n,GOr(s,i));if(u?.url){let l=__({Referer:u.parsePageUrl||n});return Hle(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:_pt(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return _pt(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:__({Referer:n})}}}var vpt={meta:{key:wa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",XOr),t.post("/home",ZOr),t.post("/category",ekr),t.post("/detail",tkr),t.post("/play",nkr),t.post("/search",rkr)}};var nR={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},Ra=nR.host,zle=nR.ua,rR=48;function qu(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function md(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Ra+e:Ra+"/"+e:""}function Spt(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function skr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function ikr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function akr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function oM(t,e={}){let r=/^https?:\/\//i.test(t)?t:md(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||nR.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":zle,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function okr(t,e={}){let r=/^https?:\/\//i.test(t)?t:md(t),n=await fe.get(r,{timeout:e.timeout||nR.timeout,validateStatus:()=>!0,headers:{"User-Agent":zle,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function wpt(t){let e=[],r=t.match(/<div class="public-list-box public-pic-b">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:qu(i),vod_pic:md(a),vod_remarks:qu(o)})}return e}function ckr(t){let e=[],r=/<div class="slide-time-bj swiper-slide"><a href="([^"]+)">[\s\S]*?data-background="([^"]+)"[\s\S]*?<span>([^<]+)<\/span>[\s\S]*?<h3 class="slide-info-title hide">([^<]+)<\/h3>[\s\S]*?<div class="slide-info hide2">([\s\S]*?)<\/div>/g,n;for(;(n=r.exec(t))!==null;)e.push({vod_id:n[1],vod_name:qu(n[4]),vod_pic:md(n[2]),vod_remarks:qu(n[3]),vod_content:qu(n[5])});return e}function aM(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=t.match(new RegExp(`<h4 class="title-h cor4">${r}</h4>[\\s\\S]*?<div class="flex wrap border-box public-r(?: hide-b-2)? diy-center1 mask2">([\\s\\S]*?)</div></div></div>`));return n?wpt(n[1]):[]}var Ipt=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],vo={n:"\u5168\u90E8",v:""},v_={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},S_={key:"month",name:"",init:"",value:[vo,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},I_={key:"year",name:"",init:"",value:(()=>{let t=[vo];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},Cpt={2:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[vo,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[vo,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},v_],3:[{key:"class",name:"",init:"",value:[vo,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},v_],21:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},v_],20:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},S_,I_,{key:"lang",name:"",init:"",value:[vo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},v_],24:[{key:"class",name:"",init:"",value:[vo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},S_,I_,v_],26:[{key:"class",name:"",init:"",value:[vo,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},S_,I_,v_]};function ukr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),Ra+p}function Tpt(t,e={}){return{"User-Agent":zle,Referer:t||Ra+"/",Origin:Ra,...e}}async function lkr(t,e){return{}}async function dkr(t,e){try{let r=await oM(Ra+"/"),n=ikr([...ckr(r),...aM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...aM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...aM(r,"\u65E5\u756A"),...aM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:Ipt,filters:Cpt,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:Ipt,filters:Cpt,list:[]}}}async function fkr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=ukr(r,n,s);try{let a=await oM(i),o=wpt(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:rR,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:rR,total:n*rR+(u?rR:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:rR,total:0}}}async function pkr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${Ra}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await okr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${Ra}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:md(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function mkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=md(i);if(a)try{let o=await oM(a),c=qu((o.match(/<title>(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=md((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=qu((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=qu((o.match(/<p>([^<]*?(?:æ›´æ–°|點|æ”¯æŒæœæ¯”)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:qu(h[1]),count:Number(h[2]||0)});let y=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=y?y[0]:"",b=[],x=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,A;for(;(A=x.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(A[1]))!==null;){let k=qu(N[2]),B=N[1];B.includes("/play")&&R.push({name:k,playId:Spt({playUrl:B,epName:k,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let k=N[1];if(!k.includes("/play"))continue;let B=qu(N[2]);R.push({name:B,playId:Spt({playUrl:k,epName:B,vodName:c,referer:i})})}R.length&&b.push(R)}let S=[],I=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(k=>`${k.name}$${k.playId}`);S.push(w),I.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:S.join("$$$"),vod_play_url:I.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function hkr(t,e){let r=String(t.body?.id||"").trim(),n=skr(r),s=n.playUrl||r||"",i=md(n.referer||"/"),a=md(s);try{let c=(await oM(a,{referer:i||Ra+"/",headers:{Origin:Ra,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=akr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=md(d));let f=new URL(d).origin,p=f===Ra?i||Ra+"/":f+"/";return{parse:0,url:d,header:Tpt(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Tpt(Ra+"/")}}}var Rpt={meta:{key:nR.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",lkr),t.post("/home",dkr),t.post("/category",fkr),t.post("/detail",mkr),t.post("/play",hkr),t.post("/search",pkr)}};var vm=Ce(Xn(),1),mp="https://www.cycani.org",Opt="https://player.cycanime.com",kpt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",gkr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",sR=48,By=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],ykr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},Akr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},xkr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Kle=new Map;function sa(t){return String(t||"").replace(/ /gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Ppt(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function iR(t,e=mp){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function Dpt(t=`${mp}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":kpt,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function Ly(t,e=`${mp}/`,r){let n=iR(t),s=await fe.get(n,{headers:Dpt(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function bkr(t,e=`${mp}/`){let r=iR(t),n=await fe.get(r,{headers:{...Dpt(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function cM(t){return encodeURIComponent(String(t||"").trim())}function Bpt(t,e=1,r={}){let n=String(t||By[0].type_id).trim()||By[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",cM(i)),a&&s.push("class",cM(a)),o&&s.push("letter",cM(o)),c&&s.push("year",cM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function Lpt(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function _kr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function Ekr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function Npt(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=Lpt(s);if(!i)return null;let a=r.find("img").first(),o=sa(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=sa(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:iR(c),vod_remarks:u}}function Vle(t){let e=De(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=Npt(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=Npt(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Mpt(t){let e=De(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=sa(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||ykr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=sa(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:Akr[c]||o||c,init:"",value:u}))}),r.push(xkr),r}async function vkr(t){let e=String(t||By[0].type_id);if(Kle.has(e))return Kle.get(e);let r=await Ly(Bpt(e,1),`${mp}/`),n=Mpt(r);return Kle.set(e,n),n}function Skr(t,e,r){let s=sa(De(t||"")(".page-tip").first().text()).match(/当å‰\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=sR?e+1:e}async function Ikr(){let t={};await Promise.all(By.map(async r=>{t[r.type_id]=await vkr(r.type_id).catch(()=>[])}));let e=await Ly("/");return{class:By,filters:t,list:Vle(e).slice(0,sR)}}async function Ckr(t){let e=t.body||{},r=String(e.id||By[0].type_id).trim()||By[0].type_id,n=Ppt(e.page),s=e.filters||e.extend||e.ext||{},i=Bpt(r,n,s),a=await Ly(i,`${mp}/show/${r}.html`),o=Vle(a),c=Skr(a,n,o.length);return{page:n,pagecount:c,limit:sR,total:c*sR,list:o,filter:Mpt(a)}}function Tkr(t,e){let r=De(t||""),n=e||Lpt(r('link[rel="canonical"]').attr("href")||""),s=sa(r(".slide-info-title").first().text())||sa(r("h1,h2,h3").first().text())||sa(r("title").text().replace(/[_-].*$/,"")),i=iR(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=sa(r(".slide-info-remarks").first().text()),o=sa(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>sa(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=sa(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,y=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let x=_kr(r(b).attr("href"));if(!x)return;let A=sa(r(b).text())||`\u7B2C${y.length+1}\u96C6`;y.push(`${A}$${x}`)}),y.length>0&&(d.push(h),f.push(y.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function wkr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=Ekr(n);if(!s)continue;let i=await Ly(`/bangumi/${s}.html`,`${mp}/`);r.push(Tkr(i,s))}return{list:r}}function Rkr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function Nkr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function Okr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function kkr(t){let e=De(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function Pkr(t,e){let r=kkr(e);if(!r)return"";let n=vm.default.MD5(r+gkr).toString(),s=vm.default.enc.Utf8.parse(n.substring(16)),i=vm.default.enc.Utf8.parse(n.substring(0,16));return vm.default.AES.decrypt(t,s,{iv:i,mode:vm.default.mode.CBC,padding:vm.default.pad.Pkcs7}).toString(vm.default.enc.Utf8)}async function Dkr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Opt}/?url=${encodeURIComponent(t)}`,n=await Ly(r,`${mp}${e}`),s=Okr(n);return Pkr(s.url||"",n)||""}async function Bkr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await Ly(n,`${mp}/bangumi/${r[1]}.html`),i=Nkr(s);if(!i)return{parse:0,url:"",header:{}};let a=Rkr(i);return{parse:0,jx:0,url:await Dkr(a,n),header:{"User-Agent":kpt,Referer:`${Opt}/`}}}async function Lkr(t){let e=String(t.body?.wd||"").trim(),r=Ppt(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await bkr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:sa(a.name),vod_pic:iR(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function Mkr(t,e){return{}}async function Wkr(){let t=await Ly("/");return{list:Vle(t).slice(0,sR)}}var Wpt={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",Mkr),t.post("/home",Ikr),t.post("/homeVod",Wkr),t.post("/category",Ckr),t.post("/detail",wkr),t.post("/play",Bkr),t.post("/search",Lkr)}};var C_={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Oi=C_.host,oR=C_.ua,$pt=40;function Na(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function $kr(t){return Na(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀é¥åŠ¨æ¼«.*$/i,"").replace(/\s*-\s*å…费高清动漫分享.*$/i,"").trim()}function Fc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Oi+e:Oi+"/"+e:""}function Upt(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function Ukr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Fkr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function qkr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function jkr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function Qkr(t,e){let r={"User-Agent":oR};if(jkr(t))return r;let n=new URL(t).origin;return r.Referer=n===Oi?e||Oi+"/":n+"/",r.Origin=Oi,r}async function Yle(t,e={}){let r=/^https?:\/\//i.test(t)?t:Fc(t),n=await fe({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||C_.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:e.referer||Oi+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Hkr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Fc(t),s=await fe({url:n,method:"post",data:e,timeout:r.timeout||C_.timeout,validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:r.referer||Oi+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function Gkr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Fc(t),n=await fe.get(r,{timeout:e.timeout||C_.timeout,validateStatus:()=>!0,headers:{"User-Agent":oR,Referer:e.referer||Oi+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function zkr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Na((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Na(i),vod_pic:Fc(a),vod_remarks:Na(o)})}return e}function Kkr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Na(n[3]),vod_pic:Fc(n[1]),vod_remarks:Na(n[4])});return e}var Fpt=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],aR={n:"\u5168\u90E8",v:""},uM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},qpt={key:"year",name:"",init:"",value:(()=>{let t=[aR];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},jpt={key:"class",name:"",init:"",value:[aR,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},Qpt={1:[jpt,{key:"area",name:"",init:"",value:[aR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},qpt,uM],2:[jpt,qpt,uM],3:[{key:"area",name:"",init:"",value:[aR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[aR];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},uM],21:[uM]};async function Vkr(t,e){return{}}async function Ykr(t,e){try{let r=await Yle(Oi+"/"),n=Fkr([...Kkr(r),...zkr(r)]).slice(0,40);return{class:Fpt,filters:Qpt,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:Fpt,filters:Qpt,list:[]}}}async function Jkr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await Hkr(`${Oi}/index.php/ds_api/vod`,i.toString(),{referer:`${Oi}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Fc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||$pt),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:$pt,total:0}}}async function Xkr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await Gkr(`${Oi}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${Oi}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Fc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function Zkr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Fc(i);if(a)try{let o=await Yle(a),c=$kr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Fc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Na((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Na((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Na((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Na((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),y=[],g=/<a class="swiper-slide">[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)y.push({name:Na(b[1]),count:Number(b[2]||0)});let x=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),A=x?x[0]:o,S=[],I=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=I.exec(A))!==null;){let k=[],B=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(R[1]))!==null;){let D=M[1];D.includes("/watch/")&&k.push({name:Na(M[2]),playId:Upt({playUrl:D,vodName:c,referer:i})})}k.length&&S.push(k)}if(!S.length){let k=[],B=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(o))!==null;){let D=M[1];D.includes("/watch/")&&k.push({name:Na(M[2]),playId:Upt({playUrl:D,vodName:c,referer:i})})}k.length&&S.push(k)}let w=[],N=[];for(let k=0;k<S.length;k+=1){let B=y[k]?.name||`\u7EBF\u8DEF${k+1}`,M=S[k].map(D=>`${D.name}$${D.playId}`);w.push(B),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function ePr(t,e){let r=String(t.body?.id||"").trim(),n=Ukr(r),s=n.playUrl||r||"",i=Fc(n.referer||"/"),a=Fc(s);try{let c=(await Yle(a,{referer:i||Oi+"/",headers:{Origin:Oi}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=qkr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Fc(d)),{parse:0,url:d,header:Qkr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":oR,Referer:Oi+"/",Origin:Oi}}}}var Hpt={meta:{key:C_.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",Vkr),t.post("/home",Ykr),t.post("/category",Jkr),t.post("/detail",Zkr),t.post("/play",ePr),t.post("/search",Xkr)}};var Oa={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},hd=Oa.host,Sm=24,lR={n:"\u5168\u90E8",v:""},Gpt=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],tPr={key:"format",name:"",init:"",value:[lR,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},rPr={key:"finished",name:"",init:"",value:[lR,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},nPr={key:"year",name:"",init:"",value:(()=>{let t=[lR];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},sPr={key:"tag",name:"",init:"",value:[lR,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},iPr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},aPr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},oPr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},cPr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},uPr={key:"weekday",name:"",init:"",value:[lR,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},zpt={all:[tPr,rPr,nPr,sPr,iPr],recent:[aPr],ranking:[oPr,cPr],schedule:[uPr]};function hp(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function Vpt(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?hd+e:`${hd}/${e}`:""}function Ypt(t){let e=Vpt(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function lPr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function dPr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Jpt(t){return hp(t).replace(/[$#]/g," ").trim()}function Xpt(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function ju(...t){return t.find(e=>e!=null&&e!=="")}function fPr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function pPr(t={}){let e=Number(ju(t.current_episodes,t.currentEpisodes,0)),r=Number(ju(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=ju(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=ju(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function cR(t={}){let e=Xpt(ju(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:hp(t.title||t.name||""),vod_pic:Ypt(ju(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:pPr(t)}}function mPr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function Xle(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function Zle({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=mPr(t,ju(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:Sm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!Xle(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function hPr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),Xle(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(ju(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function Jle(t){let e={"User-Agent":Oa.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${hd}/`,e.Origin=hd,e}async function dR(t,e={}){let r=/^https?:\/\//i.test(t)?t:Vpt(t),n=await fe({url:r,method:"get",timeout:e.timeout||Oa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Oa.ua,Referer:e.referer||`${hd}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function uR(t,e){let r=await fe({url:`${Oa.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:hd,Referer:`${hd}/`,"User-Agent":Oa.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function gPr(t,e){let r=await fe({url:`${Oa.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:hd,Referer:`${hd}/`,"User-Agent":Oa.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Zpt(t){let e=De(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function yPr(t,e){return Zpt(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function Kpt(t,e){let r="";return t("dt").each((n,s)=>{if(hp(t(s).text())===e)return r=hp(t(s).next("dd").text()),!1}),r}function APr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function xPr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function dM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&APr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?xPr(p):JSON.parse(p)}catch{return[]}}}}return[]}function bPr(t){let e=Zpt(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>cR(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function _Pr(t,e){let r=String(t||"").match(/当å‰å·²é€‰[\s\S]{0,120}?å…±[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function EPr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function vPr(t,e){let r=De(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Jpt(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function SPr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Jpt(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function IPr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=lPr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${SPr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(hp(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function CPr(t,e){return{}}async function TPr(t,e){try{let r=await uR("search_animes",Zle({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Gpt,filters:zpt,list:(Array.isArray(r)?r:[]).map(cR).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Gpt,filters:zpt,list:[]}}}function lM(t){return(Array.isArray(t)?t:[]).map(cR).filter(e=>e.vod_id&&e.vod_name)}function wPr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function e0t(t,e){let r=lM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:Sm,total:r.length}}async function RPr(t,e){if(Xle(e)){let a=await dR(hPr(t,e)),o=bPr(a),c=_Pr(a,o.length),u=EPr(a,Math.ceil(c/Sm)||t);return{list:o,page:t,pagecount:u,limit:Sm,total:c}}let r=await uR("search_animes",Zle({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=lM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/Sm)),limit:Sm,total:i}}async function NPr(t,e){let r=await dR("/recent"),n=Number(ju(e.days,7)),s=dM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return e0t(i.items||[],t)}async function OPr(t,e){let r=String(ju(e.kind,"trending_week")).trim()||"trending_week",n=String(ju(e.section,"all")).trim()||"all",s=await dR(`/rankings?kind=${encodeURIComponent(r)}`),i=dM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return e0t(a.items||[],t)}async function kPr(t,e){let r=await dR("/schedule"),n=String(e.weekday??"").trim(),s=dM(r,"schedule"),i=n===""?wPr(s.flatMap(a=>lM(a?.animes||[]))):lM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:Sm,total:i.length}}async function PPr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=fPr(t.body||{});try{return r==="recent"?await NPr(n,s):r==="ranking"?await OPr(n,s):r==="schedule"?await kPr(n,s):await RPr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:Sm,total:0}}}async function DPr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await uR("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map(cR).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await uR("search_animes",Zle({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map(cR).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function BPr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Xpt).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await dR(a),c=De(o),u=yPr(o,i),l=hp(u.name||c("h1").first().text()),d=dM(o,"sources"),f=d.length?d:vPr(o,i),p=IPr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:Ypt(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:hp(u.description||""),vod_director:Kpt(c,"\u5BFC\u6F14"),vod_actor:Kpt(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:hp(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):hp(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function LPr(t,e){let r=String(t.body?.id||"").trim(),n=dPr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,hd).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:Jle(r)};try{let a=await uR("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await gPr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:Jle(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:Jle(r)}}}var t0t={meta:{key:Oa.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",CPr),t.post("/home",TPr),t.post("/category",PPr),t.post("/detail",BPr),t.post("/play",LPr),t.post("/search",DPr)}};var w_="https://4kzn.com",MPr={"User-Agent":Gt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${w_}/`},ede={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},r0t=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],fM={};for(let t of r0t)fM[t.type_id]=[ede];fM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},ede];fM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},ede];async function tde(t){return(await fe.get(t,{headers:MPr})).data}function My(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${w_}${e}`:`${w_}/${e.replace(/^\/+/,"")}`:""}function T_(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function n0t(t){let e=De(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=My(a.attr("href")||""),c=T_(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=My(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=T_(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function WPr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function $Pr(t,e){return{class:r0t,filters:fM}}async function UPr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${w_}/${a}/page/${i}`:`${w_}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await tde(o),u=n0t(c),{pagecount:l}=WPr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function FPr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:My(r),s=await tde(n),i=De(s),a=T_(i("h1, h2, .book-title").first().text())||T_(i("meta[property='og:title']").attr("content")||""),o=My(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=T_(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=My(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=My(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await Xt(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls,f.vod_links=p.links)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function qPr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${w_}/?s=${encodeURIComponent(r)}`,a=await tde(i),o=n0t(a);if(!o.length){let c=De(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=My(d.attr("href")||""),p=T_(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var s0t={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",lr),t.post("/home",$Pr),t.post("/category",UPr),t.post("/detail",FPr),t.post("/play",er),t.post("/search",qPr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var fR="https://kafeizhibo.com",jPr=`${fR}/api/v1`,d0t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",QPr={"User-Agent":d0t,Accept:"application/json, text/plain, */*",Referer:`${fR}/pc/replay`},rde="live:",pM="schedule:",HPr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,i0t=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],GPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],zPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],KPr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],a0t={live:[{key:"type",name:"",init:"all",value:GPr}],replay:[{key:"type",name:"",init:"all",value:zPr}],schedule:[{key:"type",name:"",init:"all",value:KPr}]},f0t=new Map;function bt(t){return String(t??"").trim()}function o0t(t){return t!=null&&bt(t)!==""}function R_(t=""){let e=bt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,fR).toString()}catch{return e}}function p0t(t=""){let e=bt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?R_(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function VPr(t=""){return/^https?:\/\//i.test(bt(t))}function YPr(t=""){return HPr.test(bt(t))}function mM(t={}){let e=R_(t.cover_image);return e&&!e.includes("default_cover")?e:R_(t.home_team_logo)||R_(t.away_team_logo)||e}function nde(t={}){return R_(t.screenshot)||mM(t.match_info||t)||R_(t.avatar)||mM(t)}function gd(t={}){return!o0t(t.home_score)||!o0t(t.away_score)?"":`${bt(t.home_score)} - ${bt(t.away_score)}`}function Im(t={}){let e=bt(t.home_team),r=bt(t.away_team),n=bt(t.league_name),s=bt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function sde(t=""){let e=bt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||bt(t)}function JPr(t=""){let e=bt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function N_(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function c0t(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function u0t(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function pR(t,e={}){let r=t.startsWith("http")?t:`${jPr}${t}`,n=await fe.get(r,{params:e,headers:QPr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function m0t(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),pR("/recordings",s)}async function h0t(t="all"){return pR("/archor",{type:t||"all",_t:Date.now()})}async function XPr(t){return pR(`/room/${encodeURIComponent(t)}`)}async function g0t(t="hot",e=1,r=30){return pR("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function y0t(t={}){let e=bt(t.match_id??t.id),r=bt(t.recording_count),n=[gd(t),bt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:Im(t),vod_pic:mM(t),vod_remarks:n.join(" | "),type_name:bt(t.league_name)}}function A0t(t={}){let e=t.match_info||t,r=bt(t.room_id||t.archor?.room_id||t.match_id),n=sde(t.status||e.status),s=bt(t.heat),i=[n,gd(t)||gd(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${rde}${r}`:"",vod_name:bt(t.title)||Im(e),vod_pic:nde(t),vod_remarks:i.join(" | "),type_name:bt(t.league_name||e.league_name)}}function x0t(t={}){if(t.archor?.room_id)return bt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return bt(r?.room_id||t.room_id)}function b0t(t={}){let e=x0t(t),r=bt(t.match_id??t.id),n=e&&r?`${pM}${r}:${e}`:"",s=JPr(t.start_time),i=[s.time||sde(t.status),s.date,gd(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&f0t.set(n,t),{vod_id:n,vod_name:bt(t.title)||Im(t),vod_pic:nde(t),vod_remarks:i.join(" | "),type_name:bt(t.league_name)}}function _0t(t,e){return(bt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function l0t(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=p0t(r.video_url||r.stream_url||r.url||r.play_url);return s?`${_0t(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function ZPr(t=""){let e=bt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function e3r(t=""){let e=bt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function t3r(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function r3r(t={}){return{match_id:t.match_id||t.id,room_id:x0t(t),title:bt(t.title)||Im(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function n3r(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=p0t(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:_0t(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function s3r(t,e){return{}}async function i3r(t,e){try{let r=await g0t("all",1,30),n=N_(r).map(b0t).filter(s=>s.vod_id&&s.vod_name);return{class:i0t,filters:a0t,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:i0t,filters:a0t,list:[]}}}async function a3r(t,e){let r=bt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=bt(s.type||"all"),l=30;try{let d=await g0t(u,n,l),f=N_(d).map(b0t).filter(p=>p.vod_id&&p.vod_name);return u0t(n,l,f,c0t(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=e3r(r);if(i!==null){let u=bt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await h0t(u),d=N_(l).map(A0t).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?bt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await m0t(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=N_(u).map(y0t).filter(d=>d.vod_id&&d.vod_name);return u0t(n,c,l,c0t(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function o3r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=bt(s);if(i)try{if(i.startsWith(rde)||i.startsWith(pM)){let h=i.startsWith(pM),y=h?i.slice(pM.length).split(":").pop():i.slice(rde.length),g=h?f0t.get(i):null,b=g?null:await XPr(y),x=g||b?.data||{},A=g?r3r(x):t3r(x),I=n3r(x).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:bt(A.title)||Im(A),vod_pic:nde(A),type_name:bt(A.league_name),vod_remarks:[sde(A.status),gd(A)].filter(Boolean).join(" | "),vod_content:[bt(A.league_name),bt(A.title)||Im(A),gd(A)?`\u6BD4\u5206 ${gd(A)}`:"",bt(A.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${bt(A.start_time)}`:"",bt(A.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:I?"\u76F4\u64AD":"",vod_play_url:I});continue}let o=(await pR(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=l0t(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=l0t(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:Im(c),vod_pic:mM(c),type_name:bt(c.league_name),vod_remarks:gd(c),vod_content:[bt(c.league_name),bt(c.match_round),Im(c),gd(c)?`\u6BD4\u5206 ${gd(c)}`:"",bt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${bt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function c3r(t,e){let r=ZPr(t.body?.id);return r?{parse:VPr(r)&&!YPr(r)?1:0,url:r,header:{"User-Agent":d0t,Referer:fR,Origin:fR}}:{parse:0,url:"",header:{}}}async function u3r(t,e){let r=bt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([h0t("all"),m0t(1,n)]),a=s.status==="fulfilled"?N_(s.value):[],o=i.status==="fulfilled"?N_(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(bt).join(" ").toLowerCase().includes(r)}).map(A0t),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(bt).join(" ").toLowerCase().includes(r)).map(y0t),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var E0t={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",s3r),t.post("/home",i3r),t.post("/category",a3r),t.post("/detail",o3r),t.post("/play",c3r),t.post("/search",u3r)}};var S0t=require("crypto");var ide="/embySpider",yd={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function l3r(){return(0,S0t.randomUUID)().toUpperCase()}function I0t(t,e=!1){return Jo(t)||(e?l3r():"")}function O_({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=I0t(r),i=Jo(t),a=Jo(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${yd.clientName}"`,`Device="${yd.deviceName}"`,`DeviceId="${s}"`,`Version="${yd.clientVersion}"`].join(", "),"X-Emby-Client":yd.clientName,"X-Emby-Device-Name":yd.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":yd.clientVersion,"X-Emby-Language":yd.language,"User-Agent":yd.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function C0t(t){return String(t||"").trim().replace(/\/+$/,"")}function Jo(t){return String(t||"").trim()}function d3r(t){return String(t||"").trim()}function T0t(t){return Jo(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function f3r(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||Oz().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${Oz().slice(0,4)}`;return e.add(s),s}function p3r(t,e,r={}){let n=C0t(t?.host),s=Jo(t?.username),i=Jo(t?.name),a=T0t(t?.id),o=a&&!e.has(a)?a:f3r({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:I0t(t?.deviceId,r.ensureDeviceId),logo:d3r(t?.logo),libraries:ade(t?.libraries),libraryStats:w0t(t?.libraryStats)}}function w0t(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function ade(t=[]){return Array.isArray(t)?t.map(e=>({id:Jo(e?.id||e?.Id),name:Jo(e?.name||e?.Name),collectionType:Jo(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function m3r(t=[]){return ade(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function hM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>Jo(i?.id)||Jo(i?.name)||C0t(i?.host)||Jo(i?.username)||String(i?.password||"")).map(i=>p3r(i,r,e)).filter(i=>i.host||i.username)}}function h3r(t){return{servers:t.servers}}var ode=async t=>{let e=await t.db.getObjectDefault(ide,{});return hM(e)},mR=async t=>(await ode(t)).servers,k_=async(t,e="")=>{let r=await ode(t),n=T0t(e);return n&&r.servers.find(s=>s.id===n)||null},g3r=async(t,e)=>{let r=hM(e,{ensureDeviceId:!0});return await t.db.push(ide,h3r(r)),r},y3r=async t=>{await t.db.delete(ide)};async function A3r(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await fe.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:O_({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function x3r(t="",e="",r=""){return O_({token:t,contentType:!0,deviceId:e,userId:r})}async function gM(t,e="",r="",n=""){return(await fe.get(t,{headers:e?x3r(e,r,n):O_({deviceId:r}),timeout:1e4})).data}async function b3r(t,e="",r=""){try{return await gM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await gM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function _3r(t,e,r){try{let n=await gM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function v0t(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await gM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function E3r(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(v0t(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(v0t(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function v3r(t){let e=await A3r(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([b3r(t,r,n),_3r(t,n,r)]),a=await E3r(t,n,r,i);return{serverName:Jo(s?.ServerName),libraries:m3r(i),libraryStats:a}}function S3r(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:ade(e.libraries||t.libraries),libraryStats:w0t(e.libraryStats||t.libraryStats)}}function I3r(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function cde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await ode(e.server)})}),t.post("/verify",async(e,r)=>{let s=hM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await v3r(s);r.send({code:0,data:S3r(s,i)})}catch(i){r.send({code:-1,message:I3r(i)})}}),t.put("/setting",async(e,r)=>{let n=hM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await g3r(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await y3r(e.server),r.send({code:0})})}var fde="::",P0t=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),ude=new Map;function C3r(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function T3r(t){let e=t||"default";return ude.has(e)||ude.set(e,C3r()),ude.get(e)}async function w3r(t,e=""){let r=await k_(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=T3r(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function mde(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await fe.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:O_({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function Cm(t,e=""){let r=await w3r(t,e);return(!r.accessToken||!r.userId)&&await mde(r),r}function yM(t){return O_({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function P_(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${fde}${n}`}function D0t(t){let e=String(t||""),r=e.indexOf(fde);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+fde.length)}}function R3r(t){return String(t.body?.id||"").trim()}function R0t(t){return String(t||"").split(",")[0].trim()}function N3r(t){let r=R0t(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=R0t(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function O3r(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function lde(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function k3r(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:lde(t.RecursiveItemCount)||lde(t.EpisodeCount)||lde(t.ChildCount)}function P3r(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function B0t(t,e){let r=await Cm(t,e),n=await Wy(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function pde(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function dde(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function Wy(t,e,r="",n={}){let s=await Cm(e,r),i=`${s.baseUrl}${t}`;try{return(await fe({method:n.method||"GET",url:i,headers:yM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await mde(s),(await fe({method:n.method||"GET",url:i,headers:yM(s),data:n.data,timeout:15e3})).data;throw a}}function D3r(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function B3r(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function L0t(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=N3r(r);return i?`${i}${s}`:s}return""}function M0t(t,e="",r=null){let n=k3r(t);return{vod_id:P_(e,t.Id),vod_name:t.Name||"",vod_pic:L0t(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function N0t(t,e){return{}}async function L3r(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await Cm(t.server,n),a=D3r(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(B3r(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await fe.get(u,{responseType:"stream",headers:yM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await mde(i),l=await fe.get(u,{responseType:"stream",headers:yM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function M3r(t,e){try{let n=(await mR(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=pde(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function W3r(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await k_(t.server,r),s=dde(n?.libraries);if(s.length===0){let i=await B0t(t.server,r);s=dde(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await k_(t.server,r).catch(()=>null);return{class:dde(s?.libraries),filters:{}}}}async function W0t(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await Cm(t.server,e),u=await B0t(t.server,e),l=pde(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let x=await Wy(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=O3r(x?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:P0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await Wy(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],y=m?.TotalRecordCount||h.length,g=h.map(x=>M0t(x,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(y/a)),limit:a,total:y,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await k_(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:pde(u?.libraries)}),l}}async function $3r(t,e){let r=R3r(t);return W0t(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function U3r(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return W0t(t,r,n,{useFilterLibrary:!1})}async function O0t(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=D0t(s);if(!i||!a)continue;let o=await Cm(t.server,i),c=await Wy(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:P_(i,c.Id),vod_name:c.Name||"",vod_pic:L0t(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`;else if(c.Type==="Series"){let d=(await Wy(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let y=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[y]||(f[y]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[y].push(`${g}$${P_(i,h.Id)}`)}let p=[],m=[];for(let[h,y]of Object.entries(f))p.push(h),m.push(y.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${P_(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function F3r(t,e,r){let n=await Cm(t,e),s=encodeURIComponent(r),i=await Wy(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function k0t(t,e){let{serverId:r,itemId:n}=D0t(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await Cm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await F3r(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":yd.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function $0t(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await Cm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:P0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await Wy(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),y=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||y.length)||0),list:y.map(g=>M0t(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=P3r(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function q3r(t,e){let r=await mR(t.server);return $0t(t,r.filter(n=>n?.host&&n?.username))}async function j3r(t,e){let r=String(t.params?.serverId||"").trim(),n=await k_(t.server,r).catch(()=>null);return $0t(t,n?.host&&n?.username?[n]:[])}var U0t={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",N0t),t.get("/image",L3r),t.post("/home",M3r),t.post("/category",$3r),t.post("/detail",O0t),t.post("/play",k0t),t.post("/search",q3r),t.post("/server/:serverId/init",N0t),t.post("/server/:serverId/home",W3r),t.post("/server/:serverId/category",U3r),t.post("/server/:serverId/detail",O0t),t.post("/server/:serverId/play",k0t),t.post("/server/:serverId/search",j3r)}};var hde="/alistVideo",q0t={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function Q3r(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function gde(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function yde(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...gde(n),otpCode:""};if(!i.server)return null;i.id||(i.id=Q3r(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function H3r(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function D_(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":H3r(t)};return r&&(n.Authorization=r),n}function Ade(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function AM(t={},e={}){let r=gde(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await fe.post(r.server+"/api/auth/login",n,{headers:D_(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function F0t(t,e=""){let r=await fe.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:D_(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var j0t=async t=>{let e=await t.db.getObjectDefault(hde,q0t);return yde(e)},G3r=async(t,e)=>{let r=yde(e);return await t.db.push(hde,r),r},z3r=async t=>{await t.db.delete(hde)},hR=async t=>(await j0t(t)).servers;async function xde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await j0t(e.server)})}),t.put("/setting",async(e,r)=>{let n=yde(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await G3r(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await z3r(e.server),r.send({code:0,data:q0t})}),t.post("/verify",async(e,r)=>{let n=gde(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await AM(n),{resp:i,json:a}=await F0t(n,s);if(Ade(i,a)&&n.username&&(s=await AM({...n,token:""}),{resp:i,json:a}=await F0t(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var K3r=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),V3r=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),V0t="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Y0t="https://img.icons8.com/color/48/video.png",Y3r=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),J0t="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Qu={},B_={},bde="alist:";function _M(t){let e=t.lastIndexOf(".");return e<0?!1:K3r.has(t.slice(e).toLowerCase())}function X0t(t){let e=t.lastIndexOf(".");return e<0?!1:V3r.has(t.slice(e).toLowerCase())}function _de(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function Tm(t,e,r=""){let n=String(r||"").trim();return n?bde+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function EM(t){let e=String(t||"");if(e.startsWith(bde))try{let n=JSON.parse(Buffer.from(e.slice(bde.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function J3r(t,e=""){let r=String(e||"").trim();if(r&&Qu[r])return Qu[r];let n=String(t||"").trim();return n&&Qu[n]?Qu[n]:Object.values(Qu).find(s=>r&&s?.id===r||n&&s?.name===n)}function Z0t(t){return String(t||"").split(",")[0].trim()}function Q0t(t){return Z0t(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function X3r(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Q0t(t?.headers?.["x-forwarded-host"])||Q0t(t?.headers?.host);if(!n)return e;let s=Z0t(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function Z3r(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function eDr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function tDr(t){return String(t||"").toLowerCase().includes("115")}function rDr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return Y3r.has(e)||tDr(e)||r.includes("115cdn.net")}function nDr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function sDr(t,e,r){let n=new URL("/d"+nDr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function H0t(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${X3r(t)}${i}/proxy/${Z3r(e,r,n)}/${encodeURIComponent(s)}`}function iDr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function aDr(t,e,r){return{...iDr(r),...D_(t,e),"User-Agent":J0t,Referer:"https://www.alipan.com/"}}function oDr(){return{"User-Agent":J0t,Referer:"https://www.alipan.com/"}}function emt(t){return t.id||t.server||t.name}async function xM(t,e=!1){let r=emt(t);if(!e){if(B_[r])return B_[r];if(t.token)return t.token}let n=await AM({...t,token:e?"":t.token});return n&&(B_[r]=n),n}async function vM(t,e,r={},n=!0){let s=await xM(t),i=D_(t,s),a=await fe.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Ade(a,o)&&t.username){let c=emt(t);delete B_[c];let u=await xM(t,!0),d=(await fe.post(t.server+e,r,{headers:D_(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function tmt(t,e,r=1){return vM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function bM(t,e){return vM(t,"/api/fs/get",{path:e})}async function cDr(t,e,r,n={}){return fe.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function rmt(t,e,r,n,s){let i=sDr(t,e,r),a=await cDr(i,aDr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function uDr(t,e){await gR(t.server);let r;try{r=eDr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await SM(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await bM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await xM(n),a=await rmt(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function lDr(t,e,r="/"){return vM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function dDr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function fDr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function nmt(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=fDr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function smt(t){if(!t)return null;let e=t.id||t.name;return e?(Qu[e]=t,t):null}async function Ede(t){let e=await hR(t);for(let r of Object.keys(Qu))delete Qu[r];for(let r of Object.keys(B_))delete B_[r];for(let r of e)smt(nmt(r));return e}async function gR(t){Object.keys(Qu).length===0&&await Ede(t)}async function yR(t,e){let r=String(e||"").trim();if(!r)return null;let n=await hR(t),s=nmt(n.find(i=>i?.id===r));return smt(s)}async function SM(t,e={}){let r=J3r(e.name,e.serverId);return r||(e.serverId?yR(t,e.serverId):null)}async function pDr(t,e){return await Ede(t.server),{}}async function mDr(t,e){if((await Ede(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Qu))n.push({type_id:Tm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function hDr(t,e){let r=await yR(t.server,t.params?.serverId);return r?{class:[{type_id:Tm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function imt(t,e){await gR(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=EM(r),o=await SM(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await tmt(o,a,n),l=u.content||[],d=[];for(let h of l){let y=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=Tm(o.name,y,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||V0t,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else _M(h.name)&&d.push({vod_id:Tm(o.name,y,c),vod_name:h.name,vod_pic:h.thumb||Y0t,vod_remarks:_de(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function gDr(t,e){let r=String(t.params?.serverId||"").trim(),n=await yR(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?EM(s):{path:"/"};return t.body={...t.body||{},id:Tm(n.name,i.path||"/",n.id)},imt(t,e)}async function G0t(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await vM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):_M(u.name)?a.push({name:u.name,path:l,size:u.size}):X0t(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function z0t(t,e){await gR(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=EM(s),c=await SM(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await bM(c,o),d=l.is_dir;if(!d&&_M(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${_de(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await G0t(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${Tm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let y=await G0t(c,h.path);y.videos.length>0&&(p.push(h.name),m.push(y.videos.map(g=>`${g.name}$${Tm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,y,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function K0t(t,e){await gR(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=EM(r),a=await SM(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await bM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Referer:"https://www.alipan.com/"};else if(rDr(c))if(l.header=oDr(),c.sign){let m=await xM(a),h=await rmt(a,i,c.sign,m,t);h?l.url=h:l.url=H0t(t,a.name,i,o)}else l.url=H0t(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await tmt(a,d)).content||[]).filter(y=>X0t(y.name)&&y.name.includes(p)).slice(0,3);if(h.length>0){let y=[];for(let g of h)try{let b=await bM(a,d+g.name);b.raw_url&&y.push(b.raw_url)}catch{}y.length>0&&(l.subt=y[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function amt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await lDr(i,r)).content||[];for(let c of o)if(c.is_dir||_M(c.name)){let l=dDr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=Tm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?V0t:Y0t),vod_remarks:c.is_dir?"":_de(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function yDr(t,e){return await gR(t.server),amt(t,Object.values(Qu))}async function ADr(t,e){return await yR(t.server,t.params?.serverId),{}}async function xDr(t,e){let r=await yR(t.server,t.params?.serverId);return amt(t,r?[r]:[])}var omt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",pDr),t.post("/home",mDr),t.post("/category",imt),t.post("/detail",z0t),t.post("/search",yDr),t.post("/play",K0t),t.get("/proxy/:id/:file",uDr),t.post("/server/:serverId/init",ADr),t.post("/server/:serverId/home",hDr),t.post("/server/:serverId/category",gDr),t.post("/server/:serverId/detail",z0t),t.post("/server/:serverId/search",xDr),t.post("/server/:serverId/play",K0t)}};var AR=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,bDr=async(t,e)=>{await t.db.push("/sites/list",e)},_Dr=async t=>{await t.db.delete("/sites/list")};async function vde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await AR(e.server)})}),t.put("/list",async(e,r)=>{await bDr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await _Dr(e.server),r.send({code:0})})}var cmt="\u5185\u7F6E\u5F39\u5E55",EDr=9321;function dmt(t){return String(t||"").split(",")[0].trim()}function umt(t){return dmt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function lmt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function vDr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=umt(e?.headers?.["x-forwarded-host"])||umt(e?.headers?.host),i=dmt(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!lmt(s))return`${o}://${s}`;let c=String(Z0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!lmt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function fmt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=vDr(t,r),s=cce(n,EDr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===cmt?{...a,builtin:!0,name:o||cmt,address:s}:a});return{...e,urls:i}}var IM=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return fmt(t,n,e)},SDr=async(t,e,r=null)=>{await t.db.push("/danmu",fmt(t,e,r))},IDr=async t=>{await t.db.delete("/danmu")},CDr=3,Sde=(t,e=CDr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},TDr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},wDr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function Ide(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await IM(e.server,e)})}),t.put("/setting",async(e,r)=>{await SDr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await IDr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||TDr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await he.get(a,{timeout:1e4}),c=wDr(o.data);c>0?Sde(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Sde("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Sde("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(`
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<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 Wmt=Ce(Xn(),1),$mt=Ce(NI(),1),Vde=Ce(oC(),1);var Cde=["\u7F8E\u5267","\u97E9\u5267","\u65E5\u5267","\u53F0\u5267","\u6E2F\u5267","\u6E2F\u53F0\u5267","\u56FD\u4EA7\u5267","\u5927\u9646\u5267","\u5185\u5730\u5267","\u6CF0\u5267","\u82F1\u5267","\u7F8E\u5267\u7248","\u82F1\u5267\u7248","\u65E5\u5267\u7248","\u97E9\u5267\u7248","\u53F0\u5267\u7248","\u6E2F\u5267\u7248","\u6CF0\u5267\u7248","\u5F71\u540E","\u5F71\u5E1D","\u56FD\u5267","\u5FAE\u77ED\u5267","\u77ED\u5267","\u7535\u5F71","\u5267\u96C6","\u7EFC\u827A","\u72AF\u7F6A","\u52A8\u6F2B","\u52A8\u753B","\u7EAA\u5F55\u7247","\u77ED\u7247","\u8FDE\u7EED\u5267","\u7CFB\u5217\u5267","\u7F51\u7EDC\u5267","\u7535\u89C6\u5267"],RDr=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"],NDr=[...Cde,...RDr],pmt=new RegExp(NDr.join("|"),"ig"),ODr=new RegExp(Cde.join("|"),"ig");function $y(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(ODr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。ã€]+\s*(?=\(|ã€|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Cde.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?ã€/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[pmt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(pmt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Tde(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五å…七八ä¹å百åƒä¸‡äº¿\d]+)\s*å£/);return r?gp(r[1]).padStart(2,"0"):""}var mmt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},hmt={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function gmt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(mmt.hasOwnProperty(a))n=mmt[a];else if(hmt.hasOwnProperty(a)){let o=hmt[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function gp(t){return t&&t.replace(/([零一二三四五å…七八ä¹å百åƒä¸‡äº¿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=gmt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function kDr(t){let e=t;return e=e.replace(/[(()[\]ã€ã€‘{}]\s*([上ä¸ä¸‹])\s*[)()[\]ã€ã€‘{}]/g,"$1"),e=e.replace(/(\[|\{|\(|ã€).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(高ç |高ç 率|高ç 版|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效å—幕|内嵌å—幕|åŒè¯å—幕|䏿–‡å—幕|英文å—幕|ç¹ä½“å—幕|简体å—幕|多音轨|æœæ¯”音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function PDr(t){let e=t.replace(/(\[|\{|\(|ã€).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return gp(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return gp(n)}return"-1"}function DDr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=gp(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return gp(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=gmt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?gp(i[1]):"-1"}function BDr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return gp(s)}return"-1"}function xR(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=kDr(e),s=DDr(n);if(s!=="-1")return s;let i=PDr(e);return i!=="-1"?i:BDr(n)}var wde=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],LDr=async(t,e)=>{await t.db.push("/t4/list",e)},MDr=async t=>{await t.db.delete("/t4/list")};async function Rde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await wde(e.server)})}),t.put("/list",async(e,r)=>{await LDr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await MDr(e.server),r.send({code:0})})}function Nde(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var WDr=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],CM="\u300C\u91C7\u300D",$Dr=[{name:`${CM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function kde(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function Pde(t){try{return new URL(t)}catch{return null}}function UDr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function FDr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function Amt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=Pde(kde(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!UDr(n.hostname)?"":(FDr(n),n.toString())}function qDr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||Pde(kde(t.address||t.api||t.url||""))?.hostname||"CMS"}function jDr(t){let e=String(t||"").trim();return e?e.startsWith(CM)?e:`${CM}${e}`:`${CM}CMS`}function Dde(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=Amt(r);return n?{name:jDr(qDr({...t,address:n},e)),address:n}:null}function xmt(t){if(typeof t=="string")try{return xmt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function QDr(t){let e=new Set;return xmt(t).map(r=>Dde(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function HDr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=Amt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=Pde(kde(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of WDr)n(`${i.origin}${o}`)}return r}async function ymt(t,e=void 0){let r=await fe.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function GDr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function zDr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=HDr(r);for(let s of n)try{let i=await ymt(s),a=QDr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await ymt(s,{ac:"class"});if(GDr(i))return{type:"cms",sources:[Dde({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function Ode(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>Dde(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var Bde=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return Ode(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return Ode(r.length>0?r:$Dr)},KDr=async(t,e)=>{await t.db.push("/cms/list",Ode(e))},VDr=async t=>{await t.db.delete("/cms/list")};async function Lde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Bde(e.server)})}),t.put("/list",async(e,r)=>{await KDr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await zDr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await VDr(e.server),r.send({code:0})})}var YDr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Mde="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function JDr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function XDr(t=""){return YDr.test(String(t||"").trim())}function ZDr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function e4r(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Wde(t,e){let r=fe.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!JDr(l)||XDr(l))return{parse:0,url:l};try{let{data:d}=await fe.get(l,{timeout:1e4,headers:{"User-Agent":Mde,Referer:l}}),f=e4r(d);if(f)return{parse:0,url:ZDr(f,l),header:{Referer:l,"User-Agent":Mde}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Mde}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var Uy={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},$de=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function TM(t={}){return new $de(t.max||800)}async function yp(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function wm(t=[]){return t.map(e=>String(e)).join(":")}function t4r(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Ude(t){return String(t||"").split(",")[0].trim()}function wM(t=null){let r=Ude(t?.headers?.["x-forwarded-host"])||Ude(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Ude(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function r4r(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Ad(t){let e=t.embyContext?.cache;return yp(e,"emby:enabled-video-spiders:v2",Uy.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await AR(t).catch(()=>[]),a=r4r(s,i),o={},c=[];return a.forEach(u=>{let l=t4r(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function Fy(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function qy(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(y=>String(y||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function bR(t,e,r=null){let n=t.embyContext?.cache,s=wM(r),i=wm(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return yp(n,i,Uy.HOME,()=>qy(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function L_(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=wM(i),c=wm(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return yp(a,c,Uy.CATEGORY,()=>qy(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function qc(t,e,r,n=null){let s=t.embyContext?.cache,i=wM(n),a=wm(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return yp(s,a,Uy.DETAIL,()=>qy(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function bmt(t,e,r,n=1){let s=t.embyContext?.cache,i=wm(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return yp(s,i,Uy.SEARCH,()=>qy(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function Rm(t,e,r,n,s=null){let i=t.embyContext?.cache,a=wM(s),o=wm(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return yp(i,o,Uy.PLAY,()=>qy(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function jc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function xd(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var Fde=Ce(require("node:fs"),1),_R=Ce(require("node:path"),1),n4r=()=>{try{return`const appConfig = {\r
|
|
_webSite: '',\r
|
|
/**\r
|
|
* \u7F51\u7AD9\u4E3B\u9875\uFF0Cuz \u8C03\u7528\u6BCF\u4E2A\u51FD\u6570\u524D\u90FD\u4F1A\u8FDB\u884C\u8D4B\u503C\u64CD\u4F5C\r
|
|
* \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""}},_mt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},Emt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},vmt=(t,e,r={})=>Emt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),Smt=(t,e,r={})=>Emt(`${t}/uz.js`,{...r,key:e}),s4r=()=>{let t=[_R.default.resolve(process.cwd(),"src/assets/uz.js"),_R.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),_R.default.resolve(process.cwd(),"dist/assets/uz.js"),_R.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>Fde.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},Imt=()=>n4r()||Fde.default.readFileSync(s4r(),"utf8"),Cmt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var i4r=new Set(["0","false","no","off"]),RM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),NM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!i4r.has(t)},ER=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},vR=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var W_="/spider",a4r=new Set([".cjs",".mjs",".js"]),Umt=/^[a-z0-9_-]{2,32}$/,Fmt=new Set(["http:","https:"]),TR="nodejs_",qmt="__catpawProfile",o4r=new Set([qmt,"server","embyPlayback"]),c4r=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],SR={key:"",expireAt:0,spiders:[]},Nm={key:"",promise:null},Tmt=new Map,u4r=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),qde=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},l4r=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},d4r=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},f4r=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},p4r=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(TR)?e.slice(TR.length):e},jmt=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},m4r=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${W_}/${encodeURIComponent(n)}/${s}`};jmt(e,[n,`${TR}${n}`],i)}),e},wmt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(TR)?n.slice(TR.length):n;return t.get(n)||t.get(s)||null},h4r=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},g4r=(t,e)=>{let r=h4r(t.headers?.authorization),n=RM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},y4r=t=>$s.default.resolve(process.cwd(),"dist",t),Qmt=t=>Object.prototype.toString.call(t)==="[object Object]",zde=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},A4r=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),x4r=async t=>{try{let e=await t.getData("/");return Qmt(e)?e:{}}catch{return{}}},b4r=t=>{let e={};return Object.entries(Qmt(t)?t:{}).forEach(([r,n])=>{o4r.has(r)||(e[r]=zde(n,n))}),e},_4r=async({db:t,config:e})=>{let r=await x4r(t),n=b4r(r),s={...zde(e,{}),...zde(n,{})};return delete s.server,Object.keys(n).length>0&&(s[qmt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",A4r(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(`
|
|
`)},E4r=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await _4r(r),"utf8"),v4r=async(t,e,r,n)=>{if(g4r(e,r))try{let s=t.md5Source||t.fileName,i=await M_.default.readFile(y4r(s)),a=await E4r(t,i,n),o=t.md5Source?(0,DM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},jde=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Qde=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},S4r=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return Fmt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Rmt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>S4r(n)).filter(Boolean);return[...new Set(r)]},Hde=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},I4r=async t=>{try{let e=await M_.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},Hmt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Rmt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Rmt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||$s.default.join(r,"custom-spiders");return{enabled:jde(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:jde(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:jde(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Qde(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Qde(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Qde(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:$s.default.resolve(o),urls:a}},Nmt=(t,e)=>{let n=`[custom-spider:${$s.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:he,req:fe,create:(i={})=>he.create(i)}),cheerio:Object.freeze({load:De}),utils:Object.freeze({extractTitle:$y,findEpisodeNumber:xR,firstSuccessfulUrl:Zn}),logger:s,app:Object.freeze({spiderPrefix:W_,nodePath:process.env.NODE_PATH||"."})})},C4r=async t=>{try{return(await M_.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>$s.default.join(t,r.name)).filter(r=>a4r.has($s.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},kM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},PM=new Map,Yde=t=>String(t||"").trim(),T4r=t=>{let e=kM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Gmt=(t,e)=>{let r=Yde(t);if(!r)return"";let n=T4r(e);return n?(PM.set(r,n),n):(PM.delete(r),"")},zmt=t=>{let e=Yde(t);return e?String(PM.get(e)||"").trim():""},Omt={axios:he,cheerio:JD,"crypto-js":Wmt.default,dayjs:$mt.default,qs:Vde.default},w4r=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await he.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:kM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:kM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Tmt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Tmt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Omt[n]?Omt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},Kmt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},Vmt=(t,e,r="")=>{let n={exports:{}},s=r||(0,Kde.pathToFileURL)($s.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Mmt.createRequire)(s),a=w4r(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,$s.default.dirname(e)),{default:n.exports}},R4r=async(t,e)=>{let r=await he.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=kM(r.data);Gmt(t,n);let s=(0,DM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!Kmt(a,n))throw a;let o;try{let c=new URL(t),u=$s.default.basename(c.pathname)||`remote-${s}.js`;o=$s.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=$s.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return Vmt(n,o)}},N4r=async t=>{let e=Yde(t),r="",n=!1;try{r=await M_.default.readFile(t,"utf8"),n=!0,Gmt(e,r)}catch{PM.delete(e)}let s=(0,Kde.pathToFileURL)(t);s.searchParams.set("v",await I4r(t));try{return await import(s.href)}catch(i){if($s.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await M_.default.readFile(t,"utf8");if(!Kmt(i,o))throw i;return Vmt(o,t,s.href)}},kmt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Pmt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),O4r=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},BM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if(Fmt.has(r.protocol)){let n=$s.default.parse($s.default.basename(r.pathname||"")).name;return O4r(n)}}catch{}return $s.default.parse(e).name},k4r=t=>{let e=BM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Umt.test(r)?r:`omni_${(0,DM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},P4r=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},OM=t=>t&&typeof t=="object"?t:{list:[]},Dmt=t=>{let e=OM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>P4r(n))}},D4r=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},B4r=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||k4r(e),a=zmt(e),o=String(r.name||"").trim()||a||BM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return OM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return OM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),y=Dmt(h);Array.isArray(y.list)&&p.push(...y.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return Dmt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return OM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return D4r(f,d)})}}},L4r=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=kmt(t?.default)&&t.default||kmt(t)&&t;if(n)return{mode:"spider",value:n};let s=Pmt(t?.default)&&t.default||Pmt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},M4r=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},W4r=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=BM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Umt.test(c))return{key:c,from:o}}return null},$4r=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},IR=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},U4r=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${$s.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>IR(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=$4r(f.filters);return m&&(p.ext=m),IR(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return IR(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>IR(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>IR(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},CR=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=W4r(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=zmt(e),i=String(t.meta?.name||"").trim()||s||BM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},F4r=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},q4r=async t=>{let e=Hmt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&SR.key===r&&SR.expireAt>n)return SR.spiders;if(Nm.promise&&Nm.key===r)return Nm.promise;Nm.key=r,Nm.promise=(async()=>{let s=await C4r(e.dir),i=e.urls;if(s.length===0&&i.length===0)return SR={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>$s.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:$s.default.basename(l),load:()=>N4r(l)})),...i.map(l=>({id:l,display:l,load:()=>R4r(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=L4r(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),CR(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=B4r(f.value,l.id);return CR(h,l.id)}if(f.mode==="callable"){let h=Nmt(t,l.id);try{let y=await Hde(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return CR(y,l.id)}catch(y){if(!M4r(y))throw y;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await Hde(U4r(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return CR(g,l.id)}}let p=Nmt(t,l.id),m=await Hde(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return CR(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),SR={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await Nm.promise}finally{Nm.key===r&&(Nm={key:"",promise:null})}},Bmt=async t=>{let e=[E0t,Nft,Llt],r=[Blt,qct,Vut,jct,Qct,Hct,Yut,I$e,Gct,zct,zut,Kut,s0t,Adt,jut,Sdt,Rdt,flt,glt,Qlt,vut,Yct,Xct,rut,sut,Gut,out,uut,omt,U0t,Ldt,Ydt,lpt,vpt,qft,Mft,Wft,Rft,Sft,Hpt,t0t,Yft,ppt,yft,hpt,Rpt,Wpt,ept,Olt];(await wde(t)).forEach(o=>{r.push(Nde(o.name,o.address))}),(await Bde(t)).forEach(o=>{r.push(Wde(o.name,o.address))});let i=await q4r(t);r.push(...i),r.push(...e);let{allowOverride:a}=Hmt(t.config);return F4r(r,a)},Lmt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},j4r=async(t,e)=>{(await mR(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${W_}/emby/3/server/${encodeURIComponent(n.id)}`})})},Q4r=async(t,e)=>{(await hR(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${W_}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},Gde={};async function Jde(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,Vde.default.parse(String(m||"")))});let n=await Bmt({db:e,config:r}),s=m4r(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=W_+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(y=>console.error(`[spider-check] ${p.meta.key} failed:`,y))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,y={})=>qy(t,m.spiderKey,m.spiderType,h,y,{apiBase:m.apiBase,headers:d4r(p)}),c=async(p,m)=>{let h=_mt(m),y=wmt(i,h);return y||(await a(p),y=wmt(i,h)),{module:h,spider:y}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(Imt())},d=async(p,m)=>{let{module:h,spider:y}=await c(p,p.params?.module);if(!y){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let y=u4r(p);try{if(y.refresh!==void 0){m.send(await o(p,h,"init",{ext:y.extend||y.ext||"",extend:y.extend}));return}if(y.play!==void 0){m.send(await o(p,h,"play",{id:y.play,flag:y.flag,extend:y.extend}));return}if(y.ac==="action"&&y.action!==void 0){m.send(await o(p,h,"action",{action:y.action,value:y.value,extend:y.extend}));return}if(y.ac==="detail"&&y.ids!==void 0){m.send(await o(p,h,"detail",{id:y.ids,extend:y.extend}));return}if(y.t!==void 0){m.send(await o(p,h,"category",{id:y.t,page:y.pg||y.page||1,filter:qde(y.filter,!0),filters:l4r(y.ext||y.f,{}),extend:y.extend}));return}if(y.wd!==void 0){m.send(await o(p,h,"search",{wd:y.wd,page:y.pg||y.page||1,quick:qde(y.quick,!1),extend:y.extend}));return}m.send(await o(p,h,"home",{filter:qde(y.filter,!0),extend:y.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",x=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(x>=400&&x<600?x:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),NM()&&c4r.forEach(p=>{t.get(p.url,async(m,h)=>v4r(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(A,S){S.send({run:!p.stop})});let m=async()=>{let A={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},S=await Bmt({db:e,config:r}),I=!1,R=!1,w=[];for(let N of S){let k=Object.assign({},N.meta);if(k.hidden){k.key==="emby"?I=!0:k.key==="alist-video"&&(R=!0);continue}k.api=W_+"/"+k.key+"/"+k.type,k.key="nodejs_"+k.key;let B=N.meta.type;if(k.cms){w.push({meta:k,stype:B});continue}Lmt(A,k,B)}return I&&await j4r(A,{db:e,config:r}),R&&await Q4r(A,{db:e,config:r}),w.forEach(({meta:N,stype:k})=>Lmt(A,N,k)),A},h=async(A,S)=>{let I=await AR(A.server),R=S.video.sites,w={},N={};R.forEach(B=>{N[B.key]=B});let k=[];return I.forEach(B=>{w[B.key]=!0;let M=N[B.key];if(M&&B.enable){let D=typeof B.name=="string"?B.name.trim():"";k.push({...M,name:D||M.name})}}),R.forEach(B=>{w[B.key]||k.push(B)}),S.video.sites=k,S},y=async A=>{let S=await m();return await h(A,S),S},g=A=>{let S=f4r(A.api);if(!S||Number(S.spiderType)!==3)return null;let I=p4r(A.key);return jmt(i,[A.key,I],S),{module:I,ref:S}};a=async A=>{(await y(A)).video.sites.forEach(g)};let b=async A=>{let S=await y(A),I=ER(A).replace(/\/$/,""),R=S.video.sites.map(w=>{let N=g(w);if(!N)return null;let k=N.module,B={key:`t4_${k}`,name:w.name,type:4,api:`${I}/api/${encodeURIComponent(k)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(B.ext=w.ext),B}).filter(Boolean);return{sites_count:R.length,sites:R,color:S.color||[]}},x=async(A,S)=>{let I=await y(A),R=ER(A).replace(/\/$/,""),w=u(A),N=I.video.sites.map(k=>{let B=g(k);if(!B)return null;let M=B.module;return{module:M,name:k.name,scriptUrl:Smt(R,M,w),t4ApiUrl:vmt(R,M,w)}}).filter(Boolean);S.send(Cmt(N))};p.get("/config",async function(A,S){let I=await y(A);I.video.danmuSearchUrl=`http://127.0.0.1:${A.server.address().port}/website/danmu/fe`,S.send(I)}),p.get("/t4",b),p.get("/uz",x),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let y=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(y){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await IM(p.server);if(!b?.autoPush){g();return}let{name:x,episodeNumber:A,originalName:S}=p.query,I=String(S||"").trim(),R=String(x||"").trim()||$y(I)||I,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",I||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",A),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,B=(I||R).match(/第([一二三四五å…七八ä¹å\d]+)å£/);if(B){let J=B[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,D=!A||A==="0",L=R;!D&&A&&(L=`${R} ${M}E${A}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",L);let Z=async(J,se,oe)=>{w&&(console.log(`
|
|
\u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await he.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(w&&(console.log(`
|
|
${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Te=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Te.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Te.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Te.animeTitle)),{url:J,match:Te,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,L,"episode-aware");return!se&&!D&&A&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(`
|
|
${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),z=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(`
|
|
\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${z.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(z.length>0){let J=z[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(`
|
|
\u6240\u6709\u5F39\u5E55\u6E90\u5747\u672A\u5339\u914D\u6210\u529F`);if(j){w&&(console.log(`
|
|
=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await he.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Te=>Te?.p&&String(Te?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),y){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?>
|
|
<i>
|
|
`;for(let Te of se){let Ne=String(Te.m).trim();if(Ne){let je=Ne.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");ue+=` <d p="${Te.p}">${je}</d>
|
|
`}}ue+="</i>",w&&(console.log("\u8F6C\u6362\u540E\u7684\u5F39\u5E55\u6570\u91CF:",oe),console.log("XML\u6570\u636E\u5927\u5C0F:",ue.length,"\u5B57\u8282"),console.log("XML\u6570\u636E\u9884\u89C8:",ue.substring(0,500)),console.log(`=== \u5F39\u5E55\u5339\u914D\u5B8C\u6210 ===
|
|
`)),m.header("Content-Type","application/xml"),m.send(ue)}else messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:3}}),g()}catch(h){console.error(`
|
|
=== \u5F39\u5E55\u5339\u914D\u53D1\u751F\u9519\u8BEF ===`),console.error("\u9519\u8BEF\u7C7B\u578B:",h.name),console.error("\u9519\u8BEF\u4FE1\u606F:",h.message),console.error("\u9519\u8BEF\u5806\u6808:",h.stack),console.error(`=========================
|
|
`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,y)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return y(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return y(null,h);IM(p.server).then(b=>{if(!b?.autoPush)return y(null,h);try{if(p.url.endsWith("/detail")){let x=JSON.parse(g),A=Array.isArray(x?.list)?x.list[0]:null;if(!A||typeof A!="object")return y(null,h);let S=String(A.vod_play_from||""),I=String(A.vod_play_url||"");if(!S||!I)return y(null,h);let R=String(A.vod_name||"").trim(),N=String($y(R)||"").trim()||R;Gde={};let k=S.split("$$$").filter(Boolean);return I.split("$$$").filter(Boolean).forEach((B,M)=>{B.split("#").forEach(D=>{let[L,Z]=D.split("$");if(!Z)return;let W=k[M]||`\u7EBF\u8DEF${M+1}`;Gde[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:xR(L)}})}),y(null,h)}if(p.url.endsWith("/play")){let x=JSON.parse(g);if((x.url||x.url?.length||x.urls?.length)&&!x?.extra?.danmaku){let A=p.body||{},S=`${A.flag||""}_${A.id||""}`,I=Gde[S];if(I){x.extra||(x.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",I.name),R.searchParams.set("episodeNumber",I.episodeNumber),I.originalName&&R.searchParams.set("originalName",I.originalName),x.extra.danmaku=R.toString(),y(null,JSON.stringify(x))}}}}catch(x){console.error(x)}return y(null,h)}).catch(b=>(console.error(b),y(null,h)))})}var dW=Ce(fht(),1);var mht=Ce(Q0(),1),RR=Ce(Xn(),1);var qM="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",q_={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},pht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},aBr=async t=>{let e=RR.default.enc.Hex.stringify(RR.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},oBr=async(t,e)=>{let r=RR.default.enc.Hex.stringify(RR.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function hfe(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":qM}}),i=s.data.data.members.token,a=wl(s.headers["set-cookie"]),o=pht.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await mht.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=pht.decode(s);if(!i)return n.send({code:0,data:{status:q_.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":qM}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:q_.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:q_.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:q_.NEW}}):n.send({code:0,data:{status:q_.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:q_.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":qM,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(wl(i.headers["set-cookie"])));let a=await he.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":qM,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(wl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await aBr(r.server)})}),t.put("/cookie",async(r,n)=>{await oBr(r.server,r.body?.cookie??""),n.send({code:0})})}var NR=Ce(Xn(),1);var Qy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},hht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},cBr=async t=>{let e=NR.default.enc.Hex.stringify(NR.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},uBr=async(t,e)=>{let r=NR.default.enc.Hex.stringify(NR.default.MD5(t.config.uc.token)).toString(),n=fg(e),s=n?.refresh_token||n?.expires_at?mB(n):String(e||"");await t.db.push(`/uc/${r}`,s)};async function gfe(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=lo.DeviceID,a=kb(i,s),o=pB("GET",n,s,Wn.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},u=await he.get(`${Wn.api}${n}`,{params:{req_id:a,access_token:lo.AccessToken,app_ver:Wn.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,auth_type:"code",client_id:Wn.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=hht.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=hht.decode(n);if(!s)return r.send({code:0,data:{status:Qy.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=lo.DeviceID,u=kb(c,o),l=pB("GET",a,o,Wn.signKey),d={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":o,"x-pan-token":l,"x-pan-client-id":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},f=await he.get(`${Wn.api}${a}`,{params:{req_id:u,access_token:lo.AccessToken,app_ver:Wn.appVer,device_id:c,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,client_id:Wn.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=kb(lo.DeviceID,m),y=JSON.stringify({req_id:h,app_ver:Wn.appVer,device_id:lo.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,code:f.data.code}),g=await he.post(`${Wn.codeApi}${p}`,y,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}}),b=fg(g.data.data);g.data.code===200&&b?.access_token?r.send({code:0,data:{status:Qy.CONFIRMED,cookie:mB(b)}}):r.send({code:0,data:{status:Qy.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:Qy.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:Qy.EXPIRED}}):r.send({code:0,data:{status:Qy.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:Qy.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await cBr(e.server)})}),t.put("/token",async(e,r)=>{await uBr(e.server,e.body?.cookie??""),r.send({code:0})})}var ght=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",yht=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function yfe(t){t.get("/account",async(e,r)=>{let n=await ght(e.server,"cloud_account"),s=await ght(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await yht(e.server,"cloud_account",e.body.username),await yht(e.server,"cloud_password",e.body.password),r.send({code:0})})}var lBr=["https://www.leijing1.com"],dBr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||lBr,fBr=async(t,e)=>{await t.db.push("/leijing/urls",e)},pBr=async t=>{await t.db.delete("/leijing/urls")};async function Afe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await dBr(e.server)})}),t.put("/urls",async(e,r)=>{await fBr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await pBr(e.server),r.send({code:0})})}var _ht="https://api.oplist.org.cn",OR="https://oauth.litepan.top",mBr=5*60*1e3,xfe=new Map,Ns=async(t,e)=>{let r=await t.db.getObjectDefault("/pan123",{});return Object.prototype.hasOwnProperty.call(r||{},e)?r[e]:""},Qc=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)},mi=t=>String(t||"").trim(),Eht=t=>new Promise(e=>setTimeout(e,t));function hBr(t,e=!1){if(typeof t=="boolean")return t;if(typeof t=="string"){let r=t.trim().toLowerCase();if(["1","true","yes","on"].includes(r))return!0;if(["0","false","no","off"].includes(r))return!1}return e}function _fe(t){let e=t?.data?.token_data||t?.token_data||t?.data||t||{};return{accessToken:mi(e.access_token||e.accessToken||e.accessTokenStr),refreshToken:mi(e.refresh_token||e.refreshToken),expiresIn:e.expires_in||e.expiresIn||""}}function Ap(t,e){return t?.message||t?.detail||t?.error_description||t?.error||t?.text||e}function vht(t){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Aht(t){let e=mi(t),r=vht(e),n=JSON.stringify(e);return`<!doctype html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
|
<meta http-equiv="refresh" content="1;url=${r}">
|
|
<title>\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1</title>
|
|
<style>
|
|
html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
|
|
@supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }
|
|
body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
|
|
.panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }
|
|
h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.35; font-weight: 700; }
|
|
p { margin: 0; color: #4b5563; font-size: 16px; line-height: 1.7; }
|
|
a { color: #2563eb; text-decoration: none; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<main class="panel">
|
|
<h1>\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1</h1>
|
|
<p>\u8BF7\u7A0D\u5019\uFF0C\u9875\u9762\u5C06\u81EA\u52A8\u8DF3\u8F6C\u5230 OAuth \u6388\u6743\u9875\u3002</p>
|
|
<p><a href="${r}" rel="noreferrer">\u5982\u679C\u6CA1\u6709\u8DF3\u8F6C\uFF0C\u8BF7\u70B9\u8FD9\u91CC\u7EE7\u7EED</a></p>
|
|
</main>
|
|
<script>
|
|
window.setTimeout(function () {
|
|
window.location.replace(${n});
|
|
}, 120);
|
|
</script>
|
|
</body>
|
|
</html>`}function xht(t){return`<!doctype html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
|
<title>\u6388\u6743\u542F\u52A8\u5931\u8D25</title>
|
|
<style>
|
|
html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
|
|
@supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }
|
|
body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
|
|
.panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }
|
|
h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.35; font-weight: 700; }
|
|
p { margin: 0; color: #4b5563; font-size: 16px; line-height: 1.7; word-break: break-word; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<main class="panel">
|
|
<h1>\u6388\u6743\u542F\u52A8\u5931\u8D25</h1>
|
|
<p>${vht(t||"OAuth \u542F\u52A8\u5931\u8D25")}</p>
|
|
</main>
|
|
</body>
|
|
</html>`}function gBr(t){try{let e=new URL(t);return e.hostname==="www.123pan.com"&&e.pathname==="/auth"&&(e.hostname="yun.123pan.com"),e.toString()}catch{return t}}async function bfe(t,e={}){let r=mi(e.accessToken||e.access_token),n=mi(e.refreshToken||e.refresh_token);return r&&await Qc(t,"open_access_token",r),n&&await Qc(t,"open_refresh_token",n),(e.expiresIn||e.expires_in)&&await Qc(t,"open_expires_in",Number(e.expiresIn||e.expires_in)||""),{accessToken:r,refreshToken:n}}async function yBr(){let t=await he.get(`${_ht}/123cloud/requests`,{params:{server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(t.status>=400)throw new Error(Ap(t.data,`OpenList \u6388\u6743\u8BF7\u6C42\u5931\u8D25: ${t.status}`));let e=mi(t.data?.text||t.data?.data?.oauth_url||t.data?.oauth_url);if(!e)throw new Error(Ap(t.data,"OpenList \u672A\u8FD4\u56DE\u6388\u6743\u5730\u5740"));return gBr(e)}async function ABr(t){let e=await he.get(`${_ht}/123cloud/renewapi`,{params:{apps_types:"123cloud_oa",refresh_ui:t,server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400)throw new Error(Ap(e.data,`OpenList \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=_fe(e.data);if(!r.accessToken)throw new Error(Ap(e.data,"OpenList \u672A\u8FD4\u56DE access_token"));return r}async function xBr(){let t=await he.post(`${OR}/api/oauth/start`,{driver_type:"123\u4E91\u76D8Open",server_use:!0,callback_url:`${OR}/callback-popup`},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(t.status>=400||t.data?.success===!1)throw new Error(Ap(t.data,`LitePan OAuth \u542F\u52A8\u5931\u8D25: ${t.status}`));let e=t.data?.data||{},r=mi(e.session_id||e.sessionId),n=mi(e.oauth_url||e.oauthUrl);if(!r||!n)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE session_id \u6216 oauth_url");return{sessionId:r,oauthUrl:n,expiresIn:e.expires_in||e.expiresIn||""}}async function bBr(t){let e=await he.get(`${OR}/api/oauth/status/${encodeURIComponent(t)}`,{timeout:1e4,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan OAuth \u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${e.status}`));return e.data?.data||{}}async function _Br(t){let e=await he.post(`${OR}/api/oauth/confirm-received/${encodeURIComponent(t)}`,null,{timeout:8e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan Token \u63A5\u6536\u786E\u8BA4\u5931\u8D25: ${e.status}`));return e.data}async function EBr(t){let e=null;for(let r=0;r<3;r+=1)try{return await _Br(t)}catch(n){e=n,r<2&&await Eht((r+1)*1e3)}throw e}async function vBr(t,e={}){let r=mi(e.sessionId||e.session_id);return r?(await Qc(t,"litepan_oauth_session_id",r),await Qc(t,"litepan_oauth_completed_at",""),r):""}async function bht(t){let e=Number(await Ns(t,"litepan_oauth_completed_at"))||0;return!e||Date.now()-e>mBr||!mi(await Ns(t,"open_access_token"))?null:{status:"success",hasAccessToken:!0,hasRefreshToken:!!mi(await Ns(t,"open_refresh_token")),expiresIn:await Ns(t,"open_expires_in")||""}}async function Sht(t,e){let r=mi(e);if(!r)return await bht(t)||{status:"idle",error:""};let n=await bBr(r);if(n.status!=="success")return{status:n.status||"pending",error:n.error||n.message||""};let s=_fe(n);if(!s.accessToken)throw new Error("LitePan OAuth \u6210\u529F\u4F46\u672A\u8FD4\u56DE access_token");let i=await bfe(t,s);try{await EBr(r)}catch(a){let o=await bht(t);return o||{status:"pending",error:`\u7B49\u5F85 LitePan \u786E\u8BA4\u63A5\u6536 Token\uFF1A${a?.message||a}`,hasAccessToken:!!(i.accessToken||await Ns(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}return await Qc(t,"litepan_oauth_session_id",""),await Qc(t,"litepan_oauth_completed_at",Date.now()),{status:"success",hasAccessToken:!!(i.accessToken||await Ns(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}function SBr(t,e){let r=mi(e);if(!r||xfe.has(r))return;let n=(async()=>{for(let s=0;s<45;s+=1){let i=await Sht(t,r);if(i.status==="success"||i.status==="error")return;await Eht(s<3?2e3:s<10?3e3:4e3)}})().catch(s=>{t.log?.warn?.(`LitePan OAuth background poll failed: ${s?.message||s}`)}).finally(()=>{xfe.delete(r)});xfe.set(r,n)}async function IBr(t){let e=await he.post(`${OR}/api/oauth/refresh`,{driver_type:"123\u4E91\u76D8Open",refresh_token:t},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(Ap(e.data,`LitePan \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=_fe(e.data);if(!r.accessToken)throw new Error(Ap(e.data,"LitePan \u672A\u8FD4\u56DE access_token"));return r}async function Efe(t){t.get("/account",async(e,r)=>{let n=await Ns(e.server,"pan_passport"),s=await Ns(e.server,"pan_password"),i=await Ns(e.server,"use_direct_download"),a=await Ns(e.server,"open_access_token"),o=await Ns(e.server,"open_refresh_token");r.send({code:0,data:{username:n,password:s,useDirectDownload:hBr(i,!0),accessToken:a,refreshToken:o}})}),t.put("/account",async(e,r)=>{await Qc(e.server,"pan_passport",e.body.username),await Qc(e.server,"pan_password",e.body.password),await Qc(e.server,"use_direct_download",e.body.useDirectDownload===!0),await Qc(e.server,"open_access_token",mi(e.body.accessToken)),await Qc(e.server,"open_refresh_token",mi(e.body.refreshToken)),r.send({code:0})}),t.get("/oauth/openlist/redirect",async(e,r)=>{try{let n=await yBr();r.type("text/html; charset=utf-8").send(Aht(n))}catch(n){r.code(500).type("text/html; charset=utf-8").send(xht(n?.message||String(n)))}}),t.post("/oauth/openlist/refresh",async(e,r)=>{try{let n=mi(await Ns(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await ABr(n),i=await bfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await Ns(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.get("/oauth/litepan/redirect",async(e,r)=>{try{let n=await xBr();if(!n?.sessionId||!n?.oauthUrl)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE\u6388\u6743\u4F1A\u8BDD");await vBr(e.server,n),SBr(e.server,n.sessionId),r.type("text/html; charset=utf-8").send(Aht(n.oauthUrl))}catch(n){r.code(500).type("text/html; charset=utf-8").send(xht(n?.message||String(n)))}}),t.get("/oauth/litepan/status/latest",async(e,r)=>{try{let n=mi(await Ns(e.server,"litepan_oauth_session_id"));r.send({code:0,data:await Sht(e.server,n)})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.post("/oauth/litepan/refresh",async(e,r)=>{try{let n=mi(await Ns(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await IBr(n),i=await bfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await Ns(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await Ns(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}})}var Hy=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",bd=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},vfe=(t="")=>String(t||"").trim();async function Sfe(t){t.get("/account",async(e,r)=>{let n=await Hy(e.server,"xun_username"),s=await Hy(e.server,"xun_password"),i=!!await Hy(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await bd(e.server,"xun_username",e.body.username||""),await bd(e.server,"xun_password",e.body.password||""),await bd(e.server,"xun_auth",""),await bd(e.server,"xun_refresh_token",""),await bd(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await Hy(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=vfe(e.body?.username),s=vfe(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await bd(e.server,"xun_username",n),await bd(e.server,"xun_password",s),await bd(e.server,"xun_auth",""),await bd(e.server,"xun_refresh_token",""),await bd(e.server,"xun_user_id",""),await Ub(e),await bg.getDownload_auth();let i=!!await Hy(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!vfe(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await Ub(e),!await Hy(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await bg.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await Ub(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await bg.getVerify(n);let s=!!await Hy(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var Tht=Ce(Q0(),1),Ife=Ce(Xn(),1),wht=Ce(oC(),1),Rht="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Pa={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Iht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},Cht=null;function Nht(t){return Ife.default.enc.Hex.stringify(Ife.default.MD5(t.config.ali.token)).toString()}var CBr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[Nht(t)]||"").trim()},TBr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${Nht(t)}`,r)};function wBr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function RBr(t){let e=String(t||"").toUpperCase();return e===Pa.CONFIRMED?Pa.CONFIRMED:e===Pa.SCANNED||e==="SCANED"?Pa.SCANNED:e===Pa.CANCELED||e==="CANCELLED"?Pa.CANCELED:e===Pa.NEW?Pa.NEW:Pa.EXPIRED}async function NBr(){return(await he.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{headers:{"User-Agent":Rht}})).data?.content?.data}async function OBr(t){return(await he.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",wht.default.stringify(wBr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":Rht,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function kBr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function PBr(t){let e=await OBr(t);if(!e)return{status:Pa.EXPIRED};let r=RBr(e.qrCodeStatus);if(r!==Pa.CONFIRMED)return{status:r};let n=kBr(e);return n?{status:Pa.CONFIRMED,cookie:n}:{status:Pa.EXPIRED}}async function Cfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await NBr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");Cht={ck:n.ck,t:n.t};let s=Iht.encode(Cht),i=await Tht.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=Iht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Pa.EXPIRED}});try{let s=await PBr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Pa.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await CBr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await TBr(e.server,n),r.send({code:0})})}var xvn=Ce(Q0(),1),_vn=Ce(Xn(),1);var j_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Gy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Oht={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},DBr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Tfe=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function BBr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function wfe(t){t.get("/qrcode",async(r,n)=>{try{let s=BBr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await fe.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=Oht.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await fe.get(f,{responseType:"arraybuffer",headers:{"User-Agent":j_}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=Oht.decode(s);if(!i)return n.send({code:0,data:{status:Gy.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await fe.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:Gy.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:Gy.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:Gy.NEW}});if(d.errno===2)return n.send({code:0,data:{status:Gy.EXPIRED}})}}n.send({code:0,data:{status:Gy.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:Gy.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await fe.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([A,S])=>`${A}=${S}`).join("; "),x=(await fe.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:A=>A===302||A===200})).headers.location;if(x){let S=(await fe.get(x,{headers:{"User-Agent":j_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],I="";if(S){let w=S.find(N=>N.toLowerCase().includes("stoken"));w&&(I=w.split(";")[0])}let R=I?`BDUSS=${f};${I};`:`BDUSS=${f};STOKEN=${p};`;return await Tfe(n,R),R}else{let A=`BDUSS=${f};STOKEN=${p};`;return await Tfe(n,A),A}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await DBr(r.server)})}),t.put("/cookie",async(r,n)=>{await Tfe(r.server,r.body?.cookie??""),n.send({code:0})})}var Bht=require("crypto");var Lht=Ce(Q0(),1),Mht="https://account.guangyapan.com",Rfe="aMe-8VSlkrbQXpUR",kht="0123456789abcdef0123456789abcdef",xp={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},LBr="urn:ietf:params:oauth:grant-type:device_code",Pht={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},jM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",kR=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Wht(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function oa(t){return String(t||"").trim()}function MBr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function WBr(t){let e=MBr(await jM(t,"device_id"));if(e)return e;let r=kht;try{r=(0,Bht.randomBytes)(16).toString("hex")}catch{r=kht}return await kR(t,"device_id",r),r}function $ht(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Rfe,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function $Br(t){let e=oa(t?.access_token||t?.accessToken),r=oa(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function UBr(t,e){let{accessToken:r,refreshToken:n}=$Br(e);if(t>=200&&t<300&&(n||r))return{status:xp.CONFIRMED,accessToken:r,refreshToken:n};let s=oa(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:xp.NEW}:s==="access_denied"?{status:xp.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:xp.EXPIRED}:{status:xp.NEW}}function FBr(t){let e=oa(t?.refreshToken);return e||oa(t?.accessToken)}async function qBr(t){let e=await he.post(`${Mht}/v1/auth/device/code`,{scope:"user",client_id:Rfe},{headers:$ht(t),validateStatus:()=>!0}),r=Wht(e.data),n=oa(r?.device_code),s=oa(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function jBr(t){let e=await he.post(`${Mht}/v1/auth/token`,{grant_type:LBr,device_code:t.deviceCode,client_id:Rfe},{headers:$ht(t.deviceId),validateStatus:()=>!0});return UBr(e.status,Wht(e.data))}async function Dht(t,e){let r=oa(e?.accessToken),n=oa(e?.refreshToken);n&&await kR(t,"refresh_token",n),r&&await kR(t,"access_token",r)}function QBr(t){let e=oa(t?.cookie),r=oa(t?.accessToken||t?.data?.accessToken),n=oa(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=oa(i?.accessToken||i?.access_token),n=oa(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Nfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await WBr(e.server),s=await qBr(n),i=Pht.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Lht.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=Pht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:xp.EXPIRED}});try{let s=await jBr(n);if(s.status===xp.CONFIRMED)return await Dht(e.server,s),r.send({code:0,data:{status:xp.CONFIRMED,cookie:FBr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:xp.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await jM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Dht(e.server,QBr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await jM(e.server,"access_token"),refreshToken:await jM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await kR(e.server,"access_token",oa(e.body?.accessToken)),await kR(e.server,"refresh_token",oa(e.body?.refreshToken)),r.send({code:0})})}var QM=Ce(require("crypto"),1),So=Ce(Xn(),1),jht="https://user-njs.yun.139.com/user",Pfe="7.17.4",HBr="mCloud_4.3.0_536",Ofe=670,GBr=292,Qht=So.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Uht=`||9|${Pfe}|chrome||0||windows 10||zh-CN|||`,Dfe=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Da=(t="")=>String(t||"").trim(),kfe=(t="")=>QM.default.createHash("md5").update(String(t)).digest("hex"),zBr=(t="")=>QM.default.createHash("sha1").update(String(t)).digest("hex"),KBr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},VBr=t=>{try{return JSON.parse(t)}catch{return null}},Fht=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),YBr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||KBr(t):t==null?e:String(t),Q_=(t="")=>{let e=Da(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},Bfe=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=YBr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},JBr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},XBr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),ZBr=(t={})=>{let e=String(Date.now()),r=JBr(16),n=kfe(Buffer.from(XBr(t)).toString("base64")),s=kfe(`${e}:${r}`);return`${e},${r},${kfe(n+s).toUpperCase()}`},eLr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Pfe}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":Pfe,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":ZBr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Hht=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw Bfe(e);return e},tLr=(t={})=>{let e=So.default.lib.WordArray.random(16),r=So.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=So.default.AES.encrypt(r,Qht,{iv:e,mode:So.default.mode.CBC,padding:So.default.pad.Pkcs7});return So.default.enc.Base64.stringify(e.concat(n.ciphertext))},rLr=(t="")=>{let e=So.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=So.default.AES.decrypt(So.default.enc.Base64.stringify(e),Qht,{iv:r,mode:So.default.mode.CBC,padding:So.default.pad.Pkcs7}).toString(So.default.enc.Utf8);return JSON.parse(s)},Ght=(t="")=>{if(typeof t!="string")return t;try{return rLr(t)}catch(e){let r=VBr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Fht(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Fht(t)||e?.message||String(e)}`})}},nLr=t=>{let e=Ght(t?.data);return Hht({data:e})},sLr=t=>{let e=QM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},iLr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(sLr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},aLr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),qht=async(t,e,r={})=>{try{let n=await he.post(`${jht}${t}`,e,{timeout:3e4,headers:eLr(e,r)});return Hht(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw Bfe(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},oLr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await he.post(`${jht}${t}`,tLr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Uht,"x-yun-client-info":n||Uht,"x-yun-app-channel":"10000034",...s}});return nLr(i)}catch(i){if(i?.response?.data){let a=Ght(i.response.data);throw Bfe(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},PR=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",_d=async(t,e,r)=>{let n=e==="authorization"?Dfe(r):Da(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},zht=async t=>{globalThis.YidongAuthorization=Dfe(await PR(t,"authorization"))};async function Lfe(t){t.get("/authorization",async(e,r)=>{let n=Dfe(await PR(e.server,"authorization")),s=Da(await PR(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await _d(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Da(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:Ofe},a=await qht("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Da(a?.data?.random||a?.random||s);await _d(e.server,"phone",n),await _d(e.server,"smsRandom",o),await _d(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:Q_(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:Q_(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await _d(e.server,"phone",n),await _d(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:Q_(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Da(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Da(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Da(await PR(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await oLr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:Ofe,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Da(d?.data?.random||d?.random||u);await _d(e.server,"phone",n),await _d(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:Q_(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:Q_(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Da(e.body?.phone),i=Da(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Da(await PR(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:GBr,clienttype:Ofe,version:HBr,pintype:5,secinfo:zBr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await qht("/thirdlogin",a,{"x-NationCode":"+86"}),c=iLr(o.data),u=Da(c.account||s),l=Da(c.token||c.authToken),d=aLr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await _d(e.server,"phone",s),await _d(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:Q_(e.body?.phone),codeLength:Da(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var HM=[{key:"quark",name:"\u5938\u514B",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.a0d60e6a72806738e6f0b711a979bdf5?rik=lp5C9t5sYlkrLw&riu=http%3a%2f%2fpic.2265.com%2fupload%2f2020-10%2f202010151719492792.png&ehk=Pv6rq3JxJvKe2y1QsdzssyZ4Ez4cwiKWmIvK0aMgxi0%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],Mfe=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>HM.some(s=>s.key===n.key)).concat(HM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...HM.find(i=>i.key===n.key),...n}))},cLr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},uLr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=HM};async function Wfe(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Mfe(e.server)})}),t.put("/list",async(e,r)=>{await cLr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await uLr(e.server),r.send({code:0})})}var Kht=Ce(NI(),1);async function $fe(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,Kht.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Vht=Ce(require("crypto"),1);function Ft(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Jr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function Ufe(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function lLr(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function Io(t,e){let r=Ufe(t,"$$$"),n=Ufe(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=Ufe(n[a]||"","#").map(lLr).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function zy(t,e=1){let r=Number.parseInt(xR(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function dLr(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=qfe(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>qfe(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Ffe(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function qfe(t=""){let e=String(t||"").trim();if(!e)return"";if(Ffe(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Ffe(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Ffe(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function km(t,e=""){let r=t?.url||"";Array.isArray(r)?r=dLr(r,e):r=qfe(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Hu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ba(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Hu(r,60);return n.slice(s,s+i)}function as(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function H_(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(æ›´æ–°|第\s*\d+\s*[é›†è¯æœŸ]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function Us(){return new Date().toISOString()}function fLr(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function pLr(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function mLr(t){let e=t.query||{},r=pLr(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function hLr(t){let e=Us();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function gLr(t,e,r){let n=Us();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function jfe(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=fLr(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Vht.default.randomBytes(24).toString("hex"),f=mLr(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=hLr(c),y=gLr(c,h,f);return{User:h,SessionInfo:y,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:Us(),LastActivityDate:Us()}))}async function Qfe(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var Yht=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!Yht.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function Fs(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!Yht.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Hfe(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:as(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function Gfe(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>Hfe(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Ad(t)).map(n=>{let s=Hfe(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>{let s=Hfe(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var yLr="/embyPlayback",ALr=.92,xLr=1500;function GM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function zfe(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function bLr(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function zM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function Pm(t){let e=t?.embyContext;return!e||typeof e!="object"?zM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=zM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function Ky(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function bp(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(GM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(GM(r.playbackPositionTicks,0))),lastPlayedDate:bLr(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function Jht(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function _Lr(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function Zht(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=_Lr(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function ELr(t={}){let e=Zht(t);return e?{...e,l:Number(t.l||0)}:null}function vLr(t={}){let e=Zht(t);return e?wn("vod",e):""}function SLr(t={}){let e=ELr(t);return e?wn("sea",e):""}function egt(t){return t?.type==="ep"||t?.type==="media"}function ILr(t,e){if(!egt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function tgt(t,e,r,n={}){let s=Fs(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=Pm(t),a=Ky(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:bp(u,c),decoded:Fs(c)})).filter(({record:c,decoded:u})=>!ILr(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>Jht(u.record)-Jht(c.record))}function DR(t,e,r,n={}){return tgt(t,e,r,n)[0]||null}async function Xht(t){try{if(!t?.db?.push)return;await t.db.push(yLr,Pm(t))}catch{}}function KM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),Xht(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await Xht(t)},xLr))}}function CLr(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function TLr(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(GM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function wLr(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(GM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function RLr(t,e,r,n){return zfe(t?.Played,!1)||zfe(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=ALr}function NLr(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=Pm(t),i=Ky(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:bp(a,n)}function Xo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return as(n);let i=NLr(t,e,s),o=DR(t,e,s)?.record||null||i;return o?as({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):as(n)}function qs(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Xo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function BR(t,e,r={},n="progress"){let s=CLr(r);if(!s)return null;let i=Pm(t),a=Ky(i,e);if(!a)return null;let o=bp(a.items[s],s),c=TLr(r),u=wLr(r),l=RLr(r,n,c,u),d=bp(o,s);d.lastPlayedDate=Us(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=zfe(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,KM(t,n==="stopped"),d}async function rgt(t,e,r,n){let s=String(r||"").trim();if(!s)return as();let i=Pm(t),a=Ky(i,e);if(!a)return as();let o=bp(a.items[s],s),c=bp(o,s);return c.played=!!n,c.lastPlayedDate=Us(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,KM(t,!0),Xo(t,e,s)}async function ngt(t,e,r,n){let s=String(r||"").trim();if(!s)return as();let i=Pm(t),a=Ky(i,e);if(!a)return as();let o=bp(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=Us(),a.items[s]=o,KM(t,!0),Xo(t,e,s)}async function sgt(t,e,r){let n=String(r||"").trim();if(!n)return as();let s=Pm(t),i=Ky(s,e);if(!i)return as();let a=new Set([n,...tgt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=bp(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=Us(),i.items[o]=c}return KM(t,!0),Xo(t,e,n)}function OLr(t=""){let e=Fs(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function kLr(t){if(t?.name)return String(t.name);let e=Fs(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function PLr(t,e,r,n){let s=Fs(String(n?.itemId||""));if(egt(s)){let a=vLr(s.payload||{});if(a){let o=SLr(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||Us(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Xo(t,e,a)}}}let i=OLr(n.itemId);return{Name:kLr(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||Us(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Xo(t,e,n.itemId)}}function DLr(t={}){let e=Fs(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function igt(t,e,r){let n=Pm(t),s=Ky(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>bp(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=PLr(t,e,r,c),l=DLr(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var BLr="https://api.themoviedb.org/3",agt=8e3,LLr=2,ogt=20,cgt=20;function ugt(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function LR(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:agt}}function lgt(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function MLr(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:cgt,lastRefillAt:Date.now()}),e.tmdbClientState}function WLr(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(cgt,t.tokens+r*ogt),t.lastRefillAt=e)}async function $Lr(t){let e=MLr(t);for(;;){if(WLr(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/ogt*1e3));await ugt(n)}}function ULr(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function FLr(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function Vy(t){return!!LR(t)}function MR(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${LR(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function WR(t,e,r={},n={}){let s=LR(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??LLr)||0);for(let o=0;o<=a;o+=1){await $Lr(t);try{return(await he.get(`${BLr}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||agt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!ULr(c))return null;await ugt(FLr(c,o))}}return null}async function dgt(t,e,r=null){return WR(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function fgt(t,e,r=null){return WR(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function pgt(t,e){let r=LR(t);return WR(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:lgt(r?.language||"zh-CN")})}async function mgt(t,e){let r=LR(t);return WR(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:lgt(r?.language||"zh-CN")})}async function hgt(t,e,r){return WR(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function ggt(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function qLr(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!ï¼??,,'"/\\()[\]{}ã€ã€‘《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function Agt({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of ggt(t)){let n=Number.parseInt(Tde(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of ggt(e)){let n=qLr(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function jLr(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function ygt(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):kz(t,e).length/Math.max(t.length,e.length)}function Yy(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function Kfe(t=""){let e=Mn(t);return Mn($y(e)||e).toLowerCase().replace(/[·•::\-_.!ï¼??,,'"/\\()[\]{}ã€ã€‘《》\s]+/g,"").replace(/第[一二三四五å…七八ä¹å百åƒä¸‡äº¿\d]+å£/g,"").replace(/年番总集篇|年番åˆé›†ç¯‡|总集篇|åˆé›†ç¯‡|年番/g,"")}function xgt(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn($y(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=Agt({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:Kfe(r||e),altTitle:n,year:Yy(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function Vfe(t={},e=null){let r=Agt({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function bgt(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function QLr(t={},e="tv"){return Yy(e==="movie"?t?.release_date:t?.first_air_date)}function HLr(t,e,r){let n=Kfe(t?.cleanedTitle||t?.rawTitle||""),s=jLr(n,t,r),i=Kfe(bgt(e,r)),a=ygt(n,i),o=ygt(s,i);return Math.max(a,o)}function GLr(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=QLr(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function zLr(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Tde(bgt(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function KLr(t,e,r="tv"){let n=HLr(t,e,r),s=GLr(t,e,r),i=zLr(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function _gt(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=KLr(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function VM(t={},e=null,r=0){return Vfe(t,e).seasonNumber}var Xy={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function Jfe(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:TM({max:1200}),pending:new Map}),e.tmdbStore}function Yfe(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function VLr(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function YLr(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function JLr(t,e){try{let r=await t.db?.getObjectDefault(Yfe(e),null);return!r||typeof r!="object"?null:YLr(r)?(t.db?.delete&&await t.db.delete(Yfe(e)).catch(()=>{}),null):r}catch{return null}}async function Jy(t,e,r={}){let n=Jfe(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await JLr(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function G_(t,e,r,n=0,s={}){if(Jfe(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(Yfe(e),VLr(r,n))}catch{}return r}async function Xfe(t,e,r,n,s={}){let i=await Jy(t,e,s);if(i!==null)return i;let a=Jfe(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await Jy(t,e,s);if(c!==null)return c;let u=await n();return u!=null?G_(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function Gu(t=""){return String(t||"").trim()}function XLr(t=""){let e=Yy(t);return e?String(e):""}function Zy(t={},e={}){let r=t&&typeof t=="object"?t:{},n=Gu(e?.n),s=Gu(e?.r),i=XLr(e?.y||e?.vod_year),a=Gu(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!Gu(r.vod_name)&&n&&(r.vod_name=n),!Gu(r.vod_remarks)&&s&&(r.vod_remarks=s),!Gu(r.vod_year)&&i&&(r.vod_year=i),!Gu(r.vod_pic)&&a&&(r.vod_pic=a),r}function ZLr(t={}){let e=Gu(t?.v);return e?Zy({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Kn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function epe(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function tpe(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function e5r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function t5r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function r5r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function n5r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function s5r(t=""){return String(t||"").trim().toLowerCase()}function i5r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=s5r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function YM(t={}){let e=i5r(t);return e.length&&e[0]?.filePath||""}function a5r(t="",e="",r=0){let n=Kn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function o5r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=MR(t,e?.profile_path||""),i=Number(e?.id||0),a=a5r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Kn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function c5r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(o5r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function u5r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function Egt(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function l5r(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),Egt(r)}return Egt(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function d5r(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function f5r(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function p5r(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function m5r(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function Sgt(t){return`failure:${t}`}function _p(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function Igt(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function Cgt(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function Zfe(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Kn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function h5r(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Kn({id:Number(s?.id||0)||void 0,title:Igt(s,e),date:Cgt(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Kn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function vgt(t=null){if(!t?.candidate)return null;let e=t.candidate;return Kn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Kn({id:Number(e?.id||0)||void 0,title:Igt(e,t.mediaType||"tv"),date:Cgt(e,t.mediaType||"tv")}),breakdown:Kn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function g5r(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:H_(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function y5r(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await fgt(t,c,e?.year):await dgt(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Kn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function z_(t,e,r,n={}){if(!Vy(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=d5r(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await Jy(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(_p(t,"tmdb.match.binding.cache.reject",Kn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(_p(t,"tmdb.match.binding.cache.hit",Kn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=xgt(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(_p(t,"tmdb.match.input",Kn({...s,input:Zfe(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return _p(t,"tmdb.match.skip.invalid_input",Kn({...s,input:Zfe(c)})),null;let l=m5r(c),d=await Jy(t,l);if(d)return _p(t,"tmdb.match.skip.no_match_cache",Kn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of g5r(r,n)){let{results:h,queryLogs:y}=await y5r(t,c,m),g=_gt(c,h,m);if(_p(t,"tmdb.match.round",Kn({...s,mediaType:m,queryLogs:y,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:h5r(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,x=Kn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?Yy(b.release_date):Yy(b.first_air_date),updatedAt:Date.now()});return await G_(t,i,x,Xy.BINDING),_p(t,"tmdb.match.binding.set",Kn({...s,mediaType:m,tmdbId:Number(x.tmdbId||0)||void 0,score:Number.isFinite(Number(x.score))?Number(x.score):void 0,matchedTitle:String(x.matchedTitle||""),matchedYear:Number.isFinite(Number(x.matchedYear))?Number(x.matchedYear):void 0,best:vgt({mediaType:m,...g.best,status:g.status})})),x}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await G_(t,l,p,f?.score>=.5?15*60*1e3:Xy.NO_MATCH),_p(t,"tmdb.match.no_match_set",Kn({...s,noMatch:p,best:vgt(f),input:Zfe(c)})),null}async function Tgt(t,e={},r={}){try{if(!Vy(t))return null;let n=xd(e),s=ZLr(e);return!n?.spiderKey||!s?.vod_id?null:Dgt(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function K_(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=f5r(e.mediaType,e.tmdbId,r),s=Sgt(n);if(await Jy(t,s))return null;let i=await Xfe(t,n,Xy.DETAIL,async()=>{let a=e.mediaType==="movie"?await mgt(t,e.tmdbId):await pgt(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await G_(t,s,{failedAt:Date.now()},Xy.FAILURE),null)}async function A5r(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=p5r(e.tmdbId,r,n),i=Sgt(s);if(await Jy(t,i))return null;let a=await Xfe(t,s,Xy.SEASON,async()=>{let o=await hgt(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await G_(t,i,{failedAt:Date.now()},Xy.FAILURE),null)}function x5r(t={},e=null){let r=[Gu(t?.tmdbHintTitle||t?.vod_name),Gu(t?.tmdbHintRemarks||t?.vod_remarks),Gu(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function b5r(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function _5r(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>b5r(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function wgt(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function E5r(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=wgt(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=x5r(e,r),u=_5r(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function $R(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await K_(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=Vfe(r,n),c=E5r(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await A5r(t,e,u);return _p(t,"tmdb.match.season_resolve",Kn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Kn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function Rgt(t,e,r={},n=null){let s=await $R(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function v5r(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?wgt(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=n5r(t,s),f=YM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Kn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:t5r(t?.genres),GenreItems:r5r(t?.genres),People:c5r(t,r),ProviderIds:u5r(t),CommunityRating:epe(t?.vote_average),RunTimeTicks:e5r(l),OfficialRating:l5r(t,s),PremiereDate:tpe(u),ProductionYear:Yy(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function S5r(t,e){return Kn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:tpe(t?.air_date),CommunityRating:epe(t?.vote_average)})}function I5r(t,e,r,n){return Kn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:epe(e?.vote_average),PremiereDate:tpe(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function Ngt(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r<n.length?n[r]:null)}function Ogt(t,e,r){let n=zy(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 kgt(t,e={}){if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await $R(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function Pgt(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=Ogt(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=Ngt(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?I5r(t.seasonDetail,n,t.seasonNumber,r):null}async function C5r(t,e){let r=e?.payload||{},n=xd(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await qc(t,n,s).catch(()=>null),a=Zy({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=jc(i)||a;return Zy(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:Io(o?.vod_play_from,o?.vod_play_url)}}function T5r(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function w5r(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function R5r(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?YM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Dgt(t,e={}){try{if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await K_(t,r);if(!n)return null;let s=await Rgt(t,r,e?.vod||{},n);return v5r(n,r,t,s)}catch{return null}}async function N5r(t,e={}){try{if(!Vy(t))return null;let r=await z_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await K_(t,r);if(!n)return null;let s=await $R(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?S5r(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function UR(t,e={}){try{let r=await kgt(t,e);return r?Pgt(r,e):null}catch{return null}}async function JM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await kgt(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>Pgt(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function XM(t,e,r={}){return e==="vod"?Dgt(t,r):e==="season"?N5r(t,r):e==="episode"?UR(t,r):null}async function Bgt(t,e,r="Primary"){try{if(!Vy(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await C5r(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await z_(t,s,i,{});if(!c)return"";let u=await K_(t,c);if(!u)return"";let l=await Rgt(t,c,i,u);return MR(t,T5r(u,o,l||null))}if(e?.type==="sea"){let c=await z_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await K_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await $R(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?MR(t,w5r(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await z_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await K_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await $R(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),y=m?.seasonDetail||null;if(!y)return"";let g=Ogt(p?.name,d,h),b=Ngt(y,g,d);return b?MR(t,R5r(u,b,o)):""}return""}catch{return""}}var Ugt=!0,O5r=new Set(["tgchannel","tgsou","pansou","panta"]),k5r=!1,P5r=8e3;function D5r(t){return O5r.has(String(t||""))}function B5r(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function L5r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Lgt(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function ZM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:as()}}function M5r(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:as()}}var Fgt=new Set(["movie","series","video","episode","musicvideo"]);function Mgt(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function W5r(t=[],e=!1){return e?!0:t.some(r=>Fgt.has(r))}function $5r(t=[]){return t.some(e=>Fgt.has(e))}function U5r(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function F5r(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function qR(t=[],e=[]){return e.length?t.filter(r=>F5r(r,e)):t}function FR(t,e,r){return!r||!r.Id||(r.UserData=Xo(t,e,String(r.Id||""),r.UserData||{})),r}function Wgt(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s<n;s+=1)r.forEach(i=>{i[s]&&e.push(i[s])});return e}function $gt(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),P5r)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function rW(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await L_(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,y=u%m,g=[],b=h,x=!1,A=!1,S=Number(d?.pagecount||0),I=Number(d?.total||0),R=h+Math.max(3,Math.ceil((y+l)/m)+2);for(;g.length<l&&b<=R;){let M=b===1?d:await L_(t,e,r,b,{},c).catch(()=>null),D=Array.isArray(M?.list)?M.list:[],L=qR(D.map(ue=>sW(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(S=Math.max(S,Z));let W=Number(M?.total||0);W>0&&(I=Math.max(I,W));let U=b===h?y:0,z=L.slice(U),j=l-g.length;g.push(...z.slice(0,j));let J=Math.min(z.length,j);x=U+J>=L.length;let se=L.length===0,oe=S>0&&b>=S&&x;if(se||oe){A=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(I)&&I>0&&I<9e3,N=g.length>=l;N&&A&&(N=!1),N&&S>0&&b>=S&&x&&(N=!1),N&&w&&u+g.length>=I&&(N=!1);let k=u+g.length+(N?1:0),B=k;return w&&(B=Math.max(I,u+g.length),N&&(B=Math.max(B,k))),{rows:g,totalRecordCount:B}}async function rpe(t,e,r,n,s=[],i=0,a=16,o=null){let c=await bR(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return rW(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=qR(l.map(f=>sW(e,f,r,n)),s);return{rows:Ba(d,i,a),totalRecordCount:d.length}}function qgt(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function jgt(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function q5r(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=jgt(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=qgt(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:as()}}function sW(t,e,r,n,s={}){if(jgt(e))return q5r(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=qgt(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Ugt?"Series":H_(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:as()}}async function j5r(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;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),y={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:as()},b=`s${VM(r,p,f)}`,x=d.get(b);x===void 0&&(x=await XM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,x)),x&&Object.assign(y,x),l.push(y)}return l}async function Q5r(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 JM(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:m,episodeOffset:0});for(let y=0;y<m.length;y+=1){let g=m[y],b=zy(g?.name,y+1),x={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:y,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(x.n=l),d&&(x.u=d),f&&(x.r=f),p&&(x.y=p);let A=wn("ep",x),S=await spe(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:y,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${y+1}\u96C6`,Id:A,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:A},BackdropImageTags:[],UserData:as(),MediaSources:[S],...h[y]||{}})}return u}function V_(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function eW(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function nW(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function npe(t={},e=""){let r=Io(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=Ugt?r.length>0:r.length>1||n>1||H_(t)==="Series";return{lines:r,isSeries:s}}function H5r(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function G5r(t,e,r="mkv"){return`${H5r(t)}/emby${Qgt(t,e,r,!0)}`}function Qgt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function spe(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=D5r(r?.k)?"m3u8":"mkv",a=Lgt(String(r?.p||""),i),o=G5r(e,s,a),c=Qgt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(k5r&&B5r(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await Rm(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=km(m||{},String(n||""));h.url&&L5r(h.url)&&(a=Lgt(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function z5r(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?spe(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function K5r(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=Io(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function tW(t,e,r=null){let n=V_(e);if(!n.spiderKey||!e.v)return null;let s=await qc(t,n,String(e.v),r).catch(()=>null),i=jc(s);if(!i)return null;Zy(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=K5r(i,e);let{lines:a,isSeries:o}=npe(i,n.spiderKey);return nW(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:H_(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function ipe(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=Us();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Ad(t);return Ft(r.map(n=>ZM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Jr(r,["StartIndex","startindex"],0)),s=Hu(Jr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=igt(t,i,t.embyContext.config.serverId);return Ft(Ba(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["ParentId","parentid"],"")),a=Hu(Jr(r,["Limit","limit"],16),16),o=Mgt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Ad(t),l=Fs(i);if(l?.type==="lib"){let h=V_(l.payload),y=Fy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await rpe(t,y,i,n,o,0,a,e);return qs(t,s,g.rows)}if(l?.type==="cat"){let h=V_(l.payload),y=Fy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await rW(t,y,String(l.payload.c||""),0,a,i,n,o,e);return qs(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>$gt(rpe(t,h,ZM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Wgt(p).slice(0,a);return qs(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ft([]);let a=String(Jr(r,["ParentId","parentid"],"")),o=String(Jr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Jr(r,["StartIndex","startindex"],0)),u=Hu(Jr(r,["Limit","limit"],60),60),l=Number(Jr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=Mgt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Jr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Ad(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async A=>{try{let S=await Promise.race([bmt(t,A,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(S?.list)?S.list:[]).forEach(R=>b.push(sW(A,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let x=qs(t,s,qR(b,d));return Ft(Ba(x,c,u),x.length)}if(!a&&f&&($5r(d)||p.includes("video"))){let y=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),x=(await Promise.allSettled(m.map(S=>$gt(rpe(t,S,ZM(S,n).Id,n,y,0,g,e))))).filter(S=>S.status==="fulfilled").map(S=>S.value.rows),A=qs(t,s,Wgt(x));return Ft(Ba(A,c,u),A.length)}if(!a){let y=qs(t,s,m.map(g=>ZM(g,n)));return Ft(Ba(y,c,u),y.length)}let h=Fs(a);if(!h)return Ft([]);if(h.type==="lib"){let y=V_(h.payload),g=Fy(m,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},b=await bR(t,g,e).catch(()=>null),x=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(x.length&&(U5r(d,f,i)||!W5r(d,f))){let R=x.map(N=>M5r(g,N,a,n)),w=qs(t,s,qR(R,d));return Ft(Ba(w,c,u),w.length)}if(x.length){let R=String(x[0].type_id||"");if(R){let w=await rW(t,g,R,c,u,a,n,d,e);return qs(t,s,w.rows),Ft(w.rows,w.totalRecordCount)}}let S=(Array.isArray(b?.list)?b.list:[]).map(R=>sW(g,R,a,n)),I=qs(t,s,qR(S,d));return Ft(Ba(I,c,u),I.length)}if(h.type==="cat"){let y=V_(h.payload),g=Fy(m,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},b=String(h.payload.c||""),x=await rW(t,g,b,c,u,a,n,d,e);return qs(t,s,x.rows),Ft(x.rows,x.totalRecordCount)}if(h.type==="vod"){let y=await tW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:b}=y,{lines:x,isSeries:A}=npe(b,g.spiderKey);if(!x.length)return Ft([]);if(A){let S=await j5r(t,g,b,x,a,n);return qs(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}if(h.type==="sea"){let y=await tW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:b}=y,x=Io(b.vod_play_from,b.vod_play_url);if(!x.length)return Ft([]);let A=Number(h.payload.l||0),S=await Q5r(t,e,g,b,x,A,a,n);return qs(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await tW(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=Io(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=zy(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),y=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await spe(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return nW(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:y.length,canPlay:!0}),FR(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:Us(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW(),...f?await UR(t,{spiderRef:V_(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:y})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return FR(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:Us(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return FR(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),...eW({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=Tgt(t,n.payload).catch(()=>null),a=await tW(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=npe(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([z5r(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return nW(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),FR(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:Us(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((y,g)=>y+(g?.episodes?.length||0),0):void 0,...eW({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return FR(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Xo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;nW(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return sgt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return ngt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return rgt(t,n,String(e.params.itemId||""),e.method==="POST")})}var V5r=30*60*1e3,Y_=16/9,jR=960,Y5r=1920,J5r=360,X5r=9,Jgt=24,Z5r=12e3,cpe=9e3,Hgt=5*1024*1024,Ggt=80,zgt=24,Kgt=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],ape=null;function ope(t=""){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Xgt(t,e,r){return Math.max(e,Math.min(r,t))}function e6r(t=""){let e=2166136261,r=String(t||"");for(let n=0;n<r.length;n+=1)e^=r.charCodeAt(n),e=Math.imul(e,16777619);return e>>>0}function Zgt(t){return Xgt(Math.round(Number(t)||0),0,255)}function Vgt(t=[]){return`#${t.slice(0,3).map(e=>Zgt(e).toString(16).padStart(2,"0")).join("")}`}function Ygt(t=[],e=[],r=.5){return[0,1,2].map(n=>Zgt((t[n]||0)*(1-r)+(e[n]||0)*r))}function t6r(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function upe(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function QR(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function eyt(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function r6r(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^ã€]*ã€\s*)+/,"").trim()||e}function lpe(t=[]){return QR((Array.isArray(t)?t:[]).map(e=>eyt(e?.vod_pic)).filter(Boolean))}async function n6r(t,e={}){let r=t6r(e);if(!r.spiderKey)return null;let n=await Ad(t).catch(()=>[]);return Fy(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function s6r(t,e,r){let n=await upe(bR(t,e,r).catch(()=>null),cpe,null),s=lpe(n?.list||[]);if(s.length>=Jgt)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>upe(L_(t,e,String(c.type_id||""),1,{},r).then(u=>lpe(u?.list||[])).catch(()=>[]),cpe,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),QR(s)}async function i6r(t,e,r={},n){let s=[],i=eyt(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return QR(s);let o=await upe(L_(t,e,a,1,{},n).catch(()=>null),cpe,null);return s.push(...lpe(o?.list||[])),QR(s)}async function a6r(t,e,r){let n=await n6r(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await s6r(t,n,r):e?.type==="cat"&&(s=await i6r(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function o6r(t,e=0){let r=t?.payload||{},n=r6r(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function c6r(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=jR,s=Math.round(jR/Y_);if(e>0&&r>0){let i=Math.min(e/jR,r/(jR/Y_));n=Math.round(jR*i),s=Math.round(n/Y_)}else e>0?(n=Math.round(e),s=Math.round(n/Y_)):r>0&&(s=Math.round(r),n=Math.round(s*Y_));return n=Xgt(n,J5r,Y5r),s=Math.round(n/Y_),{width:n,height:s}}async function u6r(){return ape||(ape=import("sharp").then(t=>t.default||t).catch(()=>null)),ape}function iW(t=""){return Kgt[e6r(t)%Kgt.length]}function l6r(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let S=0;S<t.length;S+=r){let I=t[S]||0,R=t[S+1]||0,w=t[S+2]||0,N=I*.299+R*.587+w*.114,k=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+=k-B,p.add(`${I>>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,y=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),x=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-y*y)))/3,A=f/n;return b<8&&x<8||(g>242||g<16)&&b<12&&x<12||A<7&&b<10||p.size<=3||p.size<=6&&b<20&&A<12}async function d6r(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<Ggt||r.height<Ggt)return!1;let{data:n,info:s}=await t(e).resize(zgt,zgt,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!l6r(n,s?.channels||3)}catch{return!1}}async function f6r(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 p6r(t,e=null){try{let r=new URL(t),n=await he.get(r.toString(),{responseType:"arraybuffer",timeout:Z5r,maxContentLength:Hgt,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>Hgt)return null;if(e){if(!await d6r(e,a))return null;let o=await f6r(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function m6r(t=[],e=null){let n=QR(t).slice(0,Jgt).map(a=>p6r(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,X5r)}async function h6r(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return iW(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=Ygt(i,[0,0,0],.38),o=Ygt(i,[255,255,255],.48);return[Vgt(a),Vgt(o)]}catch{return iW(r)}}function g6r(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function tyt(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),y=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:y,href:g?.dataUri||""}})}function y6r(t,e,r=""){let n=tyt([{dataUri:""}],t,e),s=iW(r);return n.map((i,a)=>{let o=.18+a%3*.08;return`
|
|
<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 A6r({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=g6r(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?tyt(i,t,e):[],f=d.map(h=>`
|
|
<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,y)=>`
|
|
<text x="${(t*.07).toFixed(1)}" y="${(e*.47+y*l).toFixed(1)}"
|
|
class="title">${ope(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:y6r(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">${ope(n)}</text>
|
|
<text x="${(t*.07).toFixed(1)}" y="${(e*.86).toFixed(1)}" class="meta">${ope(s)}</text>
|
|
</svg>`}function x6r(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function dpe(t,e="Primary"){return x6r(e)&&["lib","cat"].includes(t?.type)}async function ryt(t,e,r){if(!dpe(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=c6r(r?.query||{}),i=wm(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return yp(t.embyContext?.cache,i,V5r,async()=>{let a=await a6r(t,e,r),o=await u6r(),c=o?await m6r(a.posterUrls,o):[],u=o6r(e,o?c.length:a.posterUrls.length),l=o?await h6r(o,c,u.title):iW(u.title),d=A6r({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var b6r=!1;function _6r(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function nyt(t,e={}){if(e.u)return String(e.u);let r=xd(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await qc(t,r,n).catch(()=>null),i=jc(s);return String(i?.vod_pic||"")}function E6r(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function v6r(t,e,r="Primary",n={}){if(e?.type==="vod"&&!E6r(e,r,n)){let i=await nyt(t,e?.payload||{});if(i)return i}let s=await Bgt(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):nyt(t,e?.payload||{}))}function syt(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function S6r(t,e,r=""){let n=syt(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=DR(t,r,wn(e.type,e.payload||{})),m=syt(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=xd(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await qc(t,i,a).catch(()=>null),c=jc(o);if(!c)return null;let u=Io(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function I6r(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function C6r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function T6r(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await Rm(t,n,e.f,e.p,r).catch(()=>null),i=km(s||{},""),a=String(i.url||"");return{container:I6r(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:b6r&&C6r(a)}}function w6r(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function R6r(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function iyt(t,e,r="mkv",n=!1){let s=R6r(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function N6r(t,e,r="mkv",n=!0){return`${w6r(t)}/emby${iyt(t,e,r,n)}`}async function fpe(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),"";if(dpe(n,e.params.imageType||"Primary")){let i=await ryt(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await v6r(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await he.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=Fs(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await S6r(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await T6r(t,a,e),u=N6r(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:iyt(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return _6r(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ft([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var O6r=new Set(["tgchannel","tgsou","pansou","panta"]);function ppe(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function k6r(t=""){let e=String(t||""),r=[e,ppe(e),ppe(ppe(e))];for(let n of r){let s=Fs(n);if(s)return s}return null}function P6r(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function D6r(t,e={}){let r=P6r(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await qc(t,n,r.v).catch(()=>null),i=jc(s);if(!i)return null;let a=Io(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function B6r(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return D6r(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=xd(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await qc(t,n,s).catch(()=>null),a=jc(i);if(!a)return null;let o=Io(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function L6r(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function ayt(t,e,r,n){let s=await he.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:L6r(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function M6r(t={},e=""){if(O6r.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function W6r(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function mpe(t,e,r,n=""){let s=k6r(e.params.mediaId);if(!s)return r.code(404),"";let i=await B6r(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await Rm(t,a,i.f,i.p,e).catch(()=>null),c=km(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return ayt(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return M6r(i,c.url)||Object.keys(c.header||{}).length>0?ayt(e,r,c.url,c.header):r.redirect(307,W6r(c.url))}async function hpe(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ft([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>mpe(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>mpe(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>mpe(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var $6r=new Set(["tgchannel","tgsou","pansou","panta"]),U6r=!1;function F6r(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function q6r(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function oyt(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function j6r(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function Q6r(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function H6r(t,e,r="mkv"){return`${Q6r(t)}/emby${lyt(t,e,r,!0)}`}function lyt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function G6r(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=$6r.has(String(r?.k||""))?"m3u8":"mkv",a=oyt(String(r?.p||""),i),o=H6r(e,s,a),c=lyt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(U6r&&F6r(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await Rm(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=km(m||{},String(n||""));h.url&&q6r(h.url)&&(a=oyt(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function z6r(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;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),y={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:as()},b=`s${VM(r,p,f)}`,x=d.get(b);x===void 0&&(x=await XM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,x)),x&&Object.assign(y,x),l.push(y)}return l}async function K6r(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,x=zy(g?.name,b+1),A={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&&(A.n=u),l&&(A.u=l),d&&(A.r=d),f&&(A.y=f);let S=wn("ep",A),I=await G6r(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:S,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:x,ParentIndexNumber:m+1,ServerId:a,IsFolder:!1,Type:"Episode",MediaType:"Video",CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:S},BackdropImageTags:[],UserData:as(),MediaSources:[I]};if(c!==void 0)return c&&Object.assign(R,c),R;let w=await UR(t,{spiderRef:r,vod:n,line:p,lineIndex:m,episode:g,episodeIndex:b});return w&&Object.assign(R,w),R}function V6r(t=[]){return t.reduce((e,r)=>e+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function dyt(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await JM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h<f.length;h+=1){let y=await K6r(t,e,r,n,d,i,a,h,m[h]??null);if(y&&c.push(y),c.length>=l)return c}}return c}function fyt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function pyt(t=[],e={},r=null){let n=String(Jr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=Fs(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Jr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function Y6r(t,e,r,n=[]){let i=DR(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function gpe(t,e){let r=Fs(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=xd(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await qc(t,s,i).catch(()=>null),o=jc(a);if(!o)return null;Zy(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=Io(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function cyt(t,e,r={},n=null){let s=await gpe(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=pyt(c,r,i);if(!u.length)return[];let l=fyt(i,e);return dyt(t,n,a,o,u,l,t.embyContext.config.serverId)}async function uyt(t,e){let r=await gpe(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return z6r(t,n,s,i,e,t.embyContext.config.serverId)}async function ype(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ft([])),t.get("/Genres",e,async()=>Ft([])),t.get("/Tags",e,async()=>Ft([])),t.get("/OfficialRatings",e,async()=>Ft([])),t.get("/Years",e,async()=>Ft([])),t.get("/Studios",e,async()=>Ft([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Jr(n,["SeriesId","seriesId"],"")).trim(),i=Hu(Jr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ft([]);let o=await gpe(t,s);if(!o)return Ft([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=fyt(c,s),p=Y6r(t,a,f,pyt(d,n,c));if(!p.length)return Ft([]);let m=V6r(p),h=qs(t,a,await dyt(t,r,u,l,p,f,t.embyContext.config.serverId,i));return j6r(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ft(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await uyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await cyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await uyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Hu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=qs(t,o,await cyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:Us(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await BR(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ft([]))}function myt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Ape=Symbol("embyLogStartAt"),J6r=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function aW(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function J_(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>J_(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(J6r.test(s)){n[s]=aW(i);continue}n[s]=J_(i,e+1,r)}return n}function X6r(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function xpe(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function Z6r(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function HR(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:xpe(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:xpe(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:xpe(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function bpe(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=HR({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:TM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:zM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},Z6r),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||myt(a.headers?.["x-emby-authorization"])||myt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${aW(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Ape]=process.hrtime.bigint();let a=X6r(i),o=J_(i.query||{}),c=i.body===void 0?void 0:J_(i.body),u=t.embyExtractToken(i),l=u?aW(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Ape],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Ape],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=J_(i.query||{}),c=i.body===void 0?void 0:J_(i.body),u=t.embyExtractToken(i),l=u?aW(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(Qfe,{prefix:"/System"}),t.register(jfe,{prefix:"/Users"}),t.register(Gfe,{prefix:"/Library"}),t.register(ipe,{prefix:"/Users"}),t.register(fpe,{prefix:"/Items"}),t.register(hpe,{prefix:"/Videos"}),t.register(ype)}function _pe(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function hyt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function gyt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function yyt(t={}){let e=gyt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var eMr=async t=>{let e=await hyt(t),r=HR({...t.config?.emby||{},...e});return _pe(r,{includeSecrets:!0})},tMr=async(t,e)=>{let r=await hyt(t),n=HR({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=_pe(n,{includeSecrets:!0});return await t.db.push("/emby",s),yyt(s),s},rMr=async t=>{await t.db.delete("/emby");let e=_pe(HR(t.config?.emby||{}),{includeSecrets:!0});return yyt(e),e},nMr=async t=>{let e=gyt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Epe(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await eMr(e.server)})}),t.put("/setting",async(e,r)=>{await tMr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await rMr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await nMr(e.server),r.send({code:0})})}var sMr=t=>{let e=ER(t,{includePrefix:!1}).replace(/\/$/,""),r=NM()?RM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:vR(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:vR(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:vR(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:vR(e,"/emby")}]};async function vpe(t){t.get("/",(e,r)=>{r.type("text/html").send(`
|
|
<!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:sMr(e)}})}),t.register(hfe,{prefix:"/quark"}),t.register(oV,{prefix:"/uc"}),t.register(gfe,{prefix:"/uc-tv"}),t.register(VV,{prefix:"/115"}),t.register(dce,{prefix:"/muou"}),t.register(yY,{prefix:"/duoduo"}),t.register(hce,{prefix:"/labi"}),t.register(xce,{prefix:"/shandian"}),t.register(vce,{prefix:"/ouge"}),t.register(Tce,{prefix:"/erxiao"}),t.register(Zce,{prefix:"/huban"}),t.register(nue,{prefix:"/xiaoban"}),t.register(yfe,{prefix:"/tianyi"}),t.register(oue,{prefix:"/wanou"}),t.register(Afe,{prefix:"/leijing"}),t.register(lue,{prefix:"/zhizhen"}),t.register(Tue,{prefix:"/tgsou"}),t.register(Wue,{prefix:"/pansou"}),t.register(Hue,{prefix:"/pinglian"}),t.register(Efe,{prefix:"/pan123"}),t.register(Sfe,{prefix:"/xunlei"}),t.register(Cfe,{prefix:"/ali"}),t.register(wfe,{prefix:"/baidu"}),t.register(Nfe,{prefix:"/guangyapan"}),t.register(Lfe,{prefix:"/yidong"}),t.register(yue,{prefix:"/tgchannel"}),t.register(Nue,{prefix:"/tgfilebot"}),t.register(vde,{prefix:"/sites"}),t.register(Wfe,{prefix:"/pans"}),t.register($fe,{prefix:"/backup"}),t.register(Ide,{prefix:"/danmu"}),t.register(Epe,{prefix:"/emby"}),t.register(cde,{prefix:"/emby-spider"}),t.register(xde,{prefix:"/alist-video"}),t.register(Rde,{prefix:"/t4"}),t.register(Lde,{prefix:"/cms"}),t.register(Tle,{prefix:"/live2vod"}),t.register(Lce,{prefix:"/123ypzysq"}),t.register($ce,{prefix:"/guanying"})}var jr=null,Spe="__catpawProfile",oW=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,iMr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,eA=[],Eyt=["log","info","warn","error","debug"],GR={},cW=!1;function zu(t,e=iMr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function aMr(t){if(typeof t=="string")return zu(t);if(t instanceof Error)return zu(JSON.stringify(uW(t)));try{return zu(JSON.stringify(zR(t)))}catch{try{return zu(String(t))}catch{return"[Unserializable]"}}}function vyt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function zR(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>zR(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=vyt(s);continue}r[n]=zR(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function Syt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=vyt(s):r[n]=zu(s,260)}return r}function oMr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:zu(t.url||"",500),baseURL:zu(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:Syt(t.headers)}}function cMr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:zu(t.path||t.pathname||"",500),currentUrl:zu(t._currentUrl||"",500)}}function uMr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:Syt(t.headers),data:typeof e=="string"?zu(e,1e3):zR(e)}}function uW(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:zu(t.stack||"",4e3)},r=oMr(t.config),n=cMr(t.request),s=uMr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function lMr(t){return t instanceof Error?uW(t):t}function dMr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:uW,error:uW}}}function fMr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return zR(t)}function pMr(t,e){eA.push({ts:new Date().toISOString(),level:t,msg:e.map(aMr).join(" ")}),eA.length>oW&&eA.splice(0,eA.length-oW)}function mMr(){cW||(Eyt.forEach(t=>{let e=console[t];typeof e=="function"&&(GR[t]=e.bind(console),console[t]=(...r)=>{pMr(t,r),Pct()||GR[t](...r.map(lMr))})}),cW=!0)}function hMr(){cW&&(Eyt.forEach(t=>{GR[t]&&(console[t]=GR[t],delete GR[t])}),cW=!1)}function gMr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,oW):oW,s=eA.slice(-n);return{success:!0,total:eA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(eA.length=0,{success:!0}))}function lW(...t){}function KR(t){return Object.prototype.toString.call(t)==="[object Object]"}function yMr(t){let e=t?.[Spe];return KR(e)?e:null}function Ayt(t){if(!KR(t))return{};if(!(Spe in t))return t;let{[Spe]:e,...r}=t;return r}function Ipe(t){return KR(t)&&Object.keys(t).length>0}function xyt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function byt(t,e){if(!Ipe(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!KR(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function AMr(t,e){return{...t,...e}}function xMr(t,e){if(!Ipe(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=byt(e,s);return i.found?xyt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=byt(e,s);return a.found?xyt(a.value):n(s,i)})}async function bMr(t){let e=yMr(t),r=Ipe(e),n=r?AMr(Ayt(t),e):Ayt(t);jr=(0,_yt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:dMr(),maxParamLength:10240}),mMr(),gMr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",fMr(u));let l=catDartServerPort();return l==0?null:(await he.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${Z0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;lW("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),Bct(s),lW("after start()",{danmuPort:s}),jr.db=new dW.JsonDB(new dW.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&xMr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=KR(u)?u:{};a("/",l)}}),jr.register(Jde,{db:jr.db,config:n}),jr.register(vpe,{prefix:"/website"}),jr.register(bpe,{prefix:"/emby"}),globalThis.Pans=await Mfe(jr),await zht(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function _Mr(){lW("before stop()"),Lct(),lW("after stop()"),jr&&(jr.close(),jr.stop=!0),hMr(),jr=null}0&&(module.exports={start,stop});
|
|
/*! Bundled license information:
|
|
|
|
forwarded/index.js:
|
|
(*!
|
|
* 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 *)
|
|
*/ |