zhangkun9038@dingtalk.com 4380e95e00 2025-04-07 13:07:53: ...
2025-04-07 13:08:02 +08:00

575 lines
2.0 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";var w5=Object.defineProperty;var b5=(t,e,r)=>e in t?w5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var Ze=(t,e,r)=>(b5(t,typeof e!="symbol"?e+"":e,r),r);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const Qe=require("obsidian"),Xh=require("crypto"),gd=require("fs"),K5=require("path"),qr=require("stream"),rf=require("http"),M0=require("url"),f5=require("https"),Gi=require("zlib"),af=require("util"),Q5=require("os");function W5(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,a.get?a:{enumerable:!0,get:()=>t[r]})}}return e.default=t,Object.freeze(e)}const v5=W5(Q5);function F5(t,e){const r=Object.keys(e).map(a=>y5(t,a,e[a]));return r.length===1?r[0]:function(){r.forEach(a=>a())}}function y5(t,e,r){const a=t[e],n=t.hasOwnProperty(e);let i=r(a);return a&&Object.setPrototypeOf(i,a),Object.setPrototypeOf(l,i),t[e]=l,s;function l(...o){return i===a&&t[e]===l&&s(),i.apply(this,o)}function s(){t[e]===l&&(n?t[e]=a:delete t[e]),i!==a&&(i=a,Object.setPrototypeOf(l,a||Function))}}function R5(t){for(var e=t.length,r=0,a=0;a<e;){var n=t.charCodeAt(a++);if(n&4294967168)if(!(n&4294965248))r+=2;else{if(n>=55296&&n<=56319&&a<e){var i=t.charCodeAt(a);(i&64512)===56320&&(++a,n=((n&1023)<<10)+(i&1023)+65536)}n&4294901760?r+=4:r+=3}else{r++;continue}}return r}function E5(t,e,r){for(var a=t.length,n=r,i=0;i<a;){var l=t.charCodeAt(i++);if(l&4294967168)if(!(l&4294965248))e[n++]=l>>6&31|192;else{if(l>=55296&&l<=56319&&i<a){var s=t.charCodeAt(i);(s&64512)===56320&&(++i,l=((l&1023)<<10)+(s&1023)+65536)}l&4294901760?(e[n++]=l>>18&7|240,e[n++]=l>>12&63|128,e[n++]=l>>6&63|128):(e[n++]=l>>12&15|224,e[n++]=l>>6&63|128)}else{e[n++]=l;continue}e[n++]=l&63|128}}var G5=new TextEncoder,S5=50;function Z5(t,e,r){G5.encodeInto(t,e.subarray(r))}function X5(t,e,r){t.length>S5?Z5(t,e,r):E5(t,e,r)}var H5=4096;function nf(t,e,r){for(var a=e,n=a+r,i=[],l="";a<n;){var s=t[a++];if(!(s&128))i.push(s);else if((s&224)===192){var o=t[a++]&63;i.push((s&31)<<6|o)}else if((s&240)===224){var o=t[a++]&63,d=t[a++]&63;i.push((s&31)<<12|o<<6|d)}else if((s&248)===240){var o=t[a++]&63,d=t[a++]&63,u=t[a++]&63,c=(s&7)<<18|o<<12|d<<6|u;c>65535&&(c-=65536,i.push(c>>>10&1023|55296),c=56320|c&1023),i.push(c)}else i.push(s);i.length>=H5&&(l+=String.fromCharCode.apply(String,i),i.length=0)}return i.length>0&&(l+=String.fromCharCode.apply(String,i)),l}var V5=new TextDecoder,Y5=200;function N5(t,e,r){var a=t.subarray(e,e+r);return V5.decode(a)}function L5(t,e,r){return r>Y5?N5(t,e,r):nf(t,e,r)}var ep=function(){function t(e,r){this.type=e,this.data=r}return t}(),T5=globalThis&&globalThis.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,n){a.__proto__=n}||function(a,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(a[i]=n[i])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function a(){this.constructor=e}e.prototype=r===null?Object.create(r):(a.prototype=r.prototype,new a)}}(),ya=function(t){T5(e,t);function e(r){var a=t.call(this,r)||this,n=Object.create(e.prototype);return Object.setPrototypeOf(a,n),Object.defineProperty(a,"name",{configurable:!0,enumerable:!1,value:e.name}),a}return e}(Error),go=4294967295;function k5(t,e,r){var a=r/4294967296,n=r;t.setUint32(e,a),t.setUint32(e+4,n)}function lf(t,e,r){var a=Math.floor(r/4294967296),n=r;t.setUint32(e,a),t.setUint32(e+4,n)}function sf(t,e){var r=t.getInt32(e),a=t.getUint32(e+4);return r*4294967296+a}function U5(t,e){var r=t.getUint32(e),a=t.getUint32(e+4);return r*4294967296+a}var _5=-1,I5=4294967296-1,D5=17179869184-1;function M5(t){var e=t.sec,r=t.nsec;if(e>=0&&r>=0&&e<=D5)if(r===0&&e<=I5){var a=new Uint8Array(4),n=new DataView(a.buffer);return n.setUint32(0,e),a}else{var i=e/4294967296,l=e&4294967295,a=new Uint8Array(8),n=new DataView(a.buffer);return n.setUint32(0,r<<2|i&3),n.setUint32(4,l),a}else{var a=new Uint8Array(12),n=new DataView(a.buffer);return n.setUint32(0,r),lf(n,4,e),a}}function x5(t){var e=t.getTime(),r=Math.floor(e/1e3),a=(e-r*1e3)*1e6,n=Math.floor(a/1e9);return{sec:r+n,nsec:a-n*1e9}}function J5(t){if(t instanceof Date){var e=x5(t);return M5(e)}else return null}function O5(t){var e=new DataView(t.buffer,t.byteOffset,t.byteLength);switch(t.byteLength){case 4:{var r=e.getUint32(0),a=0;return{sec:r,nsec:a}}case 8:{var n=e.getUint32(0),i=e.getUint32(4),r=(n&3)*4294967296+i,a=n>>>2;return{sec:r,nsec:a}}case 12:{var r=sf(e,4),a=e.getUint32(0);return{sec:r,nsec:a}}default:throw new ya("Unrecognized data size for timestamp (expected 4, 8, or 12): ".concat(t.length))}}function P5(t){var e=O5(t);return new Date(e.sec*1e3+e.nsec/1e6)}var z5={type:_5,encode:J5,decode:P5},of=function(){function t(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(z5)}return t.prototype.register=function(e){var r=e.type,a=e.encode,n=e.decode;if(r>=0)this.encoders[r]=a,this.decoders[r]=n;else{var i=1+r;this.builtInEncoders[i]=a,this.builtInDecoders[i]=n}},t.prototype.tryToEncode=function(e,r){for(var a=0;a<this.builtInEncoders.length;a++){var n=this.builtInEncoders[a];if(n!=null){var i=n(e,r);if(i!=null){var l=-1-a;return new ep(l,i)}}}for(var a=0;a<this.encoders.length;a++){var n=this.encoders[a];if(n!=null){var i=n(e,r);if(i!=null){var l=a;return new ep(l,i)}}}return e instanceof ep?e:null},t.prototype.decode=function(e,r,a){var n=r<0?this.builtInDecoders[-1-r]:this.decoders[r];return n?n(e,r,a):new ep(r,e)},t.defaultCodec=new t,t}();function bc(t){return t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):Uint8Array.from(t)}function j5(t){if(t instanceof ArrayBuffer)return new DataView(t);var e=bc(t);return new DataView(e.buffer,e.byteOffset,e.byteLength)}var q5=100,$5=2048,ey=function(){function t(e){var r,a,n,i,l,s,o,d;this.extensionCodec=(r=e==null?void 0:e.extensionCodec)!==null&&r!==void 0?r:of.defaultCodec,this.context=e==null?void 0:e.context,this.useBigInt64=(a=e==null?void 0:e.useBigInt64)!==null&&a!==void 0?a:!1,this.maxDepth=(n=e==null?void 0:e.maxDepth)!==null&&n!==void 0?n:q5,this.initialBufferSize=(i=e==null?void 0:e.initialBufferSize)!==null&&i!==void 0?i:$5,this.sortKeys=(l=e==null?void 0:e.sortKeys)!==null&&l!==void 0?l:!1,this.forceFloat32=(s=e==null?void 0:e.forceFloat32)!==null&&s!==void 0?s:!1,this.ignoreUndefined=(o=e==null?void 0:e.ignoreUndefined)!==null&&o!==void 0?o:!1,this.forceIntegerToFloat=(d=e==null?void 0:e.forceIntegerToFloat)!==null&&d!==void 0?d:!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}return t.prototype.reinitializeState=function(){this.pos=0},t.prototype.encodeSharedRef=function(e){return this.reinitializeState(),this.doEncode(e,1),this.bytes.subarray(0,this.pos)},t.prototype.encode=function(e){return this.reinitializeState(),this.doEncode(e,1),this.bytes.slice(0,this.pos)},t.prototype.doEncode=function(e,r){if(r>this.maxDepth)throw new Error("Too deep objects in depth ".concat(r));e==null?this.encodeNil():typeof e=="boolean"?this.encodeBoolean(e):typeof e=="number"?this.forceIntegerToFloat?this.encodeNumberAsFloat(e):this.encodeNumber(e):typeof e=="string"?this.encodeString(e):this.useBigInt64&&typeof e=="bigint"?this.encodeBigInt64(e):this.encodeObject(e,r)},t.prototype.ensureBufferSizeToWrite=function(e){var r=this.pos+e;this.view.byteLength<r&&this.resizeBuffer(r*2)},t.prototype.resizeBuffer=function(e){var r=new ArrayBuffer(e),a=new Uint8Array(r),n=new DataView(r);a.set(this.bytes),this.view=n,this.bytes=a},t.prototype.encodeNil=function(){this.writeU8(192)},t.prototype.encodeBoolean=function(e){e===!1?this.writeU8(194):this.writeU8(195)},t.prototype.encodeNumber=function(e){!this.forceIntegerToFloat&&Number.isSafeInteger(e)?e>=0?e<128?this.writeU8(e):e<256?(this.writeU8(204),this.writeU8(e)):e<65536?(this.writeU8(205),this.writeU16(e)):e<4294967296?(this.writeU8(206),this.writeU32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(207),this.writeU64(e)):e>=-32?this.writeU8(224|e+32):e>=-128?(this.writeU8(208),this.writeI8(e)):e>=-32768?(this.writeU8(209),this.writeI16(e)):e>=-2147483648?(this.writeU8(210),this.writeI32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(211),this.writeI64(e)):this.encodeNumberAsFloat(e)},t.prototype.encodeNumberAsFloat=function(e){this.forceFloat32?(this.writeU8(202),this.writeF32(e)):(this.writeU8(203),this.writeF64(e))},t.prototype.encodeBigInt64=function(e){e>=BigInt(0)?(this.writeU8(207),this.writeBigUint64(e)):(this.writeU8(211),this.writeBigInt64(e))},t.prototype.writeStringHeader=function(e){if(e<32)this.writeU8(160+e);else if(e<256)this.writeU8(217),this.writeU8(e);else if(e<65536)this.writeU8(218),this.writeU16(e);else if(e<4294967296)this.writeU8(219),this.writeU32(e);else throw new Error("Too long string: ".concat(e," bytes in UTF-8"))},t.prototype.encodeString=function(e){var r=5,a=R5(e);this.ensureBufferSizeToWrite(r+a),this.writeStringHeader(a),X5(e,this.bytes,this.pos),this.pos+=a},t.prototype.encodeObject=function(e,r){var a=this.extensionCodec.tryToEncode(e,this.context);if(a!=null)this.encodeExtension(a);else if(Array.isArray(e))this.encodeArray(e,r);else if(ArrayBuffer.isView(e))this.encodeBinary(e);else if(typeof e=="object")this.encodeMap(e,r);else throw new Error("Unrecognized object: ".concat(Object.prototype.toString.apply(e)))},t.prototype.encodeBinary=function(e){var r=e.byteLength;if(r<256)this.writeU8(196),this.writeU8(r);else if(r<65536)this.writeU8(197),this.writeU16(r);else if(r<4294967296)this.writeU8(198),this.writeU32(r);else throw new Error("Too large binary: ".concat(r));var a=bc(e);this.writeU8a(a)},t.prototype.encodeArray=function(e,r){var a=e.length;if(a<16)this.writeU8(144+a);else if(a<65536)this.writeU8(220),this.writeU16(a);else if(a<4294967296)this.writeU8(221),this.writeU32(a);else throw new Error("Too large array: ".concat(a));for(var n=0,i=e;n<i.length;n++){var l=i[n];this.doEncode(l,r+1)}},t.prototype.countWithoutUndefined=function(e,r){for(var a=0,n=0,i=r;n<i.length;n++){var l=i[n];e[l]!==void 0&&a++}return a},t.prototype.encodeMap=function(e,r){var a=Object.keys(e);this.sortKeys&&a.sort();var n=this.ignoreUndefined?this.countWithoutUndefined(e,a):a.length;if(n<16)this.writeU8(128+n);else if(n<65536)this.writeU8(222),this.writeU16(n);else if(n<4294967296)this.writeU8(223),this.writeU32(n);else throw new Error("Too large map object: ".concat(n));for(var i=0,l=a;i<l.length;i++){var s=l[i],o=e[s];this.ignoreUndefined&&o===void 0||(this.encodeString(s),this.doEncode(o,r+1))}},t.prototype.encodeExtension=function(e){var r=e.data.length;if(r===1)this.writeU8(212);else if(r===2)this.writeU8(213);else if(r===4)this.writeU8(214);else if(r===8)this.writeU8(215);else if(r===16)this.writeU8(216);else if(r<256)this.writeU8(199),this.writeU8(r);else if(r<65536)this.writeU8(200),this.writeU16(r);else if(r<4294967296)this.writeU8(201),this.writeU32(r);else throw new Error("Too large extension object: ".concat(r));this.writeI8(e.type),this.writeU8a(e.data)},t.prototype.writeU8=function(e){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,e),this.pos++},t.prototype.writeU8a=function(e){var r=e.length;this.ensureBufferSizeToWrite(r),this.bytes.set(e,this.pos),this.pos+=r},t.prototype.writeI8=function(e){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,e),this.pos++},t.prototype.writeU16=function(e){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,e),this.pos+=2},t.prototype.writeI16=function(e){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,e),this.pos+=2},t.prototype.writeU32=function(e){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,e),this.pos+=4},t.prototype.writeI32=function(e){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,e),this.pos+=4},t.prototype.writeF32=function(e){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,e),this.pos+=4},t.prototype.writeF64=function(e){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,e),this.pos+=8},t.prototype.writeU64=function(e){this.ensureBufferSizeToWrite(8),k5(this.view,this.pos,e),this.pos+=8},t.prototype.writeI64=function(e){this.ensureBufferSizeToWrite(8),lf(this.view,this.pos,e),this.pos+=8},t.prototype.writeBigUint64=function(e){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,e),this.pos+=8},t.prototype.writeBigInt64=function(e){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,e),this.pos+=8},t}();function ty(t,e){var r=new ey(e);return r.encodeSharedRef(t)}function q1(t){return"".concat(t<0?"-":"","0x").concat(Math.abs(t).toString(16).padStart(2,"0"))}var ry=16,ay=16,ny=function(){function t(e,r){e===void 0&&(e=ry),r===void 0&&(r=ay),this.maxKeyLength=e,this.maxLengthPerKey=r,this.hit=0,this.miss=0,this.caches=[];for(var a=0;a<this.maxKeyLength;a++)this.caches.push([])}return t.prototype.canBeCached=function(e){return e>0&&e<=this.maxKeyLength},t.prototype.find=function(e,r,a){var n=this.caches[a-1];e:for(var i=0,l=n;i<l.length;i++){for(var s=l[i],o=s.bytes,d=0;d<a;d++)if(o[d]!==e[r+d])continue e;return s.str}return null},t.prototype.store=function(e,r){var a=this.caches[e.length-1],n={bytes:e,str:r};a.length>=this.maxLengthPerKey?a[Math.random()*a.length|0]=n:a.push(n)},t.prototype.decode=function(e,r,a){var n=this.find(e,r,a);if(n!=null)return this.hit++,n;this.miss++;var i=nf(e,r,a),l=Uint8Array.prototype.slice.call(e,r,r+a);return this.store(l,i),i},t}(),iy=globalThis&&globalThis.__awaiter||function(t,e,r,a){function n(i){return i instanceof r?i:new r(function(l){l(i)})}return new(r||(r=Promise))(function(i,l){function s(u){try{d(a.next(u))}catch(c){l(c)}}function o(u){try{d(a.throw(u))}catch(c){l(c)}}function d(u){u.done?i(u.value):n(u.value).then(s,o)}d((a=a.apply(t,e||[])).next())})},$1=globalThis&&globalThis.__generator||function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},a,n,i,l;return l={next:s(0),throw:s(1),return:s(2)},typeof Symbol=="function"&&(l[Symbol.iterator]=function(){return this}),l;function s(d){return function(u){return o([d,u])}}function o(d){if(a)throw new TypeError("Generator is already executing.");for(;l&&(l=0,d[0]&&(r=0)),r;)try{if(a=1,n&&(i=d[0]&2?n.return:d[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,d[1])).done)return i;switch(n=0,i&&(d=[d[0]&2,i.value]),d[0]){case 0:case 1:i=d;break;case 4:return r.label++,{value:d[1],done:!1};case 5:r.label++,n=d[1],d=[0];continue;case 7:d=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(d[0]===6||d[0]===2)){r=0;continue}if(d[0]===3&&(!i||d[1]>i[0]&&d[1]<i[3])){r.label=d[1];break}if(d[0]===6&&r.label<i[1]){r.label=i[1],i=d;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(d);break}i[2]&&r.ops.pop(),r.trys.pop();continue}d=e.call(t,r)}catch(u){d=[6,u],n=0}finally{a=i=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:!0}}},H4=globalThis&&globalThis.__asyncValues||function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},a("next"),a("throw"),a("return"),r[Symbol.asyncIterator]=function(){return this},r);function a(i){r[i]=t[i]&&function(l){return new Promise(function(s,o){l=t[i](l),n(s,o,l.done,l.value)})}}function n(i,l,s,o){Promise.resolve(o).then(function(d){i({value:d,done:s})},l)}},Bs=globalThis&&globalThis.__await||function(t){return this instanceof Bs?(this.v=t,this):new Bs(t)},ly=globalThis&&globalThis.__asyncGenerator||function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a=r.apply(t,e||[]),n,i=[];return n={},l("next"),l("throw"),l("return"),n[Symbol.asyncIterator]=function(){return this},n;function l(p){a[p]&&(n[p]=function(A){return new Promise(function(m,h){i.push([p,A,m,h])>1||s(p,A)})})}function s(p,A){try{o(a[p](A))}catch(m){c(i[0][3],m)}}function o(p){p.value instanceof Bs?Promise.resolve(p.value.v).then(d,u):c(i[0][2],p)}function d(p){s("next",p)}function u(p){s("throw",p)}function c(p,A){p(A),i.shift(),i.length&&s(i[0][0],i[0][1])}},V4="array",tp="map_key",sy="map_value",oy=function(t){return typeof t=="string"||typeof t=="number"},Ao=-1,Hh=new DataView(new ArrayBuffer(0)),dy=new Uint8Array(Hh.buffer);try{Hh.getInt8(0)}catch(t){if(!(t instanceof RangeError))throw new Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}var gg=RangeError,Y4=new gg("Insufficient data"),uy=new ny,py=function(){function t(e){var r,a,n,i,l,s,o;this.totalPos=0,this.pos=0,this.view=Hh,this.bytes=dy,this.headByte=Ao,this.stack=[],this.extensionCodec=(r=e==null?void 0:e.extensionCodec)!==null&&r!==void 0?r:of.defaultCodec,this.context=e==null?void 0:e.context,this.useBigInt64=(a=e==null?void 0:e.useBigInt64)!==null&&a!==void 0?a:!1,this.maxStrLength=(n=e==null?void 0:e.maxStrLength)!==null&&n!==void 0?n:go,this.maxBinLength=(i=e==null?void 0:e.maxBinLength)!==null&&i!==void 0?i:go,this.maxArrayLength=(l=e==null?void 0:e.maxArrayLength)!==null&&l!==void 0?l:go,this.maxMapLength=(s=e==null?void 0:e.maxMapLength)!==null&&s!==void 0?s:go,this.maxExtLength=(o=e==null?void 0:e.maxExtLength)!==null&&o!==void 0?o:go,this.keyDecoder=(e==null?void 0:e.keyDecoder)!==void 0?e.keyDecoder:uy}return t.prototype.reinitializeState=function(){this.totalPos=0,this.headByte=Ao,this.stack.length=0},t.prototype.setBuffer=function(e){this.bytes=bc(e),this.view=j5(this.bytes),this.pos=0},t.prototype.appendBuffer=function(e){if(this.headByte===Ao&&!this.hasRemaining(1))this.setBuffer(e);else{var r=this.bytes.subarray(this.pos),a=bc(e),n=new Uint8Array(r.length+a.length);n.set(r),n.set(a,r.length),this.setBuffer(n)}},t.prototype.hasRemaining=function(e){return this.view.byteLength-this.pos>=e},t.prototype.createExtraByteError=function(e){var r=this,a=r.view,n=r.pos;return new RangeError("Extra ".concat(a.byteLength-n," of ").concat(a.byteLength," byte(s) found at buffer[").concat(e,"]"))},t.prototype.decode=function(e){this.reinitializeState(),this.setBuffer(e);var r=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return r},t.prototype.decodeMulti=function(e){return $1(this,function(r){switch(r.label){case 0:this.reinitializeState(),this.setBuffer(e),r.label=1;case 1:return this.hasRemaining(1)?[4,this.doDecodeSync()]:[3,3];case 2:return r.sent(),[3,1];case 3:return[2]}})},t.prototype.decodeAsync=function(e){var r,a,n,i,l,s,o;return iy(this,void 0,void 0,function(){var d,u,c,p,A,m,h,C;return $1(this,function(w){switch(w.label){case 0:d=!1,w.label=1;case 1:w.trys.push([1,6,7,12]),r=!0,a=H4(e),w.label=2;case 2:return[4,a.next()];case 3:if(n=w.sent(),i=n.done,!!i)return[3,5];o=n.value,r=!1;try{if(c=o,d)throw this.createExtraByteError(this.totalPos);this.appendBuffer(c);try{u=this.doDecodeSync(),d=!0}catch(b){if(!(b instanceof gg))throw b}this.totalPos+=this.pos}finally{r=!0}w.label=4;case 4:return[3,2];case 5:return[3,12];case 6:return p=w.sent(),l={error:p},[3,12];case 7:return w.trys.push([7,,10,11]),!r&&!i&&(s=a.return)?[4,s.call(a)]:[3,9];case 8:w.sent(),w.label=9;case 9:return[3,11];case 10:if(l)throw l.error;return[7];case 11:return[7];case 12:if(d){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return[2,u]}throw A=this,m=A.headByte,h=A.pos,C=A.totalPos,new RangeError("Insufficient data in parsing ".concat(q1(m)," at ").concat(C," (").concat(h," in the current buffer)"))}})})},t.prototype.decodeArrayStream=function(e){return this.decodeMultiAsync(e,!0)},t.prototype.decodeStream=function(e){return this.decodeMultiAsync(e,!1)},t.prototype.decodeMultiAsync=function(e,r){return ly(this,arguments,function(){var n,i,l,s,o,d,u,c,p,A,m,h;return $1(this,function(C){switch(C.label){case 0:n=r,i=-1,C.label=1;case 1:C.trys.push([1,15,16,21]),l=!0,s=H4(e),C.label=2;case 2:return[4,Bs(s.next())];case 3:if(o=C.sent(),p=o.done,!!p)return[3,14];h=o.value,l=!1,C.label=4;case 4:if(C.trys.push([4,,12,13]),d=h,r&&i===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(d),n&&(i=this.readArraySize(),n=!1,this.complete()),C.label=5;case 5:C.trys.push([5,10,,11]),C.label=6;case 6:return[4,Bs(this.doDecodeSync())];case 7:return[4,C.sent()];case 8:return C.sent(),--i===0?[3,9]:[3,6];case 9:return[3,11];case 10:if(u=C.sent(),!(u instanceof gg))throw u;return[3,11];case 11:return this.totalPos+=this.pos,[3,13];case 12:return l=!0,[7];case 13:return[3,2];case 14:return[3,21];case 15:return c=C.sent(),A={error:c},[3,21];case 16:return C.trys.push([16,,19,20]),!l&&!p&&(m=s.return)?[4,Bs(m.call(s))]:[3,18];case 17:C.sent(),C.label=18;case 18:return[3,20];case 19:if(A)throw A.error;return[7];case 20:return[7];case 21:return[2]}})})},t.prototype.doDecodeSync=function(){e:for(;;){var e=this.readHeadByte(),r=void 0;if(e>=224)r=e-256;else if(e<192)if(e<128)r=e;else if(e<144){var a=e-128;if(a!==0){this.pushMapState(a),this.complete();continue e}else r={}}else if(e<160){var a=e-144;if(a!==0){this.pushArrayState(a),this.complete();continue e}else r=[]}else{var n=e-160;r=this.decodeUtf8String(n,0)}else if(e===192)r=null;else if(e===194)r=!1;else if(e===195)r=!0;else if(e===202)r=this.readF32();else if(e===203)r=this.readF64();else if(e===204)r=this.readU8();else if(e===205)r=this.readU16();else if(e===206)r=this.readU32();else if(e===207)this.useBigInt64?r=this.readU64AsBigInt():r=this.readU64();else if(e===208)r=this.readI8();else if(e===209)r=this.readI16();else if(e===210)r=this.readI32();else if(e===211)this.useBigInt64?r=this.readI64AsBigInt():r=this.readI64();else if(e===217){var n=this.lookU8();r=this.decodeUtf8String(n,1)}else if(e===218){var n=this.lookU16();r=this.decodeUtf8String(n,2)}else if(e===219){var n=this.lookU32();r=this.decodeUtf8String(n,4)}else if(e===220){var a=this.readU16();if(a!==0){this.pushArrayState(a),this.complete();continue e}else r=[]}else if(e===221){var a=this.readU32();if(a!==0){this.pushArrayState(a),this.complete();continue e}else r=[]}else if(e===222){var a=this.readU16();if(a!==0){this.pushMapState(a),this.complete();continue e}else r={}}else if(e===223){var a=this.readU32();if(a!==0){this.pushMapState(a),this.complete();continue e}else r={}}else if(e===196){var a=this.lookU8();r=this.decodeBinary(a,1)}else if(e===197){var a=this.lookU16();r=this.decodeBinary(a,2)}else if(e===198){var a=this.lookU32();r=this.decodeBinary(a,4)}else if(e===212)r=this.decodeExtension(1,0);else if(e===213)r=this.decodeExtension(2,0);else if(e===214)r=this.decodeExtension(4,0);else if(e===215)r=this.decodeExtension(8,0);else if(e===216)r=this.decodeExtension(16,0);else if(e===199){var a=this.lookU8();r=this.decodeExtension(a,1)}else if(e===200){var a=this.lookU16();r=this.decodeExtension(a,2)}else if(e===201){var a=this.lookU32();r=this.decodeExtension(a,4)}else throw new ya("Unrecognized type byte: ".concat(q1(e)));this.complete();for(var i=this.stack;i.length>0;){var l=i[i.length-1];if(l.type===V4)if(l.array[l.position]=r,l.position++,l.position===l.size)i.pop(),r=l.array;else continue e;else if(l.type===tp){if(!oy(r))throw new ya("The type of key must be string or number but "+typeof r);if(r==="__proto__")throw new ya("The key __proto__ is not allowed");l.key=r,l.type=sy;continue e}else if(l.map[l.key]=r,l.readCount++,l.readCount===l.size)i.pop(),r=l.map;else{l.key=null,l.type=tp;continue e}}return r}},t.prototype.readHeadByte=function(){return this.headByte===Ao&&(this.headByte=this.readU8()),this.headByte},t.prototype.complete=function(){this.headByte=Ao},t.prototype.readArraySize=function(){var e=this.readHeadByte();switch(e){case 220:return this.readU16();case 221:return this.readU32();default:{if(e<160)return e-144;throw new ya("Unrecognized array type byte: ".concat(q1(e)))}}},t.prototype.pushMapState=function(e){if(e>this.maxMapLength)throw new ya("Max length exceeded: map length (".concat(e,") > maxMapLengthLength (").concat(this.maxMapLength,")"));this.stack.push({type:tp,size:e,key:null,readCount:0,map:{}})},t.prototype.pushArrayState=function(e){if(e>this.maxArrayLength)throw new ya("Max length exceeded: array length (".concat(e,") > maxArrayLength (").concat(this.maxArrayLength,")"));this.stack.push({type:V4,size:e,array:new Array(e),position:0})},t.prototype.decodeUtf8String=function(e,r){var a;if(e>this.maxStrLength)throw new ya("Max length exceeded: UTF-8 byte length (".concat(e,") > maxStrLength (").concat(this.maxStrLength,")"));if(this.bytes.byteLength<this.pos+r+e)throw Y4;var n=this.pos+r,i;return this.stateIsMapKey()&&(!((a=this.keyDecoder)===null||a===void 0)&&a.canBeCached(e))?i=this.keyDecoder.decode(this.bytes,n,e):i=L5(this.bytes,n,e),this.pos+=r+e,i},t.prototype.stateIsMapKey=function(){if(this.stack.length>0){var e=this.stack[this.stack.length-1];return e.type===tp}return!1},t.prototype.decodeBinary=function(e,r){if(e>this.maxBinLength)throw new ya("Max length exceeded: bin length (".concat(e,") > maxBinLength (").concat(this.maxBinLength,")"));if(!this.hasRemaining(e+r))throw Y4;var a=this.pos+r,n=this.bytes.subarray(a,a+e);return this.pos+=r+e,n},t.prototype.decodeExtension=function(e,r){if(e>this.maxExtLength)throw new ya("Max length exceeded: ext length (".concat(e,") > maxExtLength (").concat(this.maxExtLength,")"));var a=this.view.getInt8(this.pos+r),n=this.decodeBinary(e,r+1);return this.extensionCodec.decode(n,a,this.context)},t.prototype.lookU8=function(){return this.view.getUint8(this.pos)},t.prototype.lookU16=function(){return this.view.getUint16(this.pos)},t.prototype.lookU32=function(){return this.view.getUint32(this.pos)},t.prototype.readU8=function(){var e=this.view.getUint8(this.pos);return this.pos++,e},t.prototype.readI8=function(){var e=this.view.getInt8(this.pos);return this.pos++,e},t.prototype.readU16=function(){var e=this.view.getUint16(this.pos);return this.pos+=2,e},t.prototype.readI16=function(){var e=this.view.getInt16(this.pos);return this.pos+=2,e},t.prototype.readU32=function(){var e=this.view.getUint32(this.pos);return this.pos+=4,e},t.prototype.readI32=function(){var e=this.view.getInt32(this.pos);return this.pos+=4,e},t.prototype.readU64=function(){var e=U5(this.view,this.pos);return this.pos+=8,e},t.prototype.readI64=function(){var e=sf(this.view,this.pos);return this.pos+=8,e},t.prototype.readU64AsBigInt=function(){var e=this.view.getBigUint64(this.pos);return this.pos+=8,e},t.prototype.readI64AsBigInt=function(){var e=this.view.getBigInt64(this.pos);return this.pos+=8,e},t.prototype.readF32=function(){var e=this.view.getFloat32(this.pos);return this.pos+=4,e},t.prototype.readF64=function(){var e=this.view.getFloat64(this.pos);return this.pos+=8,e},t}();function cy(t,e){var r=new py(e);return r.decode(t)}/*!
* https://github.com/Starcounter-Jack/JSON-Patch
* (c) 2017-2022 Joachim Wester
* MIT licensed
*/var my=globalThis&&globalThis.__extends||function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,n){a.__proto__=n}||function(a,n){for(var i in n)n.hasOwnProperty(i)&&(a[i]=n[i])},t(e,r)};return function(e,r){t(e,r);function a(){this.constructor=e}e.prototype=r===null?Object.create(r):(a.prototype=r.prototype,new a)}}(),gy=Object.prototype.hasOwnProperty;function Ag(t,e){return gy.call(t,e)}function hg(t){if(Array.isArray(t)){for(var e=new Array(t.length),r=0;r<e.length;r++)e[r]=""+r;return e}if(Object.keys)return Object.keys(t);var a=[];for(var n in t)Ag(t,n)&&a.push(n);return a}function Ur(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function Bg(t){for(var e=0,r=t.length,a;e<r;){if(a=t.charCodeAt(e),a>=48&&a<=57){e++;continue}return!1}return!0}function xi(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function df(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function Cg(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(var e=0,r=t.length;e<r;e++)if(Cg(t[e]))return!0}else if(typeof t=="object"){for(var a=hg(t),n=a.length,i=0;i<n;i++)if(Cg(t[a[i]]))return!0}}return!1}function N4(t,e){var r=[t];for(var a in e){var n=typeof e[a]=="object"?JSON.stringify(e[a],null,2):e[a];typeof n<"u"&&r.push(a+": "+n)}return r.join(`
`)}var uf=function(t){my(e,t);function e(r,a,n,i,l){var s=this.constructor,o=t.call(this,N4(r,{name:a,index:n,operation:i,tree:l}))||this;return o.name=a,o.index=n,o.operation=i,o.tree=l,Object.setPrototypeOf(o,s.prototype),o.message=N4(r,{name:a,index:n,operation:i,tree:l}),o}return e}(Error),Zt=uf,Ay=Ur,ps={add:function(t,e,r){return t[e]=this.value,{newDocument:r}},remove:function(t,e,r){var a=t[e];return delete t[e],{newDocument:r,removed:a}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:function(t,e,r){var a=Kc(r,this.path);a&&(a=Ur(a));var n=ul(r,{op:"remove",path:this.from}).removed;return ul(r,{op:"add",path:this.path,value:n}),{newDocument:r,removed:a}},copy:function(t,e,r){var a=Kc(r,this.from);return ul(r,{op:"add",path:this.path,value:Ur(a)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Ad(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},hy={add:function(t,e,r){return Bg(e)?t.splice(e,0,this.value):t[e]=this.value,{newDocument:r,index:e}},remove:function(t,e,r){var a=t.splice(e,1);return{newDocument:r,removed:a[0]}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:ps.move,copy:ps.copy,test:ps.test,_get:ps._get};function Kc(t,e){if(e=="")return t;var r={op:"_get",path:e};return ul(t,r),r.value}function ul(t,e,r,a,n,i){if(r===void 0&&(r=!1),a===void 0&&(a=!0),n===void 0&&(n=!0),i===void 0&&(i=0),r&&(typeof r=="function"?r(e,0,t,e.path):fc(e,0)),e.path===""){var l={newDocument:t};if(e.op==="add")return l.newDocument=e.value,l;if(e.op==="replace")return l.newDocument=e.value,l.removed=t,l;if(e.op==="move"||e.op==="copy")return l.newDocument=Kc(t,e.from),e.op==="move"&&(l.removed=t),l;if(e.op==="test"){if(l.test=Ad(t,e.value),l.test===!1)throw new Zt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return l.newDocument=t,l}else{if(e.op==="remove")return l.removed=t,l.newDocument=null,l;if(e.op==="_get")return e.value=t,l;if(r)throw new Zt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",i,e,t);return l}}else{a||(t=Ur(t));var s=e.path||"",o=s.split("/"),d=t,u=1,c=o.length,p=void 0,A=void 0,m=void 0;for(typeof r=="function"?m=r:m=fc;;){if(A=o[u],A&&A.indexOf("~")!=-1&&(A=df(A)),n&&(A=="__proto__"||A=="prototype"&&u>0&&o[u-1]=="constructor"))throw new TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(r&&p===void 0&&(d[A]===void 0?p=o.slice(0,u).join("/"):u==c-1&&(p=e.path),p!==void 0&&m(e,0,t,p)),u++,Array.isArray(d)){if(A==="-")A=d.length;else{if(r&&!Bg(A))throw new Zt("Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index","OPERATION_PATH_ILLEGAL_ARRAY_INDEX",i,e,t);Bg(A)&&(A=~~A)}if(u>=c){if(r&&e.op==="add"&&A>d.length)throw new Zt("The specified index MUST NOT be greater than the number of elements in the array","OPERATION_VALUE_OUT_OF_BOUNDS",i,e,t);var l=hy[e.op].call(e,d,A,t);if(l.test===!1)throw new Zt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return l}}else if(u>=c){var l=ps[e.op].call(e,d,A,t);if(l.test===!1)throw new Zt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return l}if(d=d[A],r&&u<c&&(!d||typeof d!="object"))throw new Zt("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",i,e,t)}}}function x0(t,e,r,a,n){if(a===void 0&&(a=!0),n===void 0&&(n=!0),r&&!Array.isArray(e))throw new Zt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");a||(t=Ur(t));for(var i=new Array(e.length),l=0,s=e.length;l<s;l++)i[l]=ul(t,e[l],r,!0,n,l),t=i[l].newDocument;return i.newDocument=t,i}function By(t,e,r){var a=ul(t,e);if(a.test===!1)throw new Zt("Test operation failed","TEST_OPERATION_FAILED",r,e,t);return a.newDocument}function fc(t,e,r,a){if(typeof t!="object"||t===null||Array.isArray(t))throw new Zt("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(ps[t.op]){if(typeof t.path!="string")throw new Zt("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new Zt('Operation `path` property must start with "/"',"OPERATION_PATH_INVALID",e,t,r);if((t.op==="move"||t.op==="copy")&&typeof t.from!="string")throw new Zt("Operation `from` property is not present (applicable in `move` and `copy` operations)","OPERATION_FROM_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&t.value===void 0)throw new Zt("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&Cg(t.value))throw new Zt("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED",e,t,r);if(r){if(t.op=="add"){var n=t.path.split("/").length,i=a.split("/").length;if(n!==i+1&&n!==i)throw new Zt("Cannot perform an `add` operation at the desired path","OPERATION_PATH_CANNOT_ADD",e,t,r)}else if(t.op==="replace"||t.op==="remove"||t.op==="_get"){if(t.path!==a)throw new Zt("Cannot perform the operation at a path that does not exist","OPERATION_PATH_UNRESOLVABLE",e,t,r)}else if(t.op==="move"||t.op==="copy"){var l={op:"_get",path:t.from,value:void 0},s=pf([l],r);if(s&&s.name==="OPERATION_PATH_UNRESOLVABLE")throw new Zt("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new Zt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function pf(t,e,r){try{if(!Array.isArray(t))throw new Zt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)x0(Ur(e),Ur(t),r||!0);else{r=r||fc;for(var a=0;a<t.length;a++)r(t[a],a,e,void 0)}}catch(n){if(n instanceof Zt)return n;throw n}}function Ad(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){var r=Array.isArray(t),a=Array.isArray(e),n,i,l;if(r&&a){if(i=t.length,i!=e.length)return!1;for(n=i;n--!==0;)if(!Ad(t[n],e[n]))return!1;return!0}if(r!=a)return!1;var s=Object.keys(t);if(i=s.length,i!==Object.keys(e).length)return!1;for(n=i;n--!==0;)if(!e.hasOwnProperty(s[n]))return!1;for(n=i;n--!==0;)if(l=s[n],!Ad(t[l],e[l]))return!1;return!0}return t!==t&&e!==e}const Cy=Object.freeze(Object.defineProperty({__proto__:null,JsonPatchError:Zt,_areEquals:Ad,applyOperation:ul,applyPatch:x0,applyReducer:By,deepClone:Ay,getValueByPointer:Kc,validate:pf,validator:fc},Symbol.toStringTag,{value:"Module"}));/*!
* https://github.com/Starcounter-Jack/JSON-Patch
* (c) 2017-2021 Joachim Wester
* MIT license
*/var Vh=new WeakMap,wy=function(){function t(e){this.observers=new Map,this.obj=e}return t}(),by=function(){function t(e,r){this.callback=e,this.observer=r}return t}();function Ky(t){return Vh.get(t)}function fy(t,e){return t.observers.get(e)}function Qy(t,e){t.observers.delete(e.callback)}function Wy(t,e){e.unobserve()}function vy(t,e){var r=[],a,n=Ky(t);if(!n)n=new wy(t),Vh.set(t,n);else{var i=fy(n,e);a=i&&i.observer}if(a)return a;if(a={},n.value=Ur(t),e){a.callback=e,a.next=null;var l=function(){wg(a)},s=function(){clearTimeout(a.next),a.next=setTimeout(l)};typeof window<"u"&&(window.addEventListener("mouseup",s),window.addEventListener("keyup",s),window.addEventListener("mousedown",s),window.addEventListener("keydown",s),window.addEventListener("change",s))}return a.patches=r,a.object=t,a.unobserve=function(){wg(a),clearTimeout(a.next),Qy(n,a),typeof window<"u"&&(window.removeEventListener("mouseup",s),window.removeEventListener("keyup",s),window.removeEventListener("mousedown",s),window.removeEventListener("keydown",s),window.removeEventListener("change",s))},n.observers.set(e,new by(e,a)),a}function wg(t,e){e===void 0&&(e=!1);var r=Vh.get(t.object);Yh(r.value,t.object,t.patches,"",e),t.patches.length&&x0(r.value,t.patches);var a=t.patches;return a.length>0&&(t.patches=[],t.callback&&t.callback(a)),a}function Yh(t,e,r,a,n){if(e!==t){typeof e.toJSON=="function"&&(e=e.toJSON());for(var i=hg(e),l=hg(t),s=!1,o=l.length-1;o>=0;o--){var d=l[o],u=t[d];if(Ag(e,d)&&!(e[d]===void 0&&u!==void 0&&Array.isArray(e)===!1)){var c=e[d];typeof u=="object"&&u!=null&&typeof c=="object"&&c!=null&&Array.isArray(u)===Array.isArray(c)?Yh(u,c,r,a+"/"+xi(d),n):u!==c&&(n&&r.push({op:"test",path:a+"/"+xi(d),value:Ur(u)}),r.push({op:"replace",path:a+"/"+xi(d),value:Ur(c)}))}else Array.isArray(t)===Array.isArray(e)?(n&&r.push({op:"test",path:a+"/"+xi(d),value:Ur(u)}),r.push({op:"remove",path:a+"/"+xi(d)}),s=!0):(n&&r.push({op:"test",path:a,value:t}),r.push({op:"replace",path:a,value:e}))}if(!(!s&&i.length==l.length))for(var o=0;o<i.length;o++){var d=i[o];!Ag(t,d)&&e[d]!==void 0&&r.push({op:"add",path:a+"/"+xi(d),value:Ur(e[d])})}}}function Fy(t,e,r){r===void 0&&(r=!1);var a=[];return Yh(t,e,a,"",r),a}const yy=Object.freeze(Object.defineProperty({__proto__:null,compare:Fy,generate:wg,observe:vy,unobserve:Wy},Symbol.toStringTag,{value:"Module"}));Object.assign({},Cy,yy,{JsonPatchError:uf,deepClone:Ur,escapePathComponent:xi,unescapePathComponent:df});const Ry=()=>typeof window<"u"&&typeof window.document<"u",Ey=()=>typeof globalThis=="object"&&globalThis.constructor&&globalThis.constructor.name==="DedicatedWorkerGlobalScope",Gy=()=>typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),cf=()=>typeof Deno<"u",Sy=()=>typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"&&!cf(),Zy=()=>{let t;return Ry()?t="browser":Sy()?t="node":Ey()?t="webworker":Gy()?t="jsdom":cf()?t="deno":t="other",t};let em;async function Xy(){return em===void 0&&(em={library:"langchain-js",runtime:Zy()}),em}function Cs(t){var e;try{return typeof process<"u"?(e=process.env)==null?void 0:e[t]:void 0}catch{return}}let rp;const Hy=new Uint8Array(16);function Vy(){if(!rp&&(rp=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!rp))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return rp(Hy)}const Yy=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function mf(t){return typeof t=="string"&&Yy.test(t)}const ir=[];for(let t=0;t<256;++t)ir.push((t+256).toString(16).slice(1));function Ny(t,e=0){return ir[t[e+0]]+ir[t[e+1]]+ir[t[e+2]]+ir[t[e+3]]+"-"+ir[t[e+4]]+ir[t[e+5]]+"-"+ir[t[e+6]]+ir[t[e+7]]+"-"+ir[t[e+8]]+ir[t[e+9]]+"-"+ir[t[e+10]]+ir[t[e+11]]+ir[t[e+12]]+ir[t[e+13]]+ir[t[e+14]]+ir[t[e+15]]}const Ly=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),L4={randomUUID:Ly};function Sa(t,e,r){if(L4.randomUUID&&!e&&!t)return L4.randomUUID();t=t||{};const a=t.random||(t.rng||Vy)();if(a[6]=a[6]&15|64,a[8]=a[8]&63|128,e){r=r||0;for(let n=0;n<16;++n)e[r+n]=a[n];return e}return Ny(a)}function J0(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ty=function(t,e){if(typeof t!="string")throw new TypeError("Expected a string");return e=typeof e>"u"?"_":e,t.replace(/([a-z\d])([A-Z])/g,"$1"+e+"$2").replace(/([A-Z]+)([A-Z][a-z\d]+)/g,"$1"+e+"$2").toLowerCase()};const ky=J0(Ty);var gf={exports:{}};const Uy=/[\p{Lu}]/u,_y=/[\p{Ll}]/u,T4=/^[\p{Lu}](?![\p{Lu}])/gu,Af=/([\p{Alpha}\p{N}_]|$)/u,hf=/[_.\- ]+/,Iy=new RegExp("^"+hf.source),k4=new RegExp(hf.source+Af.source,"gu"),U4=new RegExp("\\d+"+Af.source,"gu"),Dy=(t,e,r)=>{let a=!1,n=!1,i=!1;for(let l=0;l<t.length;l++){const s=t[l];a&&Uy.test(s)?(t=t.slice(0,l)+"-"+t.slice(l),a=!1,i=n,n=!0,l++):n&&i&&_y.test(s)?(t=t.slice(0,l-1)+"-"+t.slice(l-1),i=n,n=!1,a=!0):(a=e(s)===s&&r(s)!==s,i=n,n=r(s)===s&&e(s)!==s)}return t},My=(t,e)=>(T4.lastIndex=0,t.replace(T4,r=>e(r))),xy=(t,e)=>(k4.lastIndex=0,U4.lastIndex=0,t.replace(k4,(r,a)=>e(a)).replace(U4,r=>e(r))),Bf=(t,e)=>{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");if(e={pascalCase:!1,preserveConsecutiveUppercase:!1,...e},Array.isArray(t)?t=t.map(i=>i.trim()).filter(i=>i.length).join("-"):t=t.trim(),t.length===0)return"";const r=e.locale===!1?i=>i.toLowerCase():i=>i.toLocaleLowerCase(e.locale),a=e.locale===!1?i=>i.toUpperCase():i=>i.toLocaleUpperCase(e.locale);return t.length===1?e.pascalCase?a(t):r(t):(t!==r(t)&&(t=Dy(t,r,a)),t=t.replace(Iy,""),e.preserveConsecutiveUppercase?t=My(t,r):t=r(t),e.pascalCase&&(t=a(t.charAt(0))+t.slice(1)),xy(t,a))};gf.exports=Bf;gf.exports.default=Bf;function Jy(t,e){return(e==null?void 0:e[t])||ky(t)}function Oy(t,e,r){const a={};for(const n in t)Object.hasOwn(t,n)&&(a[e(n,r)]=t[n]);return a}function _4(t){return Array.isArray(t)?[...t]:{...t}}function Py(t,e){const r=_4(t);for(const[a,n]of Object.entries(e)){const[i,...l]=a.split(".").reverse();let s=r;for(const o of l.reverse()){if(s[o]===void 0)break;s[o]=_4(s[o]),s=s[o]}s[i]!==void 0&&(s[i]={lc:1,type:"secret",id:[n]})}return r}function Cf(t){const e=Object.getPrototypeOf(t);return typeof t.lc_name=="function"&&(typeof e.lc_name!="function"||t.lc_name()!==e.lc_name())?t.lc_name():t.name}let Qc=class wf{static lc_name(){return this.name}get lc_id(){return[...this.lc_namespace,Cf(this.constructor)]}get lc_secrets(){}get lc_attributes(){}get lc_aliases(){}constructor(e,...r){Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lc_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.lc_kwargs=e||{}}toJSON(){if(!this.lc_serializable)return this.toJSONNotImplemented();if(this.lc_kwargs instanceof wf||typeof this.lc_kwargs!="object"||Array.isArray(this.lc_kwargs))return this.toJSONNotImplemented();const e={},r={},a=Object.keys(this.lc_kwargs).reduce((n,i)=>(n[i]=i in this?this[i]:this.lc_kwargs[i],n),{});for(let n=Object.getPrototypeOf(this);n;n=Object.getPrototypeOf(n))Object.assign(e,Reflect.get(n,"lc_aliases",this)),Object.assign(r,Reflect.get(n,"lc_secrets",this)),Object.assign(a,Reflect.get(n,"lc_attributes",this));return Object.keys(r).forEach(n=>{let i=this,l=a;const[s,...o]=n.split(".").reverse();for(const d of o.reverse()){if(!(d in i)||i[d]===void 0)return;(!(d in l)||l[d]===void 0)&&(typeof i[d]=="object"&&i[d]!=null?l[d]={}:Array.isArray(i[d])&&(l[d]=[])),i=i[d],l=l[d]}s in i&&i[s]!==void 0&&(l[s]=l[s]||i[s])}),{lc:1,type:"constructor",id:this.lc_id,kwargs:Oy(Object.keys(r).length?Py(a,r):a,Jy,e)}}toJSONNotImplemented(){return{lc:1,type:"not_implemented",id:this.lc_id}}},zy=class{},Nh=class bf extends zy{get lc_namespace(){return["langchain_core","callbacks",this.name]}get lc_secrets(){}get lc_attributes(){}get lc_aliases(){}static lc_name(){return this.name}get lc_id(){return[...this.lc_namespace,Cf(this.constructor)]}constructor(e){super(),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lc_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ignoreLLM",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreChain",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreAgent",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreRetriever",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"awaitHandlers",{enumerable:!0,configurable:!0,writable:!0,value:Cs("LANGCHAIN_CALLBACKS_BACKGROUND")!=="true"}),this.lc_kwargs=e||{},e&&(this.ignoreLLM=e.ignoreLLM??this.ignoreLLM,this.ignoreChain=e.ignoreChain??this.ignoreChain,this.ignoreAgent=e.ignoreAgent??this.ignoreAgent,this.ignoreRetriever=e.ignoreRetriever??this.ignoreRetriever,this.awaitHandlers=e._awaitHandler??this.awaitHandlers)}copy(){return new this.constructor(this)}toJSON(){return Qc.prototype.toJSON.call(this)}toJSONNotImplemented(){return Qc.prototype.toJSONNotImplemented.call(this)}static fromMethods(e){class r extends bf{constructor(){super(),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:Sa()}),Object.assign(this,e)}}return new r}};function tm(t,e){return t&&!Array.isArray(t)&&typeof t=="object"?t:{[e]:t}}function jy(t){return t.replace(/[-:.]/g,"")}function qy(t,e,r){const a=r.toFixed(0).slice(0,3).padStart(3,"0");return jy(`${new Date(t).toISOString().slice(0,-1)}${a}Z`)+e}let O0=class extends Nh{constructor(e){super(...arguments),Object.defineProperty(this,"runMap",{enumerable:!0,configurable:!0,writable:!0,value:new Map})}copy(){return this}stringifyError(e){return e instanceof Error?e.message+(e!=null&&e.stack?`
${e.stack}`:""):typeof e=="string"?e:`${e}`}_addChildRun(e,r){e.child_runs.push(r)}async _startTrace(e){var n;const r=qy(e.start_time,e.id,e.execution_order),a={...e};if(a.parent_run_id!==void 0){const i=this.runMap.get(a.parent_run_id);i&&(this._addChildRun(i,a),i.child_execution_order=Math.max(i.child_execution_order,a.child_execution_order),a.trace_id=i.trace_id,i.dotted_order!==void 0&&(a.dotted_order=[i.dotted_order,r].join(".")))}else a.trace_id=a.id,a.dotted_order=r;this.runMap.set(a.id,a),await((n=this.onRunCreate)==null?void 0:n.call(this,a))}async _endTrace(e){var a;const r=e.parent_run_id!==void 0&&this.runMap.get(e.parent_run_id);r?r.child_execution_order=Math.max(r.child_execution_order,e.child_execution_order):await this.persistRun(e),this.runMap.delete(e.id),await((a=this.onRunUpdate)==null?void 0:a.call(this,e))}_getExecutionOrder(e){const r=e!==void 0&&this.runMap.get(e);return r?r.child_execution_order+1:1}async handleLLMStart(e,r,a,n,i,l,s,o){var A;const d=this._getExecutionOrder(n),u=Date.now(),c=s?{...i,metadata:s}:i,p={id:a,name:o??e.id[e.id.length-1],parent_run_id:n,start_time:u,serialized:e,events:[{name:"start",time:new Date(u).toISOString()}],inputs:{prompts:r},execution_order:d,child_runs:[],child_execution_order:d,run_type:"llm",extra:c??{},tags:l||[]};return await this._startTrace(p),await((A=this.onLLMStart)==null?void 0:A.call(this,p)),p}async handleChatModelStart(e,r,a,n,i,l,s,o){var A;const d=this._getExecutionOrder(n),u=Date.now(),c=s?{...i,metadata:s}:i,p={id:a,name:o??e.id[e.id.length-1],parent_run_id:n,start_time:u,serialized:e,events:[{name:"start",time:new Date(u).toISOString()}],inputs:{messages:r},execution_order:d,child_runs:[],child_execution_order:d,run_type:"llm",extra:c??{},tags:l||[]};return await this._startTrace(p),await((A=this.onLLMStart)==null?void 0:A.call(this,p)),p}async handleLLMEnd(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="llm")throw new Error("No LLM run to end.");return a.end_time=Date.now(),a.outputs=e,a.events.push({name:"end",time:new Date(a.end_time).toISOString()}),await((n=this.onLLMEnd)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleLLMError(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="llm")throw new Error("No LLM run to end.");return a.end_time=Date.now(),a.error=this.stringifyError(e),a.events.push({name:"error",time:new Date(a.end_time).toISOString()}),await((n=this.onLLMError)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleChainStart(e,r,a,n,i,l,s,o){var p;const d=this._getExecutionOrder(n),u=Date.now(),c={id:a,name:o??e.id[e.id.length-1],parent_run_id:n,start_time:u,serialized:e,events:[{name:"start",time:new Date(u).toISOString()}],inputs:r,execution_order:d,child_execution_order:d,run_type:s??"chain",child_runs:[],extra:l?{metadata:l}:{},tags:i||[]};return await this._startTrace(c),await((p=this.onChainStart)==null?void 0:p.call(this,c)),c}async handleChainEnd(e,r,a,n,i){var s;const l=this.runMap.get(r);if(!l)throw new Error("No chain run to end.");return l.end_time=Date.now(),l.outputs=tm(e,"output"),l.events.push({name:"end",time:new Date(l.end_time).toISOString()}),(i==null?void 0:i.inputs)!==void 0&&(l.inputs=tm(i.inputs,"input")),await((s=this.onChainEnd)==null?void 0:s.call(this,l)),await this._endTrace(l),l}async handleChainError(e,r,a,n,i){var s;const l=this.runMap.get(r);if(!l)throw new Error("No chain run to end.");return l.end_time=Date.now(),l.error=this.stringifyError(e),l.events.push({name:"error",time:new Date(l.end_time).toISOString()}),(i==null?void 0:i.inputs)!==void 0&&(l.inputs=tm(i.inputs,"input")),await((s=this.onChainError)==null?void 0:s.call(this,l)),await this._endTrace(l),l}async handleToolStart(e,r,a,n,i,l,s){var c;const o=this._getExecutionOrder(n),d=Date.now(),u={id:a,name:s??e.id[e.id.length-1],parent_run_id:n,start_time:d,serialized:e,events:[{name:"start",time:new Date(d).toISOString()}],inputs:{input:r},execution_order:o,child_execution_order:o,run_type:"tool",child_runs:[],extra:l?{metadata:l}:{},tags:i||[]};return await this._startTrace(u),await((c=this.onToolStart)==null?void 0:c.call(this,u)),u}async handleToolEnd(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="tool")throw new Error("No tool run to end");return a.end_time=Date.now(),a.outputs={output:e},a.events.push({name:"end",time:new Date(a.end_time).toISOString()}),await((n=this.onToolEnd)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleToolError(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="tool")throw new Error("No tool run to end");return a.end_time=Date.now(),a.error=this.stringifyError(e),a.events.push({name:"error",time:new Date(a.end_time).toISOString()}),await((n=this.onToolError)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleAgentAction(e,r){var i;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="chain")return;const n=a;n.actions=n.actions||[],n.actions.push(e),n.events.push({name:"agent_action",time:new Date().toISOString(),kwargs:{action:e}}),await((i=this.onAgentAction)==null?void 0:i.call(this,a))}async handleAgentEnd(e,r){var n;const a=this.runMap.get(r);!a||(a==null?void 0:a.run_type)!=="chain"||(a.events.push({name:"agent_end",time:new Date().toISOString(),kwargs:{action:e}}),await((n=this.onAgentEnd)==null?void 0:n.call(this,a)))}async handleRetrieverStart(e,r,a,n,i,l,s){var c;const o=this._getExecutionOrder(n),d=Date.now(),u={id:a,name:s??e.id[e.id.length-1],parent_run_id:n,start_time:d,serialized:e,events:[{name:"start",time:new Date(d).toISOString()}],inputs:{query:r},execution_order:o,child_execution_order:o,run_type:"retriever",child_runs:[],extra:l?{metadata:l}:{},tags:i||[]};return await this._startTrace(u),await((c=this.onRetrieverStart)==null?void 0:c.call(this,u)),u}async handleRetrieverEnd(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="retriever")throw new Error("No retriever run to end");return a.end_time=Date.now(),a.outputs={documents:e},a.events.push({name:"end",time:new Date(a.end_time).toISOString()}),await((n=this.onRetrieverEnd)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleRetrieverError(e,r){var n;const a=this.runMap.get(r);if(!a||(a==null?void 0:a.run_type)!=="retriever")throw new Error("No retriever run to end");return a.end_time=Date.now(),a.error=this.stringifyError(e),a.events.push({name:"error",time:new Date(a.end_time).toISOString()}),await((n=this.onRetrieverError)==null?void 0:n.call(this,a)),await this._endTrace(a),a}async handleText(e,r){var n;const a=this.runMap.get(r);!a||(a==null?void 0:a.run_type)!=="chain"||(a.events.push({name:"text",time:new Date().toISOString(),kwargs:{text:e}}),await((n=this.onText)==null?void 0:n.call(this,a)))}async handleLLMNewToken(e,r,a,n,i,l){var o;const s=this.runMap.get(a);if(!s||(s==null?void 0:s.run_type)!=="llm")throw new Error('Invalid "runId" provided to "handleLLMNewToken" callback.');return s.events.push({name:"new_token",time:new Date().toISOString(),kwargs:{token:e,idx:r,chunk:l==null?void 0:l.chunk}}),await((o=this.onLLMNewToken)==null?void 0:o.call(this,s,e,{chunk:l==null?void 0:l.chunk})),s}};var Lh={exports:{}};Lh.exports;(function(t){const r=(i=0)=>l=>`\x1B[${38+i};5;${l}m`,a=(i=0)=>(l,s,o)=>`\x1B[${38+i};2;${l};${s};${o}m`;function n(){const i=new Map,l={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};l.color.gray=l.color.blackBright,l.bgColor.bgGray=l.bgColor.bgBlackBright,l.color.grey=l.color.blackBright,l.bgColor.bgGrey=l.bgColor.bgBlackBright;for(const[s,o]of Object.entries(l)){for(const[d,u]of Object.entries(o))l[d]={open:`\x1B[${u[0]}m`,close:`\x1B[${u[1]}m`},o[d]=l[d],i.set(u[0],u[1]);Object.defineProperty(l,s,{value:o,enumerable:!1})}return Object.defineProperty(l,"codes",{value:i,enumerable:!1}),l.color.close="\x1B[39m",l.bgColor.close="\x1B[49m",l.color.ansi256=r(),l.color.ansi16m=a(),l.bgColor.ansi256=r(10),l.bgColor.ansi16m=a(10),Object.defineProperties(l,{rgbToAnsi256:{value:(s,o,d)=>s===o&&o===d?s<8?16:s>248?231:Math.round((s-8)/247*24)+232:16+36*Math.round(s/255*5)+6*Math.round(o/255*5)+Math.round(d/255*5),enumerable:!1},hexToRgb:{value:s=>{const o=/(?<colorString>[a-f\d]{6}|[a-f\d]{3})/i.exec(s.toString(16));if(!o)return[0,0,0];let{colorString:d}=o.groups;d.length===3&&(d=d.split("").map(c=>c+c).join(""));const u=Number.parseInt(d,16);return[u>>16&255,u>>8&255,u&255]},enumerable:!1},hexToAnsi256:{value:s=>l.rgbToAnsi256(...l.hexToRgb(s)),enumerable:!1}}),l}Object.defineProperty(t,"exports",{enumerable:!0,get:n})})(Lh);var $y=Lh.exports;const Kf=J0($y);function fr(t,e){return`${t.open}${e}${t.close}`}function sa(t,e){try{return JSON.stringify(t,null,2)}catch{return e}}function Hn(t){if(!t.end_time)return"";const e=t.end_time-t.start_time;return e<1e3?`${e}ms`:`${(e/1e3).toFixed(2)}s`}const{color:Zr}=Kf;let I4=class extends O0{constructor(){super(...arguments),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"console_callback_handler"})}persistRun(e){return Promise.resolve()}getParents(e){const r=[];let a=e;for(;a.parent_run_id;){const n=this.runMap.get(a.parent_run_id);if(n)r.push(n),a=n;else break}return r}getBreadcrumbs(e){const a=[...this.getParents(e).reverse(),e].map((n,i,l)=>{const s=`${n.execution_order}:${n.run_type}:${n.name}`;return i===l.length-1?fr(Kf.bold,s):s}).join(" > ");return fr(Zr.grey,a)}onChainStart(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.green,"[chain/start]")} [${r}] Entering Chain run with input: ${sa(e.inputs,"[inputs]")}`)}onChainEnd(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.cyan,"[chain/end]")} [${r}] [${Hn(e)}] Exiting Chain run with output: ${sa(e.outputs,"[outputs]")}`)}onChainError(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.red,"[chain/error]")} [${r}] [${Hn(e)}] Chain run errored with error: ${sa(e.error,"[error]")}`)}onLLMStart(e){const r=this.getBreadcrumbs(e),a="prompts"in e.inputs?{prompts:e.inputs.prompts.map(n=>n.trim())}:e.inputs;console.log(`${fr(Zr.green,"[llm/start]")} [${r}] Entering LLM run with input: ${sa(a,"[inputs]")}`)}onLLMEnd(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.cyan,"[llm/end]")} [${r}] [${Hn(e)}] Exiting LLM run with output: ${sa(e.outputs,"[response]")}`)}onLLMError(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.red,"[llm/error]")} [${r}] [${Hn(e)}] LLM run errored with error: ${sa(e.error,"[error]")}`)}onToolStart(e){var a;const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.green,"[tool/start]")} [${r}] Entering Tool run with input: "${(a=e.inputs.input)==null?void 0:a.trim()}"`)}onToolEnd(e){var a,n;const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.cyan,"[tool/end]")} [${r}] [${Hn(e)}] Exiting Tool run with output: "${(n=(a=e.outputs)==null?void 0:a.output)==null?void 0:n.trim()}"`)}onToolError(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.red,"[tool/error]")} [${r}] [${Hn(e)}] Tool run errored with error: ${sa(e.error,"[error]")}`)}onRetrieverStart(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.green,"[retriever/start]")} [${r}] Entering Retriever run with input: ${sa(e.inputs,"[inputs]")}`)}onRetrieverEnd(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.cyan,"[retriever/end]")} [${r}] [${Hn(e)}] Exiting Retriever run with output: ${sa(e.outputs,"[outputs]")}`)}onRetrieverError(e){const r=this.getBreadcrumbs(e);console.log(`${fr(Zr.red,"[retriever/error]")} [${r}] [${Hn(e)}] Retriever run errored with error: ${sa(e.error,"[error]")}`)}onAgentAction(e){const r=e,a=this.getBreadcrumbs(e);console.log(`${fr(Zr.blue,"[agent/action]")} [${a}] Agent selected action: ${sa(r.actions[r.actions.length-1],"[action]")}`)}};var P0={exports:{}},ff={};function $r(t,e){typeof e=="boolean"&&(e={forever:e}),this._originalTimeouts=JSON.parse(JSON.stringify(t)),this._timeouts=t,this._options=e||{},this._maxRetryTime=e&&e.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}var eR=$r;$r.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)};$r.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null};$r.prototype.retry=function(t){if(this._timeout&&clearTimeout(this._timeout),!t)return!1;var e=new Date().getTime();if(t&&e-this._operationStart>=this._maxRetryTime)return this._errors.push(t),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(t);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(0,this._errors.length-1),r=this._cachedTimeouts.slice(-1);else return!1;var a=this;return this._timer=setTimeout(function(){a._attempts++,a._operationTimeoutCb&&(a._timeout=setTimeout(function(){a._operationTimeoutCb(a._attempts)},a._operationTimeout),a._options.unref&&a._timeout.unref()),a._fn(a._attempts)},r),this._options.unref&&this._timer.unref(),!0};$r.prototype.attempt=function(t,e){this._fn=t,e&&(e.timeout&&(this._operationTimeout=e.timeout),e.cb&&(this._operationTimeoutCb=e.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};$r.prototype.try=function(t){console.log("Using RetryOperation.try() is deprecated"),this.attempt(t)};$r.prototype.start=function(t){console.log("Using RetryOperation.start() is deprecated"),this.attempt(t)};$r.prototype.start=$r.prototype.try;$r.prototype.errors=function(){return this._errors};$r.prototype.attempts=function(){return this._attempts};$r.prototype.mainError=function(){if(this._errors.length===0)return null;for(var t={},e=null,r=0,a=0;a<this._errors.length;a++){var n=this._errors[a],i=n.message,l=(t[i]||0)+1;t[i]=l,l>=r&&(e=n,r=l)}return e};(function(t){var e=eR;t.operation=function(r){var a=t.timeouts(r);return new e(a,{forever:r&&(r.forever||r.retries===1/0),unref:r&&r.unref,maxRetryTime:r&&r.maxRetryTime})},t.timeouts=function(r){if(r instanceof Array)return[].concat(r);var a={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in r)a[n]=r[n];if(a.minTimeout>a.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var i=[],l=0;l<a.retries;l++)i.push(this.createTimeout(l,a));return r&&r.forever&&!i.length&&i.push(this.createTimeout(l,a)),i.sort(function(s,o){return s-o}),i},t.createTimeout=function(r,a){var n=a.randomize?Math.random()+1:1,i=Math.round(n*Math.max(a.minTimeout,1)*Math.pow(a.factor,r));return i=Math.min(i,a.maxTimeout),i},t.wrap=function(r,a,n){if(a instanceof Array&&(n=a,a=null),!n){n=[];for(var i in r)typeof r[i]=="function"&&n.push(i)}for(var l=0;l<n.length;l++){var s=n[l],o=r[s];r[s]=(function(u){var c=t.operation(a),p=Array.prototype.slice.call(arguments,1),A=p.pop();p.push(function(m){c.retry(m)||(m&&(arguments[0]=c.mainError()),A.apply(this,arguments))}),c.attempt(function(){u.apply(r,p)})}).bind(r,o),r[s].options=a}}})(ff);var tR=ff;const rR=tR,aR=["Failed to fetch","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed"];let Qf=class extends Error{constructor(e){super(),e instanceof Error?(this.originalError=e,{message:e}=e):(this.originalError=new Error(e),this.originalError.stack=this.stack),this.name="AbortError",this.message=e}};const nR=(t,e,r)=>{const a=r.retries-(e-1);return t.attemptNumber=e,t.retriesLeft=a,t},iR=t=>aR.includes(t),Wf=(t,e)=>new Promise((r,a)=>{e={onFailedAttempt:()=>{},retries:10,...e};const n=rR.operation(e);n.attempt(async i=>{try{r(await t(i))}catch(l){if(!(l instanceof Error)){a(new TypeError(`Non-error was thrown: "${l}". You should only throw errors.`));return}if(l instanceof Qf)n.stop(),a(l.originalError);else if(l instanceof TypeError&&!iR(l.message))n.stop(),a(l);else{nR(l,i,e);try{await e.onFailedAttempt(l)}catch(s){a(s);return}n.retry(l)||a(n.mainError())}}})});P0.exports=Wf;P0.exports.default=Wf;P0.exports.AbortError=Qf;var lR=P0.exports;const Wc=J0(lR);var vf={},Ff={exports:{}};(function(t){var e=Object.prototype.hasOwnProperty,r="~";function a(){}Object.create&&(a.prototype=Object.create(null),new a().__proto__||(r=!1));function n(o,d,u){this.fn=o,this.context=d,this.once=u||!1}function i(o,d,u,c,p){if(typeof u!="function")throw new TypeError("The listener must be a function");var A=new n(u,c||o,p),m=r?r+d:d;return o._events[m]?o._events[m].fn?o._events[m]=[o._events[m],A]:o._events[m].push(A):(o._events[m]=A,o._eventsCount++),o}function l(o,d){--o._eventsCount===0?o._events=new a:delete o._events[d]}function s(){this._events=new a,this._eventsCount=0}s.prototype.eventNames=function(){var d=[],u,c;if(this._eventsCount===0)return d;for(c in u=this._events)e.call(u,c)&&d.push(r?c.slice(1):c);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},s.prototype.listeners=function(d){var u=r?r+d:d,c=this._events[u];if(!c)return[];if(c.fn)return[c.fn];for(var p=0,A=c.length,m=new Array(A);p<A;p++)m[p]=c[p].fn;return m},s.prototype.listenerCount=function(d){var u=r?r+d:d,c=this._events[u];return c?c.fn?1:c.length:0},s.prototype.emit=function(d,u,c,p,A,m){var h=r?r+d:d;if(!this._events[h])return!1;var C=this._events[h],w=arguments.length,b,f;if(C.fn){switch(C.once&&this.removeListener(d,C.fn,void 0,!0),w){case 1:return C.fn.call(C.context),!0;case 2:return C.fn.call(C.context,u),!0;case 3:return C.fn.call(C.context,u,c),!0;case 4:return C.fn.call(C.context,u,c,p),!0;case 5:return C.fn.call(C.context,u,c,p,A),!0;case 6:return C.fn.call(C.context,u,c,p,A,m),!0}for(f=1,b=new Array(w-1);f<w;f++)b[f-1]=arguments[f];C.fn.apply(C.context,b)}else{var K=C.length,W;for(f=0;f<K;f++)switch(C[f].once&&this.removeListener(d,C[f].fn,void 0,!0),w){case 1:C[f].fn.call(C[f].context);break;case 2:C[f].fn.call(C[f].context,u);break;case 3:C[f].fn.call(C[f].context,u,c);break;case 4:C[f].fn.call(C[f].context,u,c,p);break;default:if(!b)for(W=1,b=new Array(w-1);W<w;W++)b[W-1]=arguments[W];C[f].fn.apply(C[f].context,b)}}return!0},s.prototype.on=function(d,u,c){return i(this,d,u,c,!1)},s.prototype.once=function(d,u,c){return i(this,d,u,c,!0)},s.prototype.removeListener=function(d,u,c,p){var A=r?r+d:d;if(!this._events[A])return this;if(!u)return l(this,A),this;var m=this._events[A];if(m.fn)m.fn===u&&(!p||m.once)&&(!c||m.context===c)&&l(this,A);else{for(var h=0,C=[],w=m.length;h<w;h++)(m[h].fn!==u||p&&!m[h].once||c&&m[h].context!==c)&&C.push(m[h]);C.length?this._events[A]=C.length===1?C[0]:C:l(this,A)}return this},s.prototype.removeAllListeners=function(d){var u;return d?(u=r?r+d:d,this._events[u]&&l(this,u)):(this._events=new a,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=r,s.EventEmitter=s,t.exports=s})(Ff);var sR=Ff.exports,z0={exports:{}},oR=(t,e)=>(e=e||(()=>{}),t.then(r=>new Promise(a=>{a(e())}).then(()=>r),r=>new Promise(a=>{a(e())}).then(()=>{throw r})));const dR=oR;class yf extends Error{constructor(e){super(e),this.name="TimeoutError"}}const Rf=(t,e,r)=>new Promise((a,n)=>{if(typeof e!="number"||e<0)throw new TypeError("Expected `milliseconds` to be a positive number");if(e===1/0){a(t);return}const i=setTimeout(()=>{if(typeof r=="function"){try{a(r())}catch(o){n(o)}return}const l=typeof r=="string"?r:`Promise timed out after ${e} milliseconds`,s=r instanceof Error?r:new yf(l);typeof t.cancel=="function"&&t.cancel(),n(s)},e);dR(t.then(a,n),()=>{clearTimeout(i)})});z0.exports=Rf;z0.exports.default=Rf;z0.exports.TimeoutError=yf;var uR=z0.exports,Th={},kh={};Object.defineProperty(kh,"__esModule",{value:!0});function pR(t,e,r){let a=0,n=t.length;for(;n>0;){const i=n/2|0;let l=a+i;r(t[l],e)<=0?(a=++l,n-=i+1):n=i}return a}kh.default=pR;Object.defineProperty(Th,"__esModule",{value:!0});const cR=kh;let mR=class{constructor(){this._queue=[]}enqueue(e,r){r=Object.assign({priority:0},r);const a={priority:r.priority,run:e};if(this.size&&this._queue[this.size-1].priority>=r.priority){this._queue.push(a);return}const n=cR.default(this._queue,a,(i,l)=>l.priority-i.priority);this._queue.splice(n,0,a)}dequeue(){const e=this._queue.shift();return e==null?void 0:e.run}filter(e){return this._queue.filter(r=>r.priority===e.priority).map(r=>r.run)}get size(){return this._queue.length}};Th.default=mR;Object.defineProperty(vf,"__esModule",{value:!0});const gR=sR,Ef=uR,AR=Th,ap=()=>{},hR=new Ef.TimeoutError;class BR extends gR{constructor(e){var r,a,n,i;if(super(),this._intervalCount=0,this._intervalEnd=0,this._pendingCount=0,this._resolveEmpty=ap,this._resolveIdle=ap,e=Object.assign({carryoverConcurrencyCount:!1,intervalCap:1/0,interval:0,concurrency:1/0,autoStart:!0,queueClass:AR.default},e),!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(a=(r=e.intervalCap)===null||r===void 0?void 0:r.toString())!==null&&a!==void 0?a:""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(i=(n=e.interval)===null||n===void 0?void 0:n.toString())!==null&&i!==void 0?i:""}\` (${typeof e.interval})`);this._carryoverConcurrencyCount=e.carryoverConcurrencyCount,this._isIntervalIgnored=e.intervalCap===1/0||e.interval===0,this._intervalCap=e.intervalCap,this._interval=e.interval,this._queue=new e.queueClass,this._queueClass=e.queueClass,this.concurrency=e.concurrency,this._timeout=e.timeout,this._throwOnTimeout=e.throwOnTimeout===!0,this._isPaused=e.autoStart===!1}get _doesIntervalAllowAnother(){return this._isIntervalIgnored||this._intervalCount<this._intervalCap}get _doesConcurrentAllowAnother(){return this._pendingCount<this._concurrency}_next(){this._pendingCount--,this._tryToStartAnother(),this.emit("next")}_resolvePromises(){this._resolveEmpty(),this._resolveEmpty=ap,this._pendingCount===0&&(this._resolveIdle(),this._resolveIdle=ap,this.emit("idle"))}_onResumeInterval(){this._onInterval(),this._initializeIntervalIfNeeded(),this._timeoutId=void 0}_isIntervalPaused(){const e=Date.now();if(this._intervalId===void 0){const r=this._intervalEnd-e;if(r<0)this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0;else return this._timeoutId===void 0&&(this._timeoutId=setTimeout(()=>{this._onResumeInterval()},r)),!0}return!1}_tryToStartAnother(){if(this._queue.size===0)return this._intervalId&&clearInterval(this._intervalId),this._intervalId=void 0,this._resolvePromises(),!1;if(!this._isPaused){const e=!this._isIntervalPaused();if(this._doesIntervalAllowAnother&&this._doesConcurrentAllowAnother){const r=this._queue.dequeue();return r?(this.emit("active"),r(),e&&this._initializeIntervalIfNeeded(),!0):!1}}return!1}_initializeIntervalIfNeeded(){this._isIntervalIgnored||this._intervalId!==void 0||(this._intervalId=setInterval(()=>{this._onInterval()},this._interval),this._intervalEnd=Date.now()+this._interval)}_onInterval(){this._intervalCount===0&&this._pendingCount===0&&this._intervalId&&(clearInterval(this._intervalId),this._intervalId=void 0),this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0,this._processQueue()}_processQueue(){for(;this._tryToStartAnother(););}get concurrency(){return this._concurrency}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this._concurrency=e,this._processQueue()}async add(e,r={}){return new Promise((a,n)=>{const i=async()=>{this._pendingCount++,this._intervalCount++;try{const l=this._timeout===void 0&&r.timeout===void 0?e():Ef.default(Promise.resolve(e()),r.timeout===void 0?this._timeout:r.timeout,()=>{(r.throwOnTimeout===void 0?this._throwOnTimeout:r.throwOnTimeout)&&n(hR)});a(await l)}catch(l){n(l)}this._next()};this._queue.enqueue(i,r),this._tryToStartAnother(),this.emit("add")})}async addAll(e,r){return Promise.all(e.map(async a=>this.add(a,r)))}start(){return this._isPaused?(this._isPaused=!1,this._processQueue(),this):this}pause(){this._isPaused=!0}clear(){this._queue=new this._queueClass}async onEmpty(){if(this._queue.size!==0)return new Promise(e=>{const r=this._resolveEmpty;this._resolveEmpty=()=>{r(),e()}})}async onIdle(){if(!(this._pendingCount===0&&this._queue.size===0))return new Promise(e=>{const r=this._resolveIdle;this._resolveIdle=()=>{r(),e()}})}get size(){return this._queue.size}sizeBy(e){return this._queue.filter(e).length}get pending(){return this._pendingCount}get isPaused(){return this._isPaused}get timeout(){return this._timeout}set timeout(e){this._timeout=e}}var wn=vf.default=BR;const CR=[400,401,403,404,405,406,407,408],wR=[409];let D4=class{constructor(e){Object.defineProperty(this,"maxConcurrency",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxRetries",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"onFailedResponseHook",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxConcurrency=e.maxConcurrency??1/0,this.maxRetries=e.maxRetries??6,"default"in wn?this.queue=new wn.default({concurrency:this.maxConcurrency}):this.queue=new wn({concurrency:this.maxConcurrency}),this.onFailedResponseHook=e==null?void 0:e.onFailedResponseHook}call(e,...r){const a=this.onFailedResponseHook;return this.queue.add(()=>Wc(()=>e(...r).catch(n=>{throw n instanceof Error?n:new Error(n)}),{async onFailedAttempt(n){if(n.message.startsWith("Cancel")||n.message.startsWith("TimeoutError")||n.message.startsWith("AbortError")||(n==null?void 0:n.code)==="ECONNABORTED")throw n;const i=n==null?void 0:n.response,l=i==null?void 0:i.status;if(l){if(CR.includes(+l))throw n;if(wR.includes(+l))return;a&&await a(i)}},retries:this.maxRetries,randomize:!0}),{throwOnTimeout:!0})}callWithOptions(e,r,...a){return e.signal?Promise.race([this.call(r,...a),new Promise((n,i)=>{var l;(l=e.signal)==null||l.addEventListener("abort",()=>{i(new Error("AbortError"))})})]):this.call(r,...a)}fetch(...e){return this.call(()=>fetch(...e).then(r=>r.ok?r:Promise.reject(r)))}};function M4(t){return typeof(t==null?void 0:t._getType)=="function"}function x4(t){const e={type:t._getType(),data:{content:t.content}};return t!=null&&t.additional_kwargs&&Object.keys(t.additional_kwargs).length>0&&(e.data.additional_kwargs={...t.additional_kwargs}),e}let qa;const bR=()=>typeof window<"u"&&typeof window.document<"u",KR=()=>typeof globalThis=="object"&&globalThis.constructor&&globalThis.constructor.name==="DedicatedWorkerGlobalScope",fR=()=>typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Gf=()=>typeof Deno<"u",QR=()=>typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"&&!Gf(),WR=()=>qa||(bR()?qa="browser":QR()?qa="node":KR()?qa="webworker":fR()?qa="jsdom":Gf()?qa="deno":qa="other",qa);let rm;async function vR(){if(rm===void 0){const t=WR(),e=RR();rm={library:"langsmith",runtime:t,sdk:"langsmith-js",sdk_version:Zf,...e}}return rm}function FR(){const t=yR()||{},e={},r=["LANGCHAIN_API_KEY","LANGCHAIN_ENDPOINT","LANGCHAIN_TRACING_V2","LANGCHAIN_PROJECT","LANGCHAIN_SESSION"];for(const[a,n]of Object.entries(t))a.startsWith("LANGCHAIN_")&&typeof n=="string"&&!r.includes(a)&&!a.toLowerCase().includes("key")&&!a.toLowerCase().includes("secret")&&!a.toLowerCase().includes("token")&&(a==="LANGCHAIN_REVISION_ID"?e.revision_id=n:e[a]=n);return e}function yR(){try{return typeof process<"u"&&process.env?Object.entries(process.env).reduce((t,[e,r])=>(t[e]=String(r),t),{}):void 0}catch{return}}function qi(t){var e;try{return typeof process<"u"?(e=process.env)==null?void 0:e[t]:void 0}catch{return}}let am;function RR(){if(am!==void 0)return am;const t=["VERCEL_GIT_COMMIT_SHA","NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA","COMMIT_REF","RENDER_GIT_COMMIT","CI_COMMIT_SHA","CIRCLE_SHA1","CF_PAGES_COMMIT_SHA","REACT_APP_GIT_SHA","SOURCE_VERSION","GITHUB_SHA","TRAVIS_COMMIT","GIT_COMMIT","BUILD_VCS_NUMBER","bamboo_planRepository_revision","Build.SourceVersion","BITBUCKET_COMMIT","DRONE_COMMIT_SHA","SEMAPHORE_GIT_SHA","BUILDKITE_COMMIT"],e={};for(const r of t){const a=qi(r);a!==void 0&&(e[r]=a)}return am=e,e}function Rt(t){if(!mf(t))throw new Error(`Invalid UUID: ${t}`)}async function J4(t){const e=await vR(),r=FR();return t.map(a=>{const n=a.extra??{},i=n.metadata;return a.extra={...n,runtime:{...e,...n==null?void 0:n.runtime},metadata:{...r,...r.revision_id||a.revision_id?{revision_id:a.revision_id??r.revision_id}:{},...i}},a})}const ER=()=>{const t=qi("LANGCHAIN_TRACING_SAMPLING_RATE");if(t===void 0)return;const e=parseFloat(t);if(e<0||e>1)throw new Error(`LANGCHAIN_TRACING_SAMPLING_RATE must be between 0 and 1 if set. Got: ${e}`);return e},GR=t=>{const r=t.replace("http://","").replace("https://","").split("/")[0].split(":")[0];return r==="localhost"||r==="127.0.0.1"||r==="::1"},Vn=async(t,e)=>{const r=await t.text();if(!t.ok)throw new Error(`Failed to ${e}: ${t.status} ${t.statusText} ${r}`)};async function SR(t){const e=[];for await(const r of t)e.push(r);return e}function nm(t){if(t!==void 0)return t.trim().replace(/^"(.*)"$/,"$1").replace(/^'(.*)'$/,"$1")}const ZR=async t=>{if((t==null?void 0:t.status)===429){const e=parseInt(t.headers.get("retry-after")??"30",10)*1e3;if(e>0)return await new Promise(r=>setTimeout(r,e)),!0}return!1};let XR=class{constructor(){Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:[]})}get size(){return this.items.length}push(e){return new Promise(r=>{this.items.push([e,r])})}pop(e){if(e<1)throw new Error("Number of items to pop off may not be less than 1.");const r=[];for(;r.length<e&&this.items.length;){const a=this.items.shift();if(a)r.push(a);else break}return[r.map(a=>a[0]),()=>r.forEach(a=>a[1]())]}};const HR=20971520;let VR=class Sf{constructor(e={}){Object.defineProperty(this,"apiKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"apiUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"webUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"caller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"batchIngestCaller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timeout_ms",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tenantId",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"hideInputs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"hideOutputs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tracingSampleRate",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sampledPostUuids",{enumerable:!0,configurable:!0,writable:!0,value:new Set}),Object.defineProperty(this,"autoBatchTracing",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"batchEndpointSupported",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"autoBatchQueue",{enumerable:!0,configurable:!0,writable:!0,value:new XR}),Object.defineProperty(this,"pendingAutoBatchedRunLimit",{enumerable:!0,configurable:!0,writable:!0,value:100}),Object.defineProperty(this,"autoBatchTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"autoBatchInitialDelayMs",{enumerable:!0,configurable:!0,writable:!0,value:250}),Object.defineProperty(this,"autoBatchAggregationDelayMs",{enumerable:!0,configurable:!0,writable:!0,value:50}),Object.defineProperty(this,"serverInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fetchOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0});const r=Sf.getDefaultClientConfig();this.tracingSampleRate=ER(),this.apiUrl=nm(e.apiUrl??r.apiUrl)??"",this.apiKey=nm(e.apiKey??r.apiKey),this.webUrl=nm(e.webUrl??r.webUrl),this.timeout_ms=e.timeout_ms??12e3,this.caller=new D4(e.callerOptions??{}),this.batchIngestCaller=new D4({...e.callerOptions??{},onFailedResponseHook:ZR}),this.hideInputs=e.hideInputs??r.hideInputs,this.hideOutputs=e.hideOutputs??r.hideOutputs,this.autoBatchTracing=e.autoBatchTracing??this.autoBatchTracing,this.pendingAutoBatchedRunLimit=e.pendingAutoBatchedRunLimit??this.pendingAutoBatchedRunLimit,this.fetchOptions=e.fetchOptions||{}}static getDefaultClientConfig(){const e=qi("LANGCHAIN_API_KEY"),r=qi("LANGCHAIN_ENDPOINT")??"https://api.smith.langchain.com",a=qi("LANGCHAIN_HIDE_INPUTS")==="true",n=qi("LANGCHAIN_HIDE_OUTPUTS")==="true";return{apiUrl:r,apiKey:e,webUrl:void 0,hideInputs:a,hideOutputs:n}}getHostUrl(){return this.webUrl?this.webUrl:GR(this.apiUrl)?(this.webUrl="http://localhost:3000",this.webUrl):this.apiUrl.includes("/api")&&!this.apiUrl.split(".",1)[0].endsWith("api")?(this.webUrl=this.apiUrl.replace("/api",""),this.webUrl):this.apiUrl.split(".",1)[0].includes("dev")?(this.webUrl="https://dev.smith.langchain.com",this.webUrl):(this.webUrl="https://smith.langchain.com",this.webUrl)}get headers(){const e={"User-Agent":`langsmith-js/${Zf}`};return this.apiKey&&(e["x-api-key"]=`${this.apiKey}`),e}processInputs(e){return this.hideInputs===!1?e:this.hideInputs===!0?{}:typeof this.hideInputs=="function"?this.hideInputs(e):e}processOutputs(e){return this.hideOutputs===!1?e:this.hideOutputs===!0?{}:typeof this.hideOutputs=="function"?this.hideOutputs(e):e}prepareRunCreateOrUpdateInputs(e){const r={...e};return r.inputs!==void 0&&(r.inputs=this.processInputs(r.inputs)),r.outputs!==void 0&&(r.outputs=this.processOutputs(r.outputs)),r}async _getResponse(e,r){const a=(r==null?void 0:r.toString())??"",n=`${this.apiUrl}${e}?${a}`,i=await this.caller.call(fetch,n,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!i.ok)throw new Error(`Failed to fetch ${e}: ${i.status} ${i.statusText}`);return i}async _get(e,r){return(await this._getResponse(e,r)).json()}async*_getPaginated(e,r=new URLSearchParams){let a=Number(r.get("offset"))||0;const n=Number(r.get("limit"))||100;for(;;){r.set("offset",String(a)),r.set("limit",String(n));const i=`${this.apiUrl}${e}?${r}`,l=await this.caller.call(fetch,i,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!l.ok)throw new Error(`Failed to fetch ${e}: ${l.status} ${l.statusText}`);const s=await l.json();if(s.length===0||(yield s,s.length<n))break;a+=s.length}}async*_getCursorPaginatedList(e,r=null,a="POST",n="runs"){const i=r?{...r}:{};for(;;){const s=await(await this.caller.call(fetch,`${this.apiUrl}${e}`,{method:a,headers:{...this.headers,"Content-Type":"application/json"},signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions,body:JSON.stringify(i)})).json();if(!s||!s[n])break;yield s[n];const o=s.cursors;if(!o||!o.next)break;i.cursor=o.next}}_filterForSampling(e,r=!1){if(this.tracingSampleRate===void 0)return e;if(r){const a=[];for(const n of e)this.sampledPostUuids.has(n.id)&&(a.push(n),this.sampledPostUuids.delete(n.id));return a}else{const a=[];for(const n of e)Math.random()<this.tracingSampleRate&&(a.push(n),this.sampledPostUuids.add(n.id));return a}}async drainAutoBatchQueue(){for(;this.autoBatchQueue.size>=0;){const[e,r]=this.autoBatchQueue.pop(this.pendingAutoBatchedRunLimit);if(!e.length){r();return}try{await this.batchIngestRuns({runCreates:e.filter(a=>a.action==="create").map(a=>a.item),runUpdates:e.filter(a=>a.action==="update").map(a=>a.item)})}finally{r()}}}async processRunOperation(e,r){const a=this.autoBatchTimeout;clearTimeout(this.autoBatchTimeout),this.autoBatchTimeout=void 0;const n=this.autoBatchQueue.push(e);return(r||this.autoBatchQueue.size>this.pendingAutoBatchedRunLimit)&&await this.drainAutoBatchQueue(),this.autoBatchQueue.size>0&&(this.autoBatchTimeout=setTimeout(()=>{this.autoBatchTimeout=void 0,this.drainAutoBatchQueue().catch(console.error)},a?this.autoBatchAggregationDelayMs:this.autoBatchInitialDelayMs)),n}async _getServerInfo(){const e=await fetch(`${this.apiUrl}/info`,{method:"GET",headers:{Accept:"application/json"},signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!e.ok)throw await e.text(),new Error("Failed to retrieve server info.");return e.json()}async batchEndpointIsSupported(){try{this.serverInfo=await this._getServerInfo()}catch{return!1}return!0}async createRun(e){if(!this._filterForSampling([e]).length)return;const r={...this.headers,"Content-Type":"application/json"},a=e.project_name;delete e.project_name;const n=this.prepareRunCreateOrUpdateInputs({session_name:a,...e,start_time:e.start_time??Date.now()});if(this.autoBatchTracing&&n.trace_id!==void 0&&n.dotted_order!==void 0){this.processRunOperation({action:"create",item:n}).catch(console.error);return}const i=await J4([n]),l=await this.caller.call(fetch,`${this.apiUrl}/runs`,{method:"POST",headers:r,body:JSON.stringify(i[0]),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(l,"create run")}async batchIngestRuns({runCreates:e,runUpdates:r}){var d,u;if(e===void 0&&r===void 0)return;let a=(e==null?void 0:e.map(c=>this.prepareRunCreateOrUpdateInputs(c)))??[],n=(r==null?void 0:r.map(c=>this.prepareRunCreateOrUpdateInputs(c)))??[];if(a.length>0&&n.length>0){const c=a.reduce((A,m)=>(m.id&&(A[m.id]=m),A),{}),p=[];for(const A of n)A.id!==void 0&&c[A.id]?c[A.id]={...c[A.id],...A}:p.push(A);a=Object.values(c),n=p}const i={post:this._filterForSampling(a),patch:this._filterForSampling(n,!0)};if(!i.post.length&&!i.patch.length)return;if(a=await J4(a),this.batchEndpointSupported===void 0&&(this.batchEndpointSupported=await this.batchEndpointIsSupported()),!this.batchEndpointSupported){this.autoBatchTracing=!1;for(const c of i.post)await this.createRun(c);for(const c of i.patch)c.id!==void 0&&await this.updateRun(c.id,c);return}const l=((u=(d=this.serverInfo)==null?void 0:d.batch_ingest_config)==null?void 0:u.size_limit_bytes)??HR,s={post:[],patch:[]};let o=0;for(const c of["post","patch"]){const p=c,A=i[p].reverse();let m=A.pop();for(;m!==void 0;){const h=JSON.stringify(m);o>0&&o+h.length>l&&(await this._postBatchIngestRuns(JSON.stringify(s)),o=0,s.post=[],s.patch=[]),o+=h.length,s[p].push(m),m=A.pop()}}(s.post.length>0||s.patch.length>0)&&await this._postBatchIngestRuns(JSON.stringify(s))}async _postBatchIngestRuns(e){const r={...this.headers,"Content-Type":"application/json",Accept:"application/json"},a=await this.batchIngestCaller.call(fetch,`${this.apiUrl}/runs/batch`,{method:"POST",headers:r,body:e,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(a,"batch create run")}async updateRun(e,r){Rt(e),r.inputs&&(r.inputs=this.processInputs(r.inputs)),r.outputs&&(r.outputs=this.processOutputs(r.outputs));const a={...r,id:e};if(!this._filterForSampling([a],!0).length)return;if(this.autoBatchTracing&&a.trace_id!==void 0&&a.dotted_order!==void 0){if(r.end_time!==void 0&&a.parent_run_id===void 0){await this.processRunOperation({action:"update",item:a},!0);return}else this.processRunOperation({action:"update",item:a}).catch(console.error);return}const n={...this.headers,"Content-Type":"application/json"},i=await this.caller.call(fetch,`${this.apiUrl}/runs/${e}`,{method:"PATCH",headers:n,body:JSON.stringify(r),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(i,"update run")}async readRun(e,{loadChildRuns:r}={loadChildRuns:!1}){Rt(e);let a=await this._get(`/runs/${e}`);return r&&a.child_run_ids&&(a=await this._loadChildRuns(a)),a}async getRunUrl({runId:e,run:r,projectOpts:a}){if(r!==void 0){let n;r.session_id?n=r.session_id:a!=null&&a.projectName?n=(await this.readProject({projectName:a==null?void 0:a.projectName})).id:a!=null&&a.projectId?n=a==null?void 0:a.projectId:n=(await this.readProject({projectName:qi("LANGCHAIN_PROJECT")||"default"})).id;const i=await this._getTenantId();return`${this.getHostUrl()}/o/${i}/projects/p/${n}/r/${r.id}?poll=true`}else if(e!==void 0){const n=await this.readRun(e);if(!n.app_path)throw new Error(`Run ${e} has no app_path`);return`${this.getHostUrl()}${n.app_path}`}else throw new Error("Must provide either runId or run")}async _loadChildRuns(e){const r=await SR(this.listRuns({id:e.child_run_ids})),a={},n={};r.sort((i,l)=>((i==null?void 0:i.dotted_order)??"").localeCompare((l==null?void 0:l.dotted_order)??""));for(const i of r){if(i.parent_run_id===null||i.parent_run_id===void 0)throw new Error(`Child run ${i.id} has no parent`);i.parent_run_id in a||(a[i.parent_run_id]=[]),a[i.parent_run_id].push(i),n[i.id]=i}e.child_runs=a[e.id]||[];for(const i in a)i!==e.id&&(n[i].child_runs=a[i]);return e}async*listRuns(e){const{projectId:r,projectName:a,parentRunId:n,traceId:i,referenceExampleId:l,startTime:s,executionOrder:o,isRoot:d,runType:u,error:c,id:p,query:A,filter:m,traceFilter:h,treeFilter:C,limit:w,select:b}=e;let f=[];if(r&&(f=Array.isArray(r)?r:[r]),a){const v=Array.isArray(a)?a:[a],L=await Promise.all(v.map(y=>this.readProject({projectName:y}).then(G=>G.id)));f.push(...L)}const K=["app_path","child_run_ids","completion_cost","completion_tokens","dotted_order","end_time","error","events","extra","feedback_stats","first_token_time","id","inputs","name","outputs","parent_run_id","parent_run_ids","prompt_cost","prompt_tokens","reference_example_id","run_type","session_id","start_time","status","tags","total_cost","total_tokens","trace_id"],W={session:f.length?f:null,run_type:u,reference_example:l,query:A,filter:m,trace_filter:h,tree_filter:C,execution_order:o,parent_run:n,start_time:s?s.toISOString():null,error:c,id:p,limit:w,trace:i,select:b||K,is_root:d};let R=0;for await(const v of this._getCursorPaginatedList("/runs/query",W))if(w){if(R>=w)break;if(v.length+R>w){yield*v.slice(0,w-R);break}R+=v.length,yield*v}else yield*v}async shareRun(e,{shareId:r}={}){const a={run_id:e,share_token:r||Sa()};Rt(e);const i=await(await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"PUT",headers:this.headers,body:JSON.stringify(a),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json();if(i===null||!("share_token"in i))throw new Error("Invalid response from server");return`${this.getHostUrl()}/public/${i.share_token}/r`}async unshareRun(e){Rt(e);const r=await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(r,"unshare run")}async readRunSharedLink(e){Rt(e);const a=await(await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json();if(!(a===null||!("share_token"in a)))return`${this.getHostUrl()}/public/${a.share_token}/r`}async listSharedRuns(e,{runIds:r}={}){const a=new URLSearchParams({share_token:e});if(r!==void 0)for(const l of r)a.append("id",l);return Rt(e),await(await this.caller.call(fetch,`${this.apiUrl}/public/${e}/runs${a}`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json()}async readDatasetSharedSchema(e,r){if(!e&&!r)throw new Error("Either datasetId or datasetName must be given");e||(e=(await this.readDataset({datasetName:r})).id),Rt(e);const n=await(await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json();return n.url=`${this.getHostUrl()}/public/${n.share_token}/d`,n}async shareDataset(e,r){if(!e&&!r)throw new Error("Either datasetId or datasetName must be given");e||(e=(await this.readDataset({datasetName:r})).id);const a={dataset_id:e};Rt(e);const i=await(await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"PUT",headers:this.headers,body:JSON.stringify(a),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json();return i.url=`${this.getHostUrl()}/public/${i.share_token}/d`,i}async unshareDataset(e){Rt(e);const r=await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(r,"unshare dataset")}async readSharedDataset(e){return Rt(e),await(await this.caller.call(fetch,`${this.apiUrl}/public/${e}/datasets`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json()}async createProject({projectName:e,description:r=null,metadata:a=null,upsert:n=!1,projectExtra:i=null,referenceDatasetId:l=null}){const s=n?"?upsert=true":"",o=`${this.apiUrl}/sessions${s}`,d=i||{};a&&(d.metadata=a);const u={name:e,extra:d,description:r};l!==null&&(u.reference_dataset_id=l);const c=await this.caller.call(fetch,o,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(u),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions}),p=await c.json();if(!c.ok)throw new Error(`Failed to create session ${e}: ${c.status} ${c.statusText}`);return p}async updateProject(e,{name:r=null,description:a=null,metadata:n=null,projectExtra:i=null,endTime:l=null}){const s=`${this.apiUrl}/sessions/${e}`;let o=i;n&&(o={...o||{},metadata:n});const d={name:r,extra:o,description:a,end_time:l?new Date(l).toISOString():null},u=await this.caller.call(fetch,s,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(d),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions}),c=await u.json();if(!u.ok)throw new Error(`Failed to update project ${e}: ${u.status} ${u.statusText}`);return c}async hasProject({projectId:e,projectName:r}){let a="/sessions";const n=new URLSearchParams;if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");if(e!==void 0)Rt(e),a+=`/${e}`;else if(r!==void 0)n.append("name",r);else throw new Error("Must provide projectName or projectId");const i=await this.caller.call(fetch,`${this.apiUrl}${a}?${n}`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});try{const l=await i.json();return i.ok?Array.isArray(l)?l.length>0:!0:!1}catch{return!1}}async readProject({projectId:e,projectName:r,includeStats:a}){let n="/sessions";const i=new URLSearchParams;if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");if(e!==void 0)Rt(e),n+=`/${e}`;else if(r!==void 0)i.append("name",r);else throw new Error("Must provide projectName or projectId");a!==void 0&&i.append("include_stats",a.toString());const l=await this._get(n,i);let s;if(Array.isArray(l)){if(l.length===0)throw new Error(`Project[id=${e}, name=${r}] not found`);s=l[0]}else s=l;return s}async getProjectUrl({projectId:e,projectName:r}){if(e===void 0&&r===void 0)throw new Error("Must provide either projectName or projectId");const a=await this.readProject({projectId:e,projectName:r}),n=await this._getTenantId();return`${this.getHostUrl()}/o/${n}/projects/p/${a.id}`}async _getTenantId(){if(this._tenantId!==null)return this._tenantId;const e=new URLSearchParams({limit:"1"});for await(const r of this._getPaginated("/sessions",e))return this._tenantId=r[0].tenant_id,r[0].tenant_id;throw new Error("No projects found to resolve tenant.")}async*listProjects({projectIds:e,name:r,nameContains:a,referenceDatasetId:n,referenceDatasetName:i,referenceFree:l}={}){const s=new URLSearchParams;if(e!==void 0)for(const o of e)s.append("id",o);if(r!==void 0&&s.append("name",r),a!==void 0&&s.append("name_contains",a),n!==void 0)s.append("reference_dataset",n);else if(i!==void 0){const o=await this.readDataset({datasetName:i});s.append("reference_dataset",o.id)}l!==void 0&&s.append("reference_free",l.toString());for await(const o of this._getPaginated("/sessions",s))yield*o}async deleteProject({projectId:e,projectName:r}){let a;if(e===void 0&&r===void 0)throw new Error("Must provide projectName or projectId");if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");e===void 0?a=(await this.readProject({projectName:r})).id:a=e,Rt(a);const n=await this.caller.call(fetch,`${this.apiUrl}/sessions/${a}`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(n,`delete session ${a} (${r})`)}async uploadCsv({csvFile:e,fileName:r,inputKeys:a,outputKeys:n,description:i,dataType:l,name:s}){const o=`${this.apiUrl}/datasets/upload`,d=new FormData;d.append("file",e,r),a.forEach(p=>{d.append("input_keys",p)}),n.forEach(p=>{d.append("output_keys",p)}),i&&d.append("description",i),l&&d.append("data_type",l),s&&d.append("name",s);const u=await this.caller.call(fetch,o,{method:"POST",headers:this.headers,body:d,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!u.ok){const p=await u.json();throw p.detail&&p.detail.includes("already exists")?new Error(`Dataset ${r} already exists`):new Error(`Failed to upload CSV: ${u.status} ${u.statusText}`)}return await u.json()}async createDataset(e,{description:r,dataType:a}={}){const n={name:e,description:r};a&&(n.data_type=a);const i=await this.caller.call(fetch,`${this.apiUrl}/datasets`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(n),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!i.ok){const s=await i.json();throw s.detail&&s.detail.includes("already exists")?new Error(`Dataset ${e} already exists`):new Error(`Failed to create dataset ${i.status} ${i.statusText}`)}return await i.json()}async readDataset({datasetId:e,datasetName:r}){let a="/datasets";const n=new URLSearchParams({limit:"1"});if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(e!==void 0)Rt(e),a+=`/${e}`;else if(r!==void 0)n.append("name",r);else throw new Error("Must provide datasetName or datasetId");const i=await this._get(a,n);let l;if(Array.isArray(i)){if(i.length===0)throw new Error(`Dataset[id=${e}, name=${r}] not found`);l=i[0]}else l=i;return l}async hasDataset({datasetId:e,datasetName:r}){try{return await this.readDataset({datasetId:e,datasetName:r}),!0}catch(a){if(a instanceof Error&&a.message.toLocaleLowerCase().includes("not found"))return!1;throw a}}async diffDatasetVersions({datasetId:e,datasetName:r,fromVersion:a,toVersion:n}){let i=e;if(i===void 0&&r===void 0)throw new Error("Must provide either datasetName or datasetId");if(i!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");i===void 0&&(i=(await this.readDataset({datasetName:r})).id);const l=new URLSearchParams({from_version:typeof a=="string"?a:a.toISOString(),to_version:typeof n=="string"?n:n.toISOString()});return await this._get(`/datasets/${i}/versions/diff`,l)}async readDatasetOpenaiFinetuning({datasetId:e,datasetName:r}){const a="/datasets";if(e===void 0)if(r!==void 0)e=(await this.readDataset({datasetName:r})).id;else throw new Error("Must provide datasetName or datasetId");return(await(await this._getResponse(`${a}/${e}/openai_ft`)).text()).trim().split(`
`).map(s=>JSON.parse(s))}async*listDatasets({limit:e=100,offset:r=0,datasetIds:a,datasetName:n,datasetNameContains:i}={}){const l="/datasets",s=new URLSearchParams({limit:e.toString(),offset:r.toString()});if(a!==void 0)for(const o of a)s.append("id",o);n!==void 0&&s.append("name",n),i!==void 0&&s.append("name_contains",i);for await(const o of this._getPaginated(l,s))yield*o}async deleteDataset({datasetId:e,datasetName:r}){let a="/datasets",n=e;if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(r!==void 0&&(n=(await this.readDataset({datasetName:r})).id),n!==void 0)Rt(n),a+=`/${n}`;else throw new Error("Must provide datasetName or datasetId");const i=await this.caller.call(fetch,this.apiUrl+a,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!i.ok)throw new Error(`Failed to delete ${a}: ${i.status} ${i.statusText}`);await i.json()}async createExample(e,r,{datasetId:a,datasetName:n,createdAt:i,exampleId:l,metadata:s}){let o=a;if(o===void 0&&n===void 0)throw new Error("Must provide either datasetName or datasetId");if(o!==void 0&&n!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");o===void 0&&(o=(await this.readDataset({datasetName:n})).id);const d=i||new Date,u={dataset_id:o,inputs:e,outputs:r,created_at:d==null?void 0:d.toISOString(),id:l,metadata:s},c=await this.caller.call(fetch,`${this.apiUrl}/examples`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(u),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!c.ok)throw new Error(`Failed to create example: ${c.status} ${c.statusText}`);return await c.json()}async createExamples(e){const{inputs:r,outputs:a,metadata:n,sourceRunIds:i,exampleIds:l,datasetId:s,datasetName:o}=e;let d=s;if(d===void 0&&o===void 0)throw new Error("Must provide either datasetName or datasetId");if(d!==void 0&&o!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");d===void 0&&(d=(await this.readDataset({datasetName:o})).id);const u=r.map((A,m)=>({dataset_id:d,inputs:A,outputs:a?a[m]:void 0,metadata:n?n[m]:void 0,id:l?l[m]:void 0,source_run_id:i?i[m]:void 0})),c=await this.caller.call(fetch,`${this.apiUrl}/examples/bulk`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(u),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!c.ok)throw new Error(`Failed to create examples: ${c.status} ${c.statusText}`);return await c.json()}async createLLMExample(e,r,a){return this.createExample({input:e},{output:r},a)}async createChatExample(e,r,a){const n=e.map(l=>M4(l)?x4(l):l),i=M4(r)?x4(r):r;return this.createExample({input:n},{output:i},a)}async readExample(e){Rt(e);const r=`/examples/${e}`;return await this._get(r)}async*listExamples({datasetId:e,datasetName:r,exampleIds:a,asOf:n,inlineS3Urls:i,metadata:l}={}){let s;if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(e!==void 0)s=e;else if(r!==void 0)s=(await this.readDataset({datasetName:r})).id;else throw new Error("Must provide a datasetName or datasetId");const o=new URLSearchParams({dataset:s}),d=n?typeof n=="string"?n:n==null?void 0:n.toISOString():void 0;d&&o.append("as_of",d);const u=i??!0;if(o.append("inline_s3_urls",u.toString()),a!==void 0)for(const c of a)o.append("id",c);if(l!==void 0){const c=JSON.stringify(l);o.append("metadata",c)}for await(const c of this._getPaginated("/examples",o))yield*c}async deleteExample(e){Rt(e);const r=`/examples/${e}`,a=await this.caller.call(fetch,this.apiUrl+r,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!a.ok)throw new Error(`Failed to delete ${r}: ${a.status} ${a.statusText}`);await a.json()}async updateExample(e,r){Rt(e);const a=await this.caller.call(fetch,`${this.apiUrl}/examples/${e}`,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(r),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!a.ok)throw new Error(`Failed to update example ${e}: ${a.status} ${a.statusText}`);return await a.json()}async evaluateRun(e,r,{sourceInfo:a,loadChildRuns:n,referenceExample:i}={loadChildRuns:!1}){let l;if(typeof e=="string")l=await this.readRun(e,{loadChildRuns:n});else if(typeof e=="object"&&"id"in e)l=e;else throw new Error(`Invalid run type: ${typeof e}`);l.reference_example_id!==null&&l.reference_example_id!==void 0&&(i=await this.readExample(l.reference_example_id));const s=await r.evaluateRun(l,i);let o=a??{};s.evaluatorInfo&&(o={...o,...s.evaluatorInfo});const d=s.targetRunId??l.id;return await this.createFeedback(d,s.key,{score:s==null?void 0:s.score,value:s==null?void 0:s.value,comment:s==null?void 0:s.comment,correction:s==null?void 0:s.correction,sourceInfo:o,feedbackSourceType:"model",sourceRunId:s==null?void 0:s.sourceRunId})}async createFeedback(e,r,{score:a,value:n,correction:i,comment:l,sourceInfo:s,feedbackSourceType:o="api",sourceRunId:d,feedbackId:u,feedbackConfig:c,projectId:p,comparativeExperimentId:A}){var b;if(!e&&!p)throw new Error("One of runId or projectId must be provided");if(e&&p)throw new Error("Only one of runId or projectId can be provided");const m={type:o??"api",metadata:s??{}};d!==void 0&&(m==null?void 0:m.metadata)!==void 0&&!m.metadata.__run&&(m.metadata.__run={run_id:d}),(m==null?void 0:m.metadata)!==void 0&&((b=m.metadata.__run)==null?void 0:b.run_id)!==void 0&&Rt(m.metadata.__run.run_id);const h={id:u??Sa(),run_id:e,key:r,score:a,value:n,correction:i,comment:l,feedback_source:m,comparative_experiment_id:A,feedbackConfig:c,session_id:p},C=`${this.apiUrl}/feedback`,w=await this.caller.call(fetch,C,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(h),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});return await Vn(w,"create feedback"),h}async updateFeedback(e,{score:r,value:a,correction:n,comment:i}){const l={};r!=null&&(l.score=r),a!=null&&(l.value=a),n!=null&&(l.correction=n),i!=null&&(l.comment=i),Rt(e);const s=await this.caller.call(fetch,`${this.apiUrl}/feedback/${e}`,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(l),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});await Vn(s,"update feedback")}async readFeedback(e){Rt(e);const r=`/feedback/${e}`;return await this._get(r)}async deleteFeedback(e){Rt(e);const r=`/feedback/${e}`,a=await this.caller.call(fetch,this.apiUrl+r,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions});if(!a.ok)throw new Error(`Failed to delete ${r}: ${a.status} ${a.statusText}`);await a.json()}async*listFeedback({runIds:e,feedbackKeys:r,feedbackSourceTypes:a}={}){const n=new URLSearchParams;if(e&&n.append("run",e.join(",")),r)for(const i of r)n.append("key",i);if(a)for(const i of a)n.append("source",i);for await(const i of this._getPaginated("/feedback",n))yield*i}async createPresignedFeedbackToken(e,r,{expiration:a,feedbackConfig:n}={}){const i={run_id:e,feedback_key:r,feedback_config:n};return a?typeof a=="string"?i.expires_at=a:(a!=null&&a.hours||a!=null&&a.minutes||a!=null&&a.days)&&(i.expires_in=a):i.expires_in={hours:3},await(await this.caller.call(fetch,`${this.apiUrl}/feedback/tokens`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(i),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json()}async createComparativeExperiment({name:e,experimentIds:r,referenceDatasetId:a,createdAt:n,description:i,metadata:l,id:s}){var u;if(r.length===0)throw new Error("At least one experiment is required");if(a||(a=(await this.readProject({projectId:r[0]})).reference_dataset_id),!a==null)throw new Error("A reference dataset is required");const o={id:s,name:e,experiment_ids:r,reference_dataset_id:a,description:i,created_at:(u=n??new Date)==null?void 0:u.toISOString(),extra:{}};return l&&(o.extra.metadata=l),await(await this.caller.call(fetch,`${this.apiUrl}/datasets/comparative`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(o),signal:AbortSignal.timeout(this.timeout_ms),...this.fetchOptions})).json()}async*listPresignedFeedbackTokens(e){Rt(e);const r=new URLSearchParams({run_id:e});for await(const a of this._getPaginated("/feedback/tokens",r))yield*a}_selectEvalResults(e){let r;return"results"in e?r=e.results:r=[e],r}async logEvaluationFeedback(e,r,a){const n=this._selectEvalResults(e);for(const i of n){let l=a||{};i.evaluatorInfo&&(l={...i.evaluatorInfo,...l});let s=null;i.targetRunId?s=i.targetRunId:r&&(s=r.id),await this.createFeedback(s,i.key,{score:i.score,value:i.value,comment:i.comment,correction:i.correction,sourceInfo:l,sourceRunId:i.sourceRunId,feedbackConfig:i.feedbackConfig,feedbackSourceType:"model"})}return n}};const Zf="0.1.25";let Xf=class extends O0{constructor(e={}){super(e),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"langchain_tracer"}),Object.defineProperty(this,"projectName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"exampleId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"client",{enumerable:!0,configurable:!0,writable:!0,value:void 0});const{exampleId:r,projectName:a,client:n}=e;this.projectName=a??Cs("LANGCHAIN_PROJECT")??Cs("LANGCHAIN_SESSION"),this.exampleId=r,this.client=n??new VR({})}async _convertToCreate(e,r=void 0){return{...e,extra:{...e.extra,runtime:await Xy()},child_runs:void 0,session_name:this.projectName,reference_example_id:e.parent_run_id?void 0:r}}async persistRun(e){}async onRunCreate(e){const r=await this._convertToCreate(e,this.exampleId);await this.client.createRun(r)}async onRunUpdate(e){const r={end_time:e.end_time,error:e.error,outputs:e.outputs,events:e.events,inputs:e.inputs,trace_id:e.trace_id,dotted_order:e.dotted_order,parent_run_id:e.parent_run_id};await this.client.updateRun(e.id,r)}getRun(e){return this.runMap.get(e)}};function YR(t){if(typeof t>"u")return null;try{return JSON.parse(t)}catch{}let e="";const r=[];let a=!1,n=!1;for(let i of t){if(a)i==='"'&&!n?a=!1:i===`
`&&!n?i="\\n":i==="\\"?n=!n:n=!1;else if(i==='"')a=!0,n=!1;else if(i==="{")r.push("}");else if(i==="[")r.push("]");else if(i==="}"||i==="]")if(r&&r[r.length-1]===i)r.pop();else return null;e+=i}a&&(e+='"');for(let i=r.length-1;i>=0;i-=1)e+=r[i];try{return JSON.parse(e)}catch{return null}}function NR(t,e){return typeof t=="string"?typeof e=="string"?t+e:[{type:"text",text:t},...e]:Array.isArray(e)?[...t,...e]:[...t,{type:"text",text:e}]}let LR=class extends Qc{get lc_aliases(){return{additional_kwargs:"additional_kwargs",response_metadata:"response_metadata"}}get text(){return typeof this.content=="string"?this.content:""}constructor(e,r){typeof e=="string"&&(e={content:e,additional_kwargs:r,response_metadata:{}}),e.additional_kwargs||(e.additional_kwargs={}),e.response_metadata||(e.response_metadata={}),super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","messages"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"content",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"additional_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"response_metadata",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=e.name,this.content=e.content,this.additional_kwargs=e.additional_kwargs,this.response_metadata=e.response_metadata}toDict(){return{type:this._getType(),data:this.toJSON().kwargs}}};function vc(t,e){const r={...t};for(const[a,n]of Object.entries(e))if(r[a]==null)r[a]=n;else{if(n==null)continue;if(typeof r[a]!=typeof n||Array.isArray(r[a])!==Array.isArray(n))throw new Error(`field[${a}] already exists in the message chunk, but with a different type.`);if(typeof r[a]=="string")r[a]=r[a]+n;else if(!Array.isArray(r[a])&&typeof r[a]=="object")r[a]=vc(r[a],n);else if(Array.isArray(r[a]))r[a]=Hf(r[a],n);else{if(r[a]===n)continue;console.warn(`field[${a}] already exists in this message chunk and value has unsupported type.`)}}return r}function Hf(t,e){if(!(t===void 0&&e===void 0)){if(t===void 0||e===void 0)return t||e;{const r=[...t];for(const a of e)if(typeof a=="object"&&"index"in a&&typeof a.index=="number"){const n=r.findIndex(i=>i.index===a.index);n!==-1?r[n]=vc(r[n],a):r.push(a)}else r.push(a);return r}}}let TR=class extends LR{},kR=class Vf extends TR{constructor(e){let r;if(typeof e=="string")r={content:e,tool_calls:[],invalid_tool_calls:[],tool_call_chunks:[]};else if(e.tool_call_chunks===void 0)r={...e,tool_calls:[],invalid_tool_calls:[],tool_call_chunks:[]};else{const a=[],n=[];for(const i of e.tool_call_chunks){let l={};try{if(l=YR(i.args??"{}")??{},typeof l!="object"||Array.isArray(l))throw new Error("Malformed tool call chunk args.");a.push({name:i.name??"",args:l,id:i.id})}catch{n.push({name:i.name,args:i.args,id:i.id,error:"Malformed args."})}}r={...e,tool_calls:a,invalid_tool_calls:n}}super(r),Object.defineProperty(this,"tool_calls",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"invalid_tool_calls",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"tool_call_chunks",{enumerable:!0,configurable:!0,writable:!0,value:[]}),this.tool_call_chunks=(r==null?void 0:r.tool_call_chunks)??this.tool_call_chunks,this.tool_calls=(r==null?void 0:r.tool_calls)??this.tool_calls,this.invalid_tool_calls=(r==null?void 0:r.invalid_tool_calls)??this.invalid_tool_calls}get lc_aliases(){return{...super.lc_aliases,tool_calls:"tool_calls",invalid_tool_calls:"invalid_tool_calls",tool_call_chunks:"tool_call_chunks"}}static lc_name(){return"AIMessageChunk"}_getType(){return"ai"}concat(e){const r={content:NR(this.content,e.content),additional_kwargs:vc(this.additional_kwargs,e.additional_kwargs),response_metadata:vc(this.response_metadata,e.response_metadata),tool_call_chunks:[]};if(this.tool_call_chunks!==void 0||e.tool_call_chunks!==void 0){const a=Hf(this.tool_call_chunks,e.tool_call_chunks);a!==void 0&&a.length>0&&(r.tool_call_chunks=a)}return new Vf(r)}};function UR(t,e="Human",r="AI"){const a=[];for(const n of t){let i;if(n._getType()==="human")i=e;else if(n._getType()==="ai")i=r;else if(n._getType()==="system")i="System";else if(n._getType()==="function")i="Function";else if(n._getType()==="tool")i="Tool";else if(n._getType()==="generic")i=n.role;else throw new Error(`Got unsupported message type: ${n._getType()}`);const l=n.name?`${n.name}, `:"";a.push(`${i}: ${l}${n.content}`)}return a.join(`
`)}async function _R(){return new Xf}let im;function IR(){const t="default"in wn?wn.default:wn;return new t({autoStart:!0,concurrency:1})}async function or(t,e){e===!0?await t():(typeof im>"u"&&(im=IR()),im.add(t))}let DR=class{setHandler(e){return this.setHandlers([e])}},j0=class{constructor(e,r,a,n,i,l,s,o){Object.defineProperty(this,"runId",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"inheritableHandlers",{enumerable:!0,configurable:!0,writable:!0,value:a}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:n}),Object.defineProperty(this,"inheritableTags",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:l}),Object.defineProperty(this,"inheritableMetadata",{enumerable:!0,configurable:!0,writable:!0,value:s}),Object.defineProperty(this,"_parentRunId",{enumerable:!0,configurable:!0,writable:!0,value:o})}async handleText(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;try{await((a=r.handleText)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleText: ${n}`)}},r.awaitHandlers)))}},MR=class extends j0{getChild(e){const r=new bl(this.runId);return r.setHandlers(this.inheritableHandlers),r.addTags(this.inheritableTags),r.addMetadata(this.inheritableMetadata),e&&r.addTags([e],!1),r}async handleRetrieverEnd(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreRetriever)try{await((a=r.handleRetrieverEnd)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch{console.error(`Error in handler ${r.constructor.name}, handleRetriever`)}},r.awaitHandlers)))}async handleRetrieverError(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreRetriever)try{await((a=r.handleRetrieverError)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleRetrieverError: ${n}`)}},r.awaitHandlers)))}},O4=class extends j0{async handleLLMNewToken(e,r,a,n,i,l){await Promise.all(this.handlers.map(s=>or(async()=>{var o;if(!s.ignoreLLM)try{await((o=s.handleLLMNewToken)==null?void 0:o.call(s,e,r??{prompt:0,completion:0},this.runId,this._parentRunId,this.tags,l))}catch(d){console.error(`Error in handler ${s.constructor.name}, handleLLMNewToken: ${d}`)}},s.awaitHandlers)))}async handleLLMError(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreLLM)try{await((a=r.handleLLMError)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleLLMError: ${n}`)}},r.awaitHandlers)))}async handleLLMEnd(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreLLM)try{await((a=r.handleLLMEnd)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleLLMEnd: ${n}`)}},r.awaitHandlers)))}},xR=class extends j0{getChild(e){const r=new bl(this.runId);return r.setHandlers(this.inheritableHandlers),r.addTags(this.inheritableTags),r.addMetadata(this.inheritableMetadata),e&&r.addTags([e],!1),r}async handleChainError(e,r,a,n,i){await Promise.all(this.handlers.map(l=>or(async()=>{var s;if(!l.ignoreChain)try{await((s=l.handleChainError)==null?void 0:s.call(l,e,this.runId,this._parentRunId,this.tags,i))}catch(o){console.error(`Error in handler ${l.constructor.name}, handleChainError: ${o}`)}},l.awaitHandlers)))}async handleChainEnd(e,r,a,n,i){await Promise.all(this.handlers.map(l=>or(async()=>{var s;if(!l.ignoreChain)try{await((s=l.handleChainEnd)==null?void 0:s.call(l,e,this.runId,this._parentRunId,this.tags,i))}catch(o){console.error(`Error in handler ${l.constructor.name}, handleChainEnd: ${o}`)}},l.awaitHandlers)))}async handleAgentAction(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreAgent)try{await((a=r.handleAgentAction)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleAgentAction: ${n}`)}},r.awaitHandlers)))}async handleAgentEnd(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreAgent)try{await((a=r.handleAgentEnd)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleAgentEnd: ${n}`)}},r.awaitHandlers)))}},JR=class extends j0{getChild(e){const r=new bl(this.runId);return r.setHandlers(this.inheritableHandlers),r.addTags(this.inheritableTags),r.addMetadata(this.inheritableMetadata),e&&r.addTags([e],!1),r}async handleToolError(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreAgent)try{await((a=r.handleToolError)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleToolError: ${n}`)}},r.awaitHandlers)))}async handleToolEnd(e){await Promise.all(this.handlers.map(r=>or(async()=>{var a;if(!r.ignoreAgent)try{await((a=r.handleToolEnd)==null?void 0:a.call(r,e,this.runId,this._parentRunId,this.tags))}catch(n){console.error(`Error in handler ${r.constructor.name}, handleToolEnd: ${n}`)}},r.awaitHandlers)))}},bl=class _p extends DR{constructor(e,r){super(),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"inheritableHandlers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"inheritableTags",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"inheritableMetadata",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"callback_manager"}),Object.defineProperty(this,"_parentRunId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.handlers=(r==null?void 0:r.handlers)??this.handlers,this.inheritableHandlers=(r==null?void 0:r.inheritableHandlers)??this.inheritableHandlers,this.tags=(r==null?void 0:r.tags)??this.tags,this.inheritableTags=(r==null?void 0:r.inheritableTags)??this.inheritableTags,this.metadata=(r==null?void 0:r.metadata)??this.metadata,this.inheritableMetadata=(r==null?void 0:r.inheritableMetadata)??this.inheritableMetadata,this._parentRunId=e}getParentRunId(){return this._parentRunId}async handleLLMStart(e,r,a=void 0,n=void 0,i=void 0,l=void 0,s=void 0,o=void 0){return Promise.all(r.map(async(d,u)=>{const c=u===0&&a?a:Sa();return await Promise.all(this.handlers.map(p=>or(async()=>{var A;if(!p.ignoreLLM)try{await((A=p.handleLLMStart)==null?void 0:A.call(p,e,[d],c,this._parentRunId,i,this.tags,this.metadata,o))}catch(m){console.error(`Error in handler ${p.constructor.name}, handleLLMStart: ${m}`)}},p.awaitHandlers))),new O4(c,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}))}async handleChatModelStart(e,r,a=void 0,n=void 0,i=void 0,l=void 0,s=void 0,o=void 0){return Promise.all(r.map(async(d,u)=>{const c=u===0&&a?a:Sa();return await Promise.all(this.handlers.map(p=>or(async()=>{var A,m;if(!p.ignoreLLM)try{if(p.handleChatModelStart)await((A=p.handleChatModelStart)==null?void 0:A.call(p,e,[d],c,this._parentRunId,i,this.tags,this.metadata,o));else if(p.handleLLMStart){const h=UR(d);await((m=p.handleLLMStart)==null?void 0:m.call(p,e,[h],c,this._parentRunId,i,this.tags,this.metadata,o))}}catch(h){console.error(`Error in handler ${p.constructor.name}, handleLLMStart: ${h}`)}},p.awaitHandlers))),new O4(c,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}))}async handleChainStart(e,r,a=Sa(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>or(async()=>{var d;if(!o.ignoreChain)try{await((d=o.handleChainStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,n,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleChainStart: ${u}`)}},o.awaitHandlers))),new xR(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}async handleToolStart(e,r,a=Sa(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>or(async()=>{var d;if(!o.ignoreAgent)try{await((d=o.handleToolStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleToolStart: ${u}`)}},o.awaitHandlers))),new JR(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}async handleRetrieverStart(e,r,a=Sa(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>or(async()=>{var d;if(!o.ignoreRetriever)try{await((d=o.handleRetrieverStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleRetrieverStart: ${u}`)}},o.awaitHandlers))),new MR(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}addHandler(e,r=!0){this.handlers.push(e),r&&this.inheritableHandlers.push(e)}removeHandler(e){this.handlers=this.handlers.filter(r=>r!==e),this.inheritableHandlers=this.inheritableHandlers.filter(r=>r!==e)}setHandlers(e,r=!0){this.handlers=[],this.inheritableHandlers=[];for(const a of e)this.addHandler(a,r)}addTags(e,r=!0){this.removeTags(e),this.tags.push(...e),r&&this.inheritableTags.push(...e)}removeTags(e){this.tags=this.tags.filter(r=>!e.includes(r)),this.inheritableTags=this.inheritableTags.filter(r=>!e.includes(r))}addMetadata(e,r=!0){this.metadata={...this.metadata,...e},r&&(this.inheritableMetadata={...this.inheritableMetadata,...e})}removeMetadata(e){for(const r of Object.keys(e))delete this.metadata[r],delete this.inheritableMetadata[r]}copy(e=[],r=!0){const a=new _p(this._parentRunId);for(const n of this.handlers){const i=this.inheritableHandlers.includes(n);a.addHandler(n,i)}for(const n of this.tags){const i=this.inheritableTags.includes(n);a.addTags([n],i)}for(const n of Object.keys(this.metadata)){const i=Object.keys(this.inheritableMetadata).includes(n);a.addMetadata({[n]:this.metadata[n]},i)}for(const n of e)a.handlers.filter(i=>i.name==="console_callback_handler").some(i=>i.name===n.name)||a.addHandler(n,r);return a}static fromHandlers(e){class r extends Nh{constructor(){super(),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:Sa()}),Object.assign(this,e)}}const a=new this;return a.addHandler(new r),a}static async configure(e,r,a,n,i,l,s){let o;(e||r)&&(Array.isArray(e)||!e?(o=new _p,o.setHandlers((e==null?void 0:e.map(Fc))??[],!0)):o=e,o=o.copy(Array.isArray(r)?r.map(Fc):r==null?void 0:r.handlers,!1));const d=Cs("LANGCHAIN_VERBOSE")==="true"||(s==null?void 0:s.verbose),u=Cs("LANGCHAIN_TRACING_V2")==="true",c=u||(Cs("LANGCHAIN_TRACING")??!1);if(d||c){if(o||(o=new _p),d&&!o.handlers.some(p=>p.name===I4.prototype.name)){const p=new I4;o.addHandler(p,!0)}c&&!o.handlers.some(p=>p.name==="langchain_tracer")&&u&&o.addHandler(await _R(),!0)}return(a||n)&&o&&(o.addTags(a??[]),o.addTags(n??[],!1)),(i||l)&&o&&(o.addMetadata(i??{}),o.addMetadata(l??{},!1)),o}};function Fc(t){return"name"in t?t:Nh.fromMethods(t)}const P4=function(t){return atob(t)},z4=t=>`<0x${t.toString(16).toUpperCase().padStart(2,"0")}>`,OR=t=>{const e=t.replace(/<0x|>/g,"");return parseInt(e,16)};class PR{constructor(e=(r,a)=>r>a){this._heap=[],this._comparator=e}size(){return this._heap.length}isEmpty(){return this.size()==0}peek(){return this._heap[0]}push(...e){return e.forEach(r=>{this._heap.push(r),this._siftUp()}),this.size()}pop(){const e=this.peek(),r=this.size()-1;return r>0&&this._swap(0,r),this._heap.pop(),this._siftDown(),e}replace(e){const r=this.peek();return this._heap[0]=e,this._siftDown(),r}_parent(e){return(e+1>>>1)-1}_left(e){return(e<<1)+1}_right(e){return e+1<<1}_greater(e,r){return this._comparator(this._heap[e],this._heap[r])}_swap(e,r){[this._heap[e],this._heap[r]]=[this._heap[r],this._heap[e]]}_siftUp(){let e=this.size()-1;for(;e>0&&this._greater(e,this._parent(e));)this._swap(e,this._parent(e)),e=this._parent(e)}_siftDown(){let e=0;for(;this._left(e)<this.size()&&this._greater(this._left(e),e)||this._right(e)<this.size()&&this._greater(this._right(e),e);){let r=this._right(e)<this.size()&&this._greater(this._right(e),this._left(e))?this._right(e):this._left(e);this._swap(e,r),e=r}}}class zR{constructor(e,r){Ze(this,"vocabById");Ze(this,"vocabByString");Ze(this,"merges");Ze(this,"utf8Encoder",new TextEncoder);Ze(this,"utf8Decoder",new TextDecoder("utf-8"));this.vocabById=this.decodeVocabulary(e||jR),this.vocabByString=new Map,this.vocabById.forEach((a,n)=>{this.vocabByString.set(a,n)}),this.merges=this.decompressMerges(r||qR)}getMergeIdentifierString(e,r){return this.vocabById[e]+" "+this.vocabById[r]}decompressMerges(e){const r=P4(e),a=new Uint8Array(r.length);for(let l=0;l<r.length;l++)a[l]=r.charCodeAt(l);const n=[];for(let l=0;l<a.length;l+=2){const s=a[l],o=a[l+1],d=s+(o<<8);n.push(d)}const i=new Map;for(let l=0;l<n.length;l+=2){const s=n[l],o=n[l+1],d=this.getMergeIdentifierString(s,o);i.set(d,l+1)}return i}decodeVocabulary(e){const r=Uint8Array.from(P4(e),n=>n.charCodeAt(0));return new TextDecoder("utf-8").decode(r).split(`
`)}mapCharactersToTokenIds(e,r,a){const n=[];r&&n.push(1),a&&(e=" "+e);const i=e.replaceAll(" ",this.vocabById[29871]),l=Array.from(i);for(let s=0;s<l.length;s++){const o=l[s];if(this.vocabByString.has(o))n.push(this.vocabByString.get(o));else{const d=this.utf8Encoder.encode(o);for(let u=0;u<d.length;u++){const c=this.vocabByString.get(z4(d[u]));n.push(c),c>=0||(console.log("Encountered unknown character "+o+" (partial UTF-8 byte "+d[u]+" + hex + "+z4(d[u])+")"),n[n.length-1]=0)}}}return n}encode(e,r=!0,a=!0,n=!1){let i=null;if(n&&(i=performance.now()),!this.vocabById||!this.vocabByString||!this.merges){console.log("Tokenizer not initialized properly!");return}if(e.length===0)return[];const l=this.mapCharactersToTokenIds(e,r,a),s=new PR((p,A)=>p.mergePrio<A.mergePrio),o=p=>{const A=this.getMergeIdentifierString(p.tokenId,p.next.tokenId),m=this.merges.get(A)+p.origPos/e.length;m&&(p.mergePrio=m,p.mergeToString=A.replace(" ",""),s.push(p))};let d={origPos:0,tokenId:l[0],prev:null,next:null},u=d;for(let p=1;p<l.length;p++){const A={origPos:p,tokenId:l[p],prev:u,next:null};u.next=A,o(u),u=A}for(;!s.isEmpty();){const p=s.pop();if(p.deleted||!p.next||p.next.deleted)continue;if(p.deleted=!0,p.next.deleted=!0,p.prev){const m=p.prev;m.deleted=!0;const h={origPos:m.origPos,tokenId:m.tokenId,prev:m.prev,next:m.next};p.prev=h,h.prev?h.prev.next=h:d=h}const A={origPos:p.origPos,tokenId:this.vocabByString.get(p.mergeToString),prev:p.prev,next:p.next.next};A.prev?(A.prev.next=A,A.prev,o(A.prev)):d=A,A.next&&(A.next.prev=A,o(A))}const c=[];for(let p=d;p!==null;p=p.next)c.push(p.tokenId);if(n){const p=performance.now();console.log("Tokenizer running time: "+(p-i)+" milliseconds")}return c}decode(e,r=!0,a=!0){const n=[],i=r?1:0;for(let d=i;d<e.length;d++){const u=e[d],c=this.vocabById[u];if(c.startsWith("<0x")&&c.endsWith(">")){const p=OR(c);n.push(p)}else this.utf8Encoder.encode(c).forEach(A=>n.push(A))}const l=new Uint8Array(n),o=this.utf8Decoder.decode(l).replaceAll(this.vocabById[29871]," ");return a?o.slice(1):o}defaultTests(e){function r(n,i){return n.length===i.length&&n.every(function(l,s){return l===i[s]})}function a(n,i){const l=e.encode(n,!0,!0,!0);if(!r(l,i))throw`Test failed. LLaMA Tokenizer Encoder returned unexpected result: expected tokenize(${n}) === ${i}, actual was: ${l}`;if(n!==e.decode(l))throw`Test failed. LLaMA Tokenizer Decoder returned unexpected result: expected decode(${l}) === ${n}, actual was: ${decode(l)}`}return a("grabbed",[1,2646,1327,287]),a(" grabbed",[1,29871,2646,1327,287]),a(" grabbed",[1,9651,2646,1327,287]),a(`
`,[1,29871,13]),a(`
`,[1,259,13]),a(" tabs out here",[1,29871,12,21175,12,12,12,12,449,1244]),a(`ax
####
boo`,[1,4853,13,4136,13,833,29877]),a("镇",[1,29871,30411]),a("🦙",[1,29871,243,162,169,156]),a("🦙Ꙋ",[1,29871,243,162,169,156,237,156,141]),a("Ꙋ🦙",[1,29871,237,156,141,243,162,169,156]),a('The llama (/ˈlɑːmə/; 🦙Spanish pronunciation: [ˈʎama]) (Lama glama) is a domesticated South American camelid, widely used as a meat and pack animal by Andean cultures since the Pre-Columbian era. Llamas are social animals and live with others as a herd. Their wool is soft and contains only a small amount of lanolin.[2] Llamas can learn simple tasks after a few repetitions. When using a pack, they can carry about 25 to 30% of their body weight for 8 to 13 km (58 miles).[3] The name llama (in the past also spelled "lama" or "glama") was adopted by European settlers from native Peruvians.[4] The ancestors of llamas are thought to have originated from the Great Plains of North America about 40 million years ago, and subsequently migrated to South America about three million years ago during the Great American Interchange. By the end of the last ice age (10,00012,000 years ago), camelids were extinct in North America.[3] As of 2007, there were over seven million llamas and alpacas in South America and over 158,000 llamas and 100,000Ꙋ🦙 alpacas, descended from progenitors imported late in the 20th century, in the United States and Canada.[5] In Aymara mythology, llamas are important beings. The Heavenly Llama is said to drink water from the ocean and urinates as it rains.[6] According to Aymara eschatology, llamas will return to the water springs and lagoons where they come from at the end of time.[6]',[1,450,11148,3304,20374,30176,29880,30426,30215,29885,30184,29914,29936,29871,243,162,169,156,15495,728,11504,11173,362,29901,518,30176,31743,3304,2314,313,29931,3304,3144,3304,29897,338,263,21849,630,4275,3082,3949,295,333,29892,17644,1304,408,263,27654,322,4870,13019,491,1126,29872,273,4185,1973,1951,278,4721,29899,1625,3774,713,3152,29889,365,5288,294,526,5264,15006,322,5735,411,4045,408,263,902,29881,29889,11275,281,1507,338,4964,322,3743,871,263,2319,5253,310,10906,22878,7226,29906,29962,365,5288,294,508,5110,2560,9595,1156,263,2846,21159,2187,29889,1932,773,263,4870,29892,896,508,8677,1048,29871,29906,29945,304,29871,29941,29900,29995,310,1009,3573,7688,363,29871,29947,304,29871,29896,29941,2383,313,29945,29994,29947,7800,467,29961,29941,29962,450,1024,11148,3304,313,262,278,4940,884,805,14356,376,29880,3304,29908,470,376,3820,3304,1159,471,16356,491,7824,3604,9306,515,7531,25493,1403,550,7226,29946,29962,450,19525,943,310,11829,294,526,2714,304,505,3978,630,515,278,7027,13494,1144,310,4644,6813,1048,29871,29946,29900,7284,2440,8020,29892,322,17602,9725,630,304,4275,6813,1048,2211,7284,2440,8020,2645,278,7027,3082,4124,3167,29889,2648,278,1095,310,278,1833,14890,5046,313,29896,29900,29892,29900,29900,29900,29994,29896,29906,29892,29900,29900,29900,2440,8020,511,3949,295,4841,892,1294,5562,297,4644,6813,7226,29941,29962,1094,310,29871,29906,29900,29900,29955,29892,727,892,975,9881,7284,11829,294,322,394,29886,562,294,297,4275,6813,322,975,29871,29896,29945,29947,29892,29900,29900,29900,11829,294,322,29871,29896,29900,29900,29892,29900,29900,29900,237,156,141,243,162,169,156,394,29886,562,294,29892,5153,2760,515,410,1885,17259,19673,5683,297,278,29871,29906,29900,386,6462,29892,297,278,3303,3900,322,7400,7226,29945,29962,512,319,962,2518,22082,3002,29892,11829,294,526,4100,367,886,29889,450,22977,368,365,29880,3304,338,1497,304,13748,4094,515,278,23474,322,5065,262,1078,408,372,1153,1144,7226,29953,29962,7579,304,319,962,2518,831,13496,3002,29892,11829,294,674,736,304,278,4094,7689,886,322,301,4425,787,988,896,2041,515,472,278,1095,310,931,7226,29953,29962]),console.log("LLaMA Tokenizer tests passed successfully."),!0}runTests(e=this.defaultTests){e(this)}}const jR="PHVuaz4KPHM+Cjwvcz4KPDB4MDA+CjwweDAxPgo8MHgwMj4KPDB4MDM+CjwweDA0Pgo8MHgwNT4KPDB4MDY+CjwweDA3Pgo8MHgwOD4KPDB4MDk+CjwweDBBPgo8MHgwQj4KPDB4MEM+CjwweDBEPgo8MHgwRT4KPDB4MEY+CjwweDEwPgo8MHgxMT4KPDB4MTI+CjwweDEzPgo8MHgxND4KPDB4MTU+CjwweDE2Pgo8MHgxNz4KPDB4MTg+CjwweDE5Pgo8MHgxQT4KPDB4MUI+CjwweDFDPgo8MHgxRD4KPDB4MUU+CjwweDFGPgo8MHgyMD4KPDB4MjE+CjwweDIyPgo8MHgyMz4KPDB4MjQ+CjwweDI1Pgo8MHgyNj4KPDB4Mjc+CjwweDI4Pgo8MHgyOT4KPDB4MkE+CjwweDJCPgo8MHgyQz4KPDB4MkQ+CjwweDJFPgo8MHgyRj4KPDB4MzA+CjwweDMxPgo8MHgzMj4KPDB4MzM+CjwweDM0Pgo8MHgzNT4KPDB4MzY+CjwweDM3Pgo8MHgzOD4KPDB4Mzk+CjwweDNBPgo8MHgzQj4KPDB4M0M+CjwweDNEPgo8MHgzRT4KPDB4M0Y+CjwweDQwPgo8MHg0MT4KPDB4NDI+CjwweDQzPgo8MHg0ND4KPDB4NDU+CjwweDQ2Pgo8MHg0Nz4KPDB4NDg+CjwweDQ5Pgo8MHg0QT4KPDB4NEI+CjwweDRDPgo8MHg0RD4KPDB4NEU+CjwweDRGPgo8MHg1MD4KPDB4NTE+CjwweDUyPgo8MHg1Mz4KPDB4NTQ+CjwweDU1Pgo8MHg1Nj4KPDB4NTc+CjwweDU4Pgo8MHg1OT4KPDB4NUE+CjwweDVCPgo8MHg1Qz4KPDB4NUQ+CjwweDVFPgo8MHg1Rj4KPDB4NjA+CjwweDYxPgo8MHg2Mj4KPDB4NjM+CjwweDY0Pgo8MHg2NT4KPDB4NjY+CjwweDY3Pgo8MHg2OD4KPDB4Njk+CjwweDZBPgo8MHg2Qj4KPDB4NkM+CjwweDZEPgo8MHg2RT4KPDB4NkY+CjwweDcwPgo8MHg3MT4KPDB4NzI+CjwweDczPgo8MHg3ND4KPDB4NzU+CjwweDc2Pgo8MHg3Nz4KPDB4Nzg+CjwweDc5Pgo8MHg3QT4KPDB4N0I+CjwweDdDPgo8MHg3RD4KPDB4N0U+CjwweDdGPgo8MHg4MD4KPDB4ODE+CjwweDgyPgo8MHg4Mz4KPDB4ODQ+CjwweDg1Pgo8MHg4Nj4KPDB4ODc+CjwweDg4Pgo8MHg4OT4KPDB4OEE+CjwweDhCPgo8MHg4Qz4KPDB4OEQ+CjwweDhFPgo8MHg4Rj4KPDB4OTA+CjwweDkxPgo8MHg5Mj4KPDB4OTM+CjwweDk0Pgo8MHg5NT4KPDB4OTY+CjwweDk3Pgo8MHg5OD4KPDB4OTk+CjwweDlBPgo8MHg5Qj4KPDB4OUM+CjwweDlEPgo8MHg5RT4KPDB4OUY+CjwweEEwPgo8MHhBMT4KPDB4QTI+CjwweEEzPgo8MHhBND4KPDB4QTU+CjwweEE2Pgo8MHhBNz4KPDB4QTg+CjwweEE5Pgo8MHhBQT4KPDB4QUI+CjwweEFDPgo8MHhBRD4KPDB4QUU+CjwweEFGPgo8MHhCMD4KPDB4QjE+CjwweEIyPgo8MHhCMz4KPDB4QjQ+CjwweEI1Pgo8MHhCNj4KPDB4Qjc+CjwweEI4Pgo8MHhCOT4KPDB4QkE+CjwweEJCPgo8MHhCQz4KPDB4QkQ+CjwweEJFPgo8MHhCRj4KPDB4QzA+CjwweEMxPgo8MHhDMj4KPDB4QzM+CjwweEM0Pgo8MHhDNT4KPDB4QzY+CjwweEM3Pgo8MHhDOD4KPDB4Qzk+CjwweENBPgo8MHhDQj4KPDB4Q0M+CjwweENEPgo8MHhDRT4KPDB4Q0Y+CjwweEQwPgo8MHhEMT4KPDB4RDI+CjwweEQzPgo8MHhEND4KPDB4RDU+CjwweEQ2Pgo8MHhENz4KPDB4RDg+CjwweEQ5Pgo8MHhEQT4KPDB4REI+CjwweERDPgo8MHhERD4KPDB4REU+CjwweERGPgo8MHhFMD4KPDB4RTE+CjwweEUyPgo8MHhFMz4KPDB4RTQ+CjwweEU1Pgo8MHhFNj4KPDB4RTc+CjwweEU4Pgo8MHhFOT4KPDB4RUE+CjwweEVCPgo8MHhFQz4KPDB4RUQ+CjwweEVFPgo8MHhFRj4KPDB4RjA+CjwweEYxPgo8MHhGMj4KPDB4RjM+CjwweEY0Pgo8MHhGNT4KPDB4RjY+CjwweEY3Pgo8MHhGOD4KPDB4Rjk+CjwweEZBPgo8MHhGQj4KPDB4RkM+CjwweEZEPgo8MHhGRT4KPDB4RkY+CuKWgeKWgQriloF0CmVyCmluCuKWgWEKZW4Kb24K4paBdGgKZXMK4paB4paB4paB4paBCuKWgXMK4paBZAphdApvcgphbgriloFjCmlzCnJlCml0CuKWgXRoZQphcgpsZQriloF3CuKWgXAKb3UKYWwK4paBZgriloFtCmVkCuKWgW8K4paBYgpvbQppb24KaW5nCmljCmFzCmVsCmVudAriloFpbgriloFoCm5kCmV0CuKWgWwK4paBbgpzdAriloF0bwpjaAriloFJCnJvCuKWgeKWgeKWgeKWgeKWgeKWgeKWgeKWgQppbAriloFvZgpkZQpjdAriloEoCmFtCuKWgUMK4paBZGUK4paBUwriloF1CuKWgUEK4paBXAriloFlCuKWgWFuZAriloFUCm9sCuKWgXYKaW0Kb3QKYWQKdXQK4paBZwplbQp1cgppZAriloEqCmlnCnJhCuKWgXJlCuKWgWlzCnF1Cm93CuKWgU0KZXN0CuKWgXkKc2UKdmUKY2UKaWUKdW4K4paBUAriloFCCmFnCnVsCuKWgT0KaGUKZW5kCm9kZQp0ZXIKbWVudApvcwriloFECmlmCmF0aW9uCuKWgWZvcgriloFyCuKWgUwK4paBeW91CuKWgWJlCmx5CnZlcgphYgp0ZQriloFpdAriloFvbgpyaQp1cwriloEiCuKWgXdoCuKWgWNvbgriloFICuKWgXN0CmlyCuKWgUUK4paBRgpjawriloFhbgp0aAplZwpheQppdGgK4paBUgppc3QKYW5kCuKWgXRoYXQK4paBYWwK4paBJAriloEjCm9kCnVtCuKWgVcKaHQKY29kZQriloFHCmF0ZQplc3MK4paBTgplcmUKcHAK4paBYXMK4paBc2UK4paBcHJvCuKWgXdpdGgKcGUK4paBawplcnMKcHQKKTsKbG8K4paB4paB4paB4paB4paBCuKWgWNvbQphbWUK4paBYAriloFDb20KaWEKYW50CuKWgWxhCuKWgXsK4paBZW4KY3Rpb24K4paBZXgKbGQKdWIK4paBagpsYQp1ZQriloFKCmljaAriloFkbwriloFPCuKWgXF1Cml2Cm9ydAphcnQK4paBdW4K4paBIyMK4paBdGhpcwprZQriloFoYQriloEtCm91dAriloFUaGUK4paBbm90CuKWgW5lCmlsbAriloFsZQpjaQpyb20KaW5lCi8vCm9wCmVnaW4K4paBQ29tbWVudAriloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloEKYmVnaW4K0YHRggphc3MKaXoKKS4Kb2cK4paB0L8K4paBb3IK4paBd2FzCuKWgWF0Cm91cgriloFpCmFpbgriloFLCtC90LAK4paBVgpnZQriloFzdQphcAphZ2UKb3VsZApuZQphdgp4dApvcmUKaWxlCi0tCuKWgdCyCuKWgWJ5CmxpCmF0aArRgNCwCmJlcgphY2gKYWxsCuKWgVRoCnVsdAriloF9CuKWgVUK4paBdXMK4paBegp1c3QK4paBaGF2ZQpsaWMK0L3QuAriloFjYW4KdHIKY29tCiksCuKWgUluCmluZAplbGwK4paBZnJvbQrQvtCyCnRvCuKWgVsKYWJsZQpvc3QK4paBY2gKZWN0CmlnaHQKaW50CuKWgScK4paBYXJlCuKWgWltCuKWgXNoCuKWgTwK4paBQW4K4paB0YEKYXRhCmlyZQriloF0cgpjb24Kb3JkCml0eQphcmQK4paB4paB4paB4paB4paB4paBCuKWgWhlCuKWgWJ1dApvYwo9IgriloFwcgp1cmUKcGVyCmFjawpvcmsKb25nCmFucwrQutC+CnBsZQriloFkZXMKb2sKb3JtCndlcgphawpwcgphc2UK4paBZWwKcGgKYWMK4paBdW5kCuKWgWFyCuKWgWlmCnVkCnBzCml0ZQpibGUK0L3QvgpmZXIKcGwKaXZlCmFuZwplbnMK0YDQvgriloFzbwpzbwphc3QKKCkKc3dlcgpydQppZXMK4paBOgphdQpvdgrRgNC1CtCz0L4K4paBZGVyCuKWgW15CuKWgXdlCuKWgW1lCm50CuKWgWFkCnVybgriloF5b3VyCjovLwphcmUK4paBYWxsCmZmCmlvCmVzdGlvbgppbWUK4paBZXIKbGFzcwriloHQuAriloF3aGljaApvbWUKb250CuKWgXBhcgriloFtYQriloFZCiIsCuKWgdC+CmZ0CmlhbApjYwpvdW5kCuKWgWxpCuKWgXJlcwpldGgKamVjdAriloFhcHAK4paBU3QKaWNlCuKWgWFtCmFjdAriloFkZWwKZ3IKYXRlZAppZXIK4paB4paB4paB4paB4paB4paB4paB4paB4paB4paB4paB4paBCuKWgWFiCuKWgWV0CmFsbHkKLi4KcG9ydAppawriloFwZXIK4paBY29udArRgNC4CtC60LAKc2VyCtC70LgKbGwKaWV3CmlnbgpfewpwdXQKb25lCnVuY3Rpb24K4paBZGkKYXJ5Cml0aW9uCm1hCtC10L0KZ2V0CuKWgWxvCuKWgXZhbAriloFRCnJhbgriloHQtAplbmNlCuKWgXdvcmsK4paB0L3QsAppcAppdGVtCnlwZQriloEmCuKWgWhpcwriloF1c2UKZGVyCuKWgUFuc3dlcgriloF3aWxsCml6ZQrRgtCwCmxvdwriloFDaAriloFnZXQKaWRlCm91cwppbmsKcHRpb24K0LvQsAp0dXJuCnVuZwplYwp1Zwpmb3JtCnJlcwpodHQKb3VnCtC70YwK4paBbm8KY2wK4paBcm8K4paBb25lCnR0CmNyaQpkdQriloF1cArRgtC+CigiCuKWgW9iCndlCm9yeQriloFlc3QKZXJ5CmllbApzdHIKb2IK4paBcXVlCmlhbgriloFvdXQK4paBcGwK4paBbmV3CtC60LgK4paBKwpyeQpvdGgKdGhlcgriloF2YXIK4paBd291bGQK4paBc2VyCnRlcm4KdGV4dAriloF0aGVyZQppc2gKcm9yCtGC0LUK4paBc2V0CuKWgUAK4paB0L/QvgriloF0ZQpleAriloFyZXR1cm4KYWlsCuKWgWFueQriloFJdAriloFmdW5jdGlvbgp7XAonLArDqXMKYWxlCtCw0L0K4paBd2hlbgppYgriloFnbwphbmNlCuKWgWhhZAriloFRdQriloFjb21wCtC70LUK4paB0LcKbWF0aAriloFoYXMK4paB0LwK4paBcHJlCmVuZXIK4paBcGFydAplbGYK4paBZGllCuKWgWxpa2UKcmF5Cmlyc3QK4paBZGlzCuKWgW1hbgpyaXQK4paBdGhlbgriloFjbGFzcwpwcm8K4paBcG8K4paBdXNpbmcKZWIK4paBY29kZQpvd24K4paBc29tZQpjZXMK4paBJFwK0LXRgApsZWN0CuKWgWF1CmlzY2gK4paBY29sCuKWgeKAkwp1cApvbnMK4paBYWRkCmlsZAppc3MKdmFsCm91bnQKbGVzCnZlbnQK4paB4paB4paB4paB4paB4paB4paB4paB4paB4paB4paB4paB4paBCuKWgVoKSW4Kcm93CmVhcgphdGlvbnMKYWgKcXVlCnVibGljCmFuawriloFzcAriloFXaAotLS0tCnNrCmV3CmFncwrRgtC4CmFubgriloHigJQKZXJ0CmFjZQpzY2gK4paBbmVlZAriloHDoAppZW4Kb3VnaArQvdC1CuKWgWRlZgppagplcm4K4paBd2hhdAriloFBcgp3bwptbAo8LwriloFSZQriloFlcwriloFpbnN0CmJvCmF6CuKWgSMjIwriloHQsQplcm0K4paBQWwKbGVkCtC00LAKdGVuCnNldArQu9C+CuKWgWNvbW0Kc2gK0LLQsAriloEvCuKWgWRhdGEK4paBLy8KXSgK4paBc3RyCm9zZQriloFVbgp2ZW4KU3QKLi4uCuKWgdChCnlzdAriloHCqwppY2sKaXgKcGFyCuKWgdGDCuKWgXdhbnQKbmcKb3RlCuKWgWdyCuKWgWR1CuKWgS4KdW5kCuKWgW9ubHkK4paBc2EKZWx5CnZlcnMK4paBZW50CikpCignCuKWgW1vZAphdmEKdG9uCuKWgXNob3VsZAplbWVudAriloFmb3JtCuKWgWFsc28K4paBc2MKaW5ncwriloFZb3UKw7NuCuKWgWtuCigpOwriloF8CuKWgXdlcmUKc3MK4paBUXVlc3Rpb24KaXNlCuKWgXRoZXkK4paBRGUKb25kCuKWgXNvbAriloFmb2wK4paBbW9yZQriloFoZXIK4paBXwriloHDqQphdGNoCmZ0ZXIK4paBY3JlCmxvY2sKdHJpbmcK4paBVGhpcwp6ZQphZG8KdWxsCmdlcgpiZQriloFvdGhlcgriloFUYWdzCnV0aW9uCmljdAriloFob3cK4paBeAriloFTZQriloFjaGUKY3JpcHQK4paBanVzdAriloFwb3MKYW5nZQppZmljCnJlZQp9fQriloF0aW1lCmFwcArQvdGLCuKWgWZpbGUKYXJrCmljYWwK4paBZmlyc3QK4paBaW50CuKWgdCSCuKWgUhlCnRhCnVtZW50Cm9ycwpsZW1lbnQKcmFjCuKWgWFnCuKWgWRvZXMKeW4KcmVhZAp1YWwK4paBTGUKeXMK4paBZW0K4paBbnVtCnZlbArQtNC4Cm92ZXIK4paBZGlmCmV0aG9kCuKWgUlmCuKWgXNwZQp5bQriloF0aGVtCuKWgWludG8K4paB4paB4paB4paB4paB4paB4paB4paB4paB4paBCuKWgWxlcwriloFpdHMKZXNlCmllbGQK4paBcHVibGljCuKWgdCfCuKWgWRlbgp5c3RlbQpvZgriloFvdmVyCi0+CuKWgWZpbApuYW1lCmluYWwK4paBaWwKYW1wbGUK4paBd2F5CmljYQrQstC+CmNlc3MKaXR0CnVjaAriloF3aGVyZQrQvNC4Cm9yZwpodHRwcwriloF2bwppZW50Cm92ZQriloF2YWx1ZQplbmcK4paBTGEKXnsKcmVmCmllZApFUgriloFzdGF0CmZpZwptZQriloF2b24K4paBaW50ZXIKcm9pZAphdGVyCuKWgXRoZWlyCuKWgWJldAriloFlaW4KfVwKIj4K4paBc3ViCuKWgW9wCuKWgWRvbgp0eQriloF0cnkK4paBUHJvCuKWgXRyYQriloFzYW1lCmVwCuKWgXR3bwriloFuYW1lCm9sZApsZXQK4paBc2ltCnNwCuKWgWF2CmJyZQpibGVtCmV5CuKWgWNvdWxkCuKWgWNvcgriloFhY2MKYXlzCmNyZQp1cnIKc2kK4paBY29uc3QKdWVzCn0kClZpZXcK4paBYWN0CuKWgWJvCuKWgdC60L4K4paBc29tCuKWgWFib3V0CmxhbmQKbWVyCuKWgWxpc3QKY2FsCuKWgWltcG9ydApjb2wK4paBbmEKbmEKOjoK4paBd2hvCuKWgWVycm9yCuKWgVgKYXRvcgpleHQK4paBYmVlbgrDqXIK4paBcnVuCnBvcwriloFjbAoqKgriloHQmgp1bGFyCmF1c2UK4paBcmVnCuKWgWtub3cK4paBc2VlCuKWgWhpbQpuaW5nCuKWgdC30LAKYXRlcwpmb3JlCmlvbnMK4paBaGVsCnV0ZQriloFyZW0K4paB0LPQvgriloFNYXIK0YDRgwp2aWNlCmlyZWN0Cm5lcgriloF1bmRlcgpyaWIKaHIK0YfQtQriloFBcwriloFlbmQKZW1iZXIK4paB0LAK4paBYXR0CmluYQpzb24K4paBZm9sbG93CuKWgVNjaApwZWN0CuKWgXJlbAriloFTbwriloFsb29rCmFiZWwK4paBcHJvYmxlbQriloF2YW4Kc3Ryb25nCmNvCnBvbgpjYQphZGEKIjoKY29uZAphbWIKfSwKcXVlc3QK4paBYXV0CuKWgXJlc3VsdAriloFtYXkKUmUKaHR0cAopOgriloFBbmQKcmVkCuKWgUhvdwpwbwrRgdC60L4KYXR0Cm91cApjZWQK4paBdHlwZQriloF0aGFuCuKWgWNvbnMKdWYK0YbQuAriloFxdWVzdGlvbgpyYXBoCmlnaAriloHQnAriloFodHQKaW5zCmRlbgriloFkYQriloF2ZXIKb2gK4paBPT4Kcml2CnVkZQriloFGb3IK4paBcmEKZnJhYwrQvNCwCuKWgWFmdGVyCn17CuKWgW1ldGhvZAoiKQphbXAKYXNoCuKWgXJlYwriloFkaWZmZXIKT04KYXgKYW1lbnQKb3VyY2UKQ29uCml0cwpOYW1lCm1hbgriloFiZWMKY2hlCuKWgUVuCmFqCuKWgWdlbmVyCklOCuKWgWlkCmFnZXMK4paBbG9jCmZvCmJyCuKWgXNoZQpQcm8K4paBdW5hCuKWgdC6CmV0YQpsb2cKb2xvZwriloFzdXIKYXJnCuKWgS0tCmt0CihcCm1pbgriloFsaW5lCuKWgXZhcmkK0YHRjwppY3MK0L3Rjwp2ZXJ5CmFkZAriloFvYmplY3QKSWQK4paBQnV0CuKWgWNhc2UK4paBbWFrZQriloFjYWwK4paBcGFzcwrRgdGMCmVzc2lvbgpuZXQKLiIK4paB0LMKw6RyCtC00LUKbm8KYXRpbmcKYXRvCmxpbmUK0LLQuAriloFFeAriloFhc3MK4paBdmVycwrQu9GPCuKWgWVkCnVtbgpvdGhlcgrRgdGC0LAKYXRpdmUKU3RyaW5nCuKWgWxvcwp3bgriloFhbnN3ZXIK4paBbGV0CuKWgXBlCmVudHMK4paBZmUKaW5jZQpuaQppZGVyCm93cwriloF0ZXN0CuKWgWhlcmUKcm9sbAriloFjYWxsCnJ1Y3QK4paBcG9sCmFpdAriloFiYWNrCmhvCkV4CnJlc3MKU1QKcmllZApkYXRlCtC10YIK4paBZGlkCnRpbmcK4paBRWwK4paBZGVtCikkCtC+0LLQsAp1cnJlbnQKbGFjZQpyaWdodApyZW4K0L/QvgriloFlYWNoCmN5CmJsb2NrCmRhdGEK4paBJQriloFhYwriloE9PQrDvHIK4paBcG9yCmFzawphcmNoCmFtZXMK4paBQ29uCtGH0LAK4paBb2ZmCuKWgWZpbmQKY29udAriloFub3cKd29yawphdGlvbmFsCmRkCmNpw7NuCuKWgdCQCmF1bHQKTGlzdAriloFleHQKdXJzCmFrZQp1bGUK4paBcG9pbnQKQVQKYXV0CuKWgXRyYW5zCuKWgWNvCuKWgXJlYWQK4paBdXNlZArRgdC60LgKYXJpCkxFCmV0ZXIKb3VuCmV2ZXIKc2VsZgppbmVkCmlkdGgKdXgKanMK4paBc3VjaAriloFJcwrDqWUKZnVsCuKWgWRpc3QK4paBYnUKaXRlbWl6ZQpDb250CmplCtGB0LgK4paBcHJvdgpiYgp3YXJkCmVzZW50CmVyc29uCmFua3MKd2gKbm90CuKWgVdlCmthCnJvcAphdHVyCmFscwriloFiZWwKw7ZyCmZyCuKWgWV4YW1wbGUK4paBaW5jbAphbWlsCuKWgdGA0LAK4paB4oCcCuKWgXN0cmluZwriloF0aGluawpUaAriloF0ZW0KYXZlCuKWgUZyYW4K4paBbnVtYmVyCuKWgXNpCmltZXMKdGVtCm15Cmxlcgpsb2FkCj09CuKWgWhhbmQKemEK4paBYmVjYXVzZQriloFzY2gKdm8KdGhpcwpJRArDo28K4paBc3RhcnQK4paBd2FyCuKWgWhlbHAKdHMK4paBY2hhcgriloFwaAriloFtaW4KdGlsCnJpdGUKLS0tLS0tLS0KZWxzCuKWgW1pdAplZGlhCtC60YMK4paBU2gKYW55Cl07CuKWgdCRCmlxdWUKZGEKZWYKZGV4CuKWgXByb2R1CuKWgdCdCmdyYW0K4paBT3IK4paBZ3JlCnF1b3RlCmxlZwpvcm4K4paBaW5kCuKWgXBvc3QK4paBZGVwCl0sCnZpCuKWgXVzZXIK4paBPgpsaWNrCuKWgXZlcnkKZXRoaW5nCuKWgWFycmF5CuKWgWd1CuKWgWR1cgpgLgrRgtGMCmxpY2F0aW9uCtGB0YLQuAplawppY28K4paBZGF0CtC+0YAKaHRtbAppb25lCuKWgWRpZmZlcmVudAriloFjaGVjawriloFmcgriloFFcgriloF0ZXh0CtC90ZYKaWNodApzdGFjawpFTgpyYWcK4paBZXZlcnkKQXIK4paBYmVmb3JlCmFsc2UK4paBZmluCuKWgWTDqQriloF0aGVzZQriloFkZXQKVmFsCmNlcHRpb24K4paBYW5kcm9pZApibG9ja3F1b3RlCuKWgWplCmZpbGUKYXRzCuKWgdC00L4KZXNzYWdlCuKWgWFnYWluCmF3CkNoCndlZW4K4paB0JQKZm9yCmNpYWwKcGxheQpwcmUKaWRhCuKWgVBhcgpueQpyYWN0CuKWgXN1cHAKYXNlZApsZWN0aW9uCuKWgWRhbnMKYWlyCnJvbAriloF0aHIKRGF0YQpsaWNoCuKWgdC/0YDQvgriloFsb25nCuKWgXNlY29uZAp1YWxseQppbmVzCuKWgWZvdW5kCmVuZ3RoCnlwCmVhZAriloFsb2cKdWkKbmV3CuKWgdCgCmdvCmF1cwpvZHkK4paBc29uCtC80LUKZXJvCnZlZApzdWIK4paBcmlnaHQKdmlldwriloFmb2xsb3dpbmcKJykKIik7CuKWgXNhaWQK0LbQtQrRh9C4CtGC0YMKb3R0CtGB0LUKYXJzCiQuCmdnCuKWgWJyCm9vbAp5bGUKdXNlCuKWgXNob3cKbGVhc2UKY2lhCuKWgWRpcmVjdApkb2MK0LDRgAptcwriloFnaXYK4paBZXhwCnFsCtC00YMK0LLQtQriloFCZQpDb20KaXRlcgpSRQptcAptZW4K4paBUm8KTUEK4paBQ29sCmlzdGVyCuKWgXdlbGwK4paBPC8KYXlvdXQKYXR1cmUKaXZlcnMKenkK4paB0L3QtQriloFtZXQKdW5lCnl0aApUeXBlCuKWgWVsZW1lbnQK4paBbGluawptb2QK4paBYmV0d2VlbgpjZXB0CnF1aXJlCuKWgXRocm91Z2gK4paBd2hpbGUK4paBT24KdGhlCsOtYQriloFzb21ldGhpbmcKdm9sCuKWgW1vc3QKc2MKdXNzCuKWgWNhcgriloFzbQriloHRgNC+CmFubwpsZWZ0CnZhCuKWgXRydWUKKCQKZW1zCuKWgW11Y2gKw6FzCuKWgU5ldwriloFwcm9wZXIKZXJhCml0ZWQK4paBZG9jCmljZXMKVGhlCuKWgT8K0YHRgtC+CmZsCuKWgXNwZWMKZW5kZXIKd2F5CuKWgXNlbGYK4paBZXZlbgrRltCyCuKWgdGB0LUK0L3QuNGPCuKWgVByCuKWgWtlCmVtYgriloF0YWJsZQriloFlcXUKbGllbnQKdGQKcGFydAriloFwcmludAriloF1bmUKaWZ5CuKWgS0+CmVuZQriloFtb24K4paBZGVjCuKWgXN0aWxsCuKWgdC+0LEK4paBVHIK4paB0YQKaWZlCmlzbQpieQpyYXcKaW9yCuKWgW1lZApvcmxkCuKWgWNvbXBsZQp3dwriloFhcnQKcm9uCuKWgdCTCuKWgU15CuKWgWFscwpyZWN0CuKWgWF1ZgriloFkb3duCmF0aGVyCkNvbApUZXh0CmJhY2sKJCwK4paBeWVhcgrQvNC+CnBpCuKWgUdyCnJlYW0K4paBcmVwCmJmCnd3dwriloF3dXIK4paBb3JnCmludGVyCuKWgURpZQriloFiZWluZwoiLgpsYWJlbAriloFjZW50CmphdmEKYmFyCmFudGUKYW5hCl9fCuKWgXNvbHV0aW9uCuKWgdCeCuKWgWZsCuKWgWNyZWF0ZQppY2kKc3RlCnl0aG9uCnVudAphc29uCmZlcmVuY2UKU0UK4paBbm9uCmFuZQriloFpbnMKYWRlcgpfe1wKUmVzCuKWgW1haW4K0L/QuAriloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloEK4paBVGhlcmUK4paBcG91cgpSTwpgLApsaXNoCmJqZWN0CmNjZXNzCuKWgW9yaWcK4paB4paB4paBCmlzY2hlbgpvd2VyCuKWgWhldAp1YwriloFlbHNlCsK7LgriloHQvtGCCmVxdQpzaWJsZQp0ZXN0CnN0YW5kCsOpbgpldHMKR0UKaWRlbnQK4paB0LUK4paB0L/RgNC4Ci4sCuKWgWRhcwpvY2sKLCIK4paBdm9sCuKWgWZvCuKWgXBhcmEK4paB0KIK4paBQ2FyCnJhbAriloFTcAp2YXIK4paBcGxheQpvdXNlCuKWgdGC0LAKaWNhbGx5CuKWgWNvbnRhaW4KcG9uc2UK4paBU3RyaW5nCsOhbgriloFib3RoCmtlbgpBUgrQtdGA0LUK4paBSWwK4paBaXNzCuKWgW9wZW4K4paBKQriloFXaGF0CmZlCnJpdmF0ZQpyZWcK4paBd2l0aG91dAriloF6dQp2aXMKZmxvdwriloFodHRwCmFiYXNlCuKWgXdvcmQK4paBY2hhbmdlCuKWgXdvcmtzCuKWgWdlCuKWgSEK4paBZWVuCml0bGUK4paBZXZlbnQKd29yZAphbmRvClNCCnJlbQriloFmaWVsZAp2aW5nClNlcgriloFvdXIK4paBcXVpCuKWgW9wZXIK4paBaXN0CmRlZgriloFtYWRlCtC90LjQtQpweAriloFtZW4Kcm0KYWlzCmNlbnQKbGlzdApUbwriloFUbwpqYQp2ZXJ0CuKWgW1hcgp2YWx1ZQriloHigJ4KIjsK4paBYXVzCuKWgUJyCm9sZQriloFtdWx0Cm91Z2h0CuKWgW1hdAriloF2aWV3CmZpbAriloHRgdC+CtCz0LAK4paBdm9pZAriloFnb29kCtCx0L4KQ1QK4paBbWFueQpiZW4K4paB0LLQvgriloHQutCwCuKWgXN5c3RlbQppbm8K4paBYW5vdGhlcgriloFyZXN0CnVzZXIKaWxpdHkKYWkK4paBbWlnaHQKdXN0b20K4paBb3JkZXIK4paBVmVyClNTCn0pCuKWgWVmZgrQtNC+CmV0dAriloFzaWduCtC80YMKSVQKc3RyaW5nCmVsbGUK4paBc2luZwpjdWwK4paBdHJ5aW5nCuKWgWJlZwriloFwYWdlCtGF0L4K4paBQ2FuCuKWgVNlcgorKwriloFtdXN0CuKWgXZhbHVlcwriloFrZXkKaWJsZQpdLgppcmQK4paBcHJvZ3JhbQpyb2xsZXIK4paBY29ubmUK4paBc2F5CuKWgXBhcmFtCmFjaGUKdmVsb3AK4paBc2VsZWN0CuKWgWZhbWlsCuKWgWxhc3QK4paBVGhhbmtzCuKWgXBvcAp9LgplcQriloFkb2VzbgpbJwriloF0ZXJtCuKWgXLDqQriloFkb2N1bWVudArQv9CwCtC70YMKYXRlZwouKQpsaW5nCmlvbmFsCmFibGVzCuKWgXRhawp1dHRvbgriloFhcmcKdHlwZQriloFzdXJlCuKWgXJlYWwK4paBd2ViCuKWgWN1cnJlbnQK4paBUGwKY2hvCm1lbnRzCuKWgUpvaApvdHMK4paBZXhpc3QK0L3RgwriloFmw7xyCuKWgdC40LcKZG8K0L3QvtCz0L4K4paBbGFzCuKWgW51bGwK4paBaW5mb3JtCuKWgdCbCuKWgXZlcnNpb24K4paBY2hhbmcKYWdlcgriloFDb21tCtC70ZYKdXNoCuKWgUdlCuKWgWhpZ2gK4paBaW5wdXQKb2dsZQpyb3MKYm94CmdlbgriloFzdGUK4paBbG9jYWwKSW0K4paBcHJvY2Vzcwp0ZXJuYWwKaXplZArQs9C4CsOpdAriloFJbmQK4paBb2NoCmx0CuKWgWNvbHVtbgriloF0cmllZAriloFjb21tYW5kCuKWgWJlc3QKYXN0ZXIK0LfQsAriloFwcmltCuKWgW1vZGVsCuKWgdGWCuKWgXRob3NlCml0aWVzCsOocmUK4paB0YDQtQrRmNC1CtGI0LgKcXVlcwriloFBbQriloFvd24KbGluCtC30LgKVmFsdWUKdGhpbmcK4paBLAriloFUZQriloFzdHVkCuKWgXVtCuKWgXNlcnZlcgppbGxlCuKWgXB1dAphdGl2Cmd5CtC+0LLQuApyYWYK0L7QstC+CuKWgXd1cmRlCuKWgVdoZW4K4paBZGl2CmFudHMK4paBdGVyCuKWgXBhcnRpYwriloHRggriloFEbwriloFObwpzZXJ0CmlkbwptYXRoY2FsCmFkZQriloFJSQpsZWFyCm9ncmFwaAplbnNlCuKWgXJvdwpudW0K4paBcG9zc2libGUK4paBc2luY2UK4paBQm8KY3Rpb25zCuKWgUltCk9SCtGG0ZYK4paBaWRlCm1hcAriloFjb3JyZWN0CnZlcwpwaHAK4paBb3V0cHV0CuKWgVBoCkFMCmFyZWQKXFwK4paBaW1hZ2UKZXNjaArQttC4CuKWgWNvbmYKcG9yCnF1ZXJ5CnVyZXMKaXVtCmVuZHMK4paBQWIKU0JOCtGW0LQKZXRoZXIKcHRpb25zCml0dQpsaWIKbnMKa2kK4paBd29ya2luZwriloFjb21vCuKWgVRoZW4KTUwKa2V5CmNsYXNzCm9wbGUKaXR0bGUK4paBbWF0Y2gKd2F5cwptYXRoYmIK4paBcmVxdWlyZQphbHQK4paBdmlzCuKWgWJsCuKWgWNhbGxlZApJdGVtCnVyYQp2ZWMKZW1lCuKWgWRlbGxhCmVtYnJlCnVyZwpTZQriloFyZXF1ZXN0CmlzY2hlCuKWgXBvcnQK4paBaW5zdGVhZAo9XAriloHQowpob3IKZW50ZQp1bWUKZXJkCtGB0LAK4paBd2h5CnJpc3QK4paBcGVyc29uCuKWgS4uLgriloFwcml2YXRlCuKWgXRvdApwaGEKaWZ0Cml0YQpsb2MK4paBb2xkCtC+0L0K4paBbmVsCiddCnRpCmlldApjaXRlCnBsZW1lbnQK4paBYWJvdmUKa3MKcmVhZHkK4paBY29tZQpzZWN0aW9uCuKWgVBvbAriloF3cml0CuKWgWh0dHBzCuKWgSQkCuKWgcK7CuKWgWJ1aWxkCml0bwriloFjb25zaWRlcgphZnQKQXBwCixcCmluZG93cwpjb21tCuKWgTsKZ3JvdW5kCuKWgXBsYWNlCkJ5CuKWgXByb2plY3QKT2JqZWN0CuKWgXJlcHIKZW5jZXMKaW5kb3cKenQK4paBZmlsZXMKY3oKaXZpdHkK4paBaW5pdAriloFwcm9iCuKWgXNrCm9ydGgKaW1lbnQKb3VibGUKYXRhbAppcmMK4paBw6gK4paBYnJlCmlzdGEKaW5wdXQK4paB0JgK0L3QvtC5CnN1bQpwYXRoCuKWgWNvdXIK4paBdG9vCuKWgUFkCuKWgUd1CuKWgWZhbHNlCuKWgWZ1bgriloHRgdGCCm9vZArDqHMK4paBZW5jCmJvbApybAphcmdldApvcmRlcgriloFtZWFuCtC/0LUKaWdlbgriloHQv9GA0LUKd2lkdGgKOw0KaXRvcgriloFzdGF0ZQriloFncmVhdAplbm4KYmluCkVyCk1vZApvegriloF3b24K4paBZmFjdAriloFqYXZhCuKWgVVuaXZlcnMK4paBY2FwCmlzdG9yCn0oCmt1Cml0aGVyCmFsZXMK4paBb3UKcm9zcwriloF0YWtlCnJpeApsb2IK4paBZWluZQphc2VzCuKWgWFjY2VzcwppdMOpCmlzdHIKaXphdGlvbgriloFhcHBybwpiYWxsCuKWgW1hawp9XgriloFDb25zCnByZXNzCnNlcnYKKCkuCmFmCuKWgXJlZgopXAriloFjb250aW4Kc3UKaXZlcgriloFjb25kCuKWgWV4cGVjdAriloFjaGFyYWN0CmJlcnQKZWx0CnRlcnMKc2NyaXB0CuKWgUVkCmFwdAonKTsKcHJpbnQK4paBc2l6ZQriloFzaWNoCmZhY2UKZW5kZW4K4paBQW1lcgppZmllZArDs3cK4paBU3UKdGVzCm1lZAriloFSZWcKc29sZQriloFpbmNsdWQKaW5pCmluY2kK4paBcGxhCuKWgWxlZnQKZGYKUGFyCuKWgUFsbAriloFvY2MK4paBQXQK4paBY3IKUXUK4paBZ2l2ZW4K4paBU3lzdGVtCmljYW4K4paBZmluYWwKaXRpb25zCuKWgdCx0YsK4paBcGVyZm9ybQpBTgriloFNZQp1cm8K4paBVGhhdArQs9GA0LAK4paB0J/QvgriloHQstC4CmFibHkK4paBcHJlc2VudApkdWN0CnJpYwriloFFbmcKdHJ5CuKWgWxhcgpibAppZGQK4paBw6RyCm9yYQpMTApvc3MK4paBSVNCTgriloF0aHJlZQpqbwpuw60KcmMK4paBZmFyCuKWgU5vdAriloFsaXR0bGUKZGlzCmF0aQpmdW5jdGlvbgriloFhYmxlCmxlc3MK0YHQvgriloFwYXRoCuKWgXByZXMKbG9zZQpQSQriloFpc3N1ZQphY2thZ2UKdGltZQppZ2UKYW1zCuKWgUNsCmFpbHMKYWxrCmlpCtGI0LUKcGVuClFMCuKWgWVhcwpSTApjZWwK4paBc2wK4paBYXNrCuKWgW5vbQriloF0b3AKaWRlcwppbmRleArDqW0K4paBaGFwcApveApjZAriloFiZXR0ZXIK4paBbG9hZAphZG9zCnplbgriloFjZQriloFmYQriloFKb2huCklNQQriloFCYXIKb3ZlcmZsb3cK4paB0LTQtQpuZXNzCmNlcgriloFIZXJlCnJldAriloFzegphbWJkYQpvcHkKdXJsCnB5CnJ0CuKWgXVuZGVyc3RhbmQKYcWCCmhlcgojIwriloFjaGlsZAriloFleGVjCuKWgWFwcGxpY2F0aW9uCuKWgXN0cnVjdAriloHRjwpGaWxlCuKWgWNlcnQKaXNvbgriloF2YXJpYWJsZQpERQpycwriloFyZWFsbHkKUG9ydApiYQriloFCZXIK4paBaW50ZQriloFzdGF0aWMK4paBY29uZmlnCuKWgVNoZQplc3Rpb25zCuKWgXBsdXMK4paBaGFiCm9wZQriloFtdXMK4paBY291bnQKTUUK4paBc3VwcG9ydAriloFwZW9wbGUK4paBYmVoCuKWgWFscmVhZHkKVHIK4paBZG9uZQpkZW0Kc2l6ZQphbHBoYQriloFkaXNjCl0pCuKWgU1hbgriloFtaWwK4paBc3RhbmQK4paBZ3JvdXAK4paBc21hbGwK4paBbWFnCtGB0YLRjAriloFkZWZhdWx0CuKWgXNpbmdsZQpsaW5rCmNsdWRlCuKWgWVhcgppbGFyCioqKioK4paBZml4CmxleQriloFwYXMK0L3QuNC5Cmlzc2lvbgriloFpbXBsZW1lbnQKaXRjaAriloHQs9C+0LTQsAriloFhbHdheXMK4paBSmFoCnByaW5nCsOnw6NvCnBsYXRlCuKWgWRlc2NyaQriloFoZWFkCmluaXQKb2dyYWYK4paBcXVlcnkKaXZlZAriloFpbmcKcHR5CmhhCuKWgW1vdgriloHRjQpldHRlCmlseQriloFnb3QKaWxlZAppY3JvCuKWgXdyCtGA0Y8K4paBbmV2ZXIKb3JlcwriloFiYXMKaW9zCmxhY2sKYWludAp2aW91cwriloFnaXZlCmlkYWQKRW4K0L3Ri9C5CnRhYmxlCuKWgdCd0LAK4paBcGF0CtGC0L7RgAphbmd1CmxveQriloFzZWcKYXJyYXkK4paBRmwK4paBaW5kZXgK4paBc3cKSU1BR0UK4paBa20K0LHQuApDbGFzcwplbmEK0LzQtdC9CmNvbXAKYXR1cwpyYXAK4paBTGlzdApFcnJvcgriloF0eXAK4paB0LzQsApjcwonOgpqaQriloFIb3dldmVyCuKWgdGC0LUK4paBYmVsb3cK4paBQXBwCtGJ0LUKfV8KYnVtCnZpcgrDqWVzCuKWgXJlY29yZAp0YWluCmxlbQppdGFsCuKWgWltcAplZ28K4paBb2QK4paBcmVjZQptaXQKZmZpYwpzdGFja292ZXJmbG93CmlldmUK4paB0JcK4paBbm92CtGG0LUK4paBSW50ZXJuCmJ1CuKWgXN1Z2cK4paBbG9vcApyaWRlCuKWgSQoCuKWgXN1cGVyCnJpZArQvdGL0YUK4paBUGVyCuKWgWRvbQo9Jwp1dHNjaApsZW4K4paBd3JpdGUK4paBaW52Cm91dGgK4paBSGVyCuKWgXllYXJzCuKWgW9yaWdpbmFsCmVnYQriloFTdGUK4paBc2VlbXMKw6lnCuKWgW5leHQKZWRlcgriloFOZQphdmFzCmlmaWNhdGlvbgpFeGNlcHRpb24K4paBRGVyCuKWgXZlCmF0aWMKaGF0CmJyYXJ5CnJldHVybgp1cmNoCmlzaW9uCm1pCm9pbnQK4paBZGF5CmljdGlvbgrDoWwK4paBw6lzCuKWgXRob3VnaAphY3Rpb24Kw610CnVuZ2VuCm91cnMK4paBc2NyaXB0CuKWgWluZm9ybWF0aW9uCuKWgW11bHRpCuKWgVxcCnN0ZXIK0LrQtQpBQwpjaWVzCuKWgWRpc3BsYXkKb21hbgpUaW1lCml1cwopKTsKdHJlCuKWgWxpbQphdGVseQrDqWQKaXN0ZQriloHRgdCwCnBvc3QKdWVsCmltZwriloHRhwrRgdC60LAKZWxkCnBwZXIKdWxhCuKWgWdlbmVyYWwKQWwKRm9ybQriloF1cG9uCnpvCmFtZW50ZQriloFwcm9tCuKWgcO8CmxleAriloF0dXJuCuKWgdC80LUKZW50aW9uCtC70LXQvQriloFhZgppY2xlCtGB0YLQsgriloFGaWwK4paB0KQKYXZhc2NyaXB0Ck1hbgphcmEKd2FyZQphbGlnbgphbmdsZQriloFTYwp1bmljCuKWgWZyYW4KVW4KemkKbWV0CkFkZAriloFwdWIK0LrQvtCyCuKWgWdlbgriloFwb2QK4paBc3VtCuKWgWhhdmluZwriloFhdmVjCnNsCuKWgWZpZwriloFSZXMKRGF0ZQp1bGVzCndpdGgK0YHQutC40LkKZ3UKRVQK4paBYnJvCnJpZQphcHMKZW5kaW5nCm1haWwKb29rCuKWgXN1Y2Nlc3MKYmVyZwriloFkZWIKZWx0YQooKWAKZW50aWFsCmZyYW1lCktleQppbm4K4paBc2ltcGxlCml2YWwK4paBY2FyZQriloFXZWIKIikuCj48LwriloFkYXRhYmFzZQriloFOb3cKSW5kCuKWgdC80L4KY2h0CmJhbgpyYW0KZXF1YXRpb24Kc2tpCmllZgpsaW0KR2V0CuKWgXRyZQphdGVuCmJlZAriloFKZQriloFyZXN1bHRzCtC70Y4K0YLQtdC70YwKZGIK4paBYml0CmJvZHkKQXJyYXkKbXUKcHJlc3Npb24K4paB0YHRgtCwCm9ueQppZmYK4paBYmFyCuKWgUFyY2gKYmVycwopewriloFNb24K4paBZG9pbmcK4paBcHJvZgriloFpbnN0YWxsCuKWgXBvc2l0aW9uCmVtYQriloF9KTsKUGF0aAphbGkK4paBJiYKbGV2CuKWgWNhbm5vdAriloFNYXkKaW5zdAotXAriloFjb3VuCuKWgWFuZwriloFhcHBlYXIKY29yCmNpw7MKaWRlZApxdWVzdGlvbnMKYXR0ZXIK4paBUGEKc2VsZWN0CuKWgXByaW5jaQpFdmVudAriloFzaWRlCuKWgW1lbQriloFKYW4KYXJpbwriloF3aXRoaW4K4paBVmFsCm9kZXMKaWRkbGUKdXJhdGlvbgpicmEK4paBZGF0ZQpbXQriloFlbnRyZQppbGkKUG9ydGFpbApkb2NzCtGB0LrQvtC5CkVsZW1lbnQK4paBbWVzc2FnZQriloFuYWNoCuKWgWR1cmluZwriloFncmEKZXR3b3JrCuKWgUJ5CuKWgXRlbGwKZXRlCn5cCuKWgWJpcwriloFwdQriloFyZWQK4paBdGhpbmcK4paBc29ydAp4aW0KaXJlcwpVc2VyCmlvZAriloFFc3QKb3NlZApvdXRlCuKWgUxlcwriloFzZW50CnJpYnV0ZQp1dGVzCmlzdG9yeQriloFzZXJ2aWNlCic7CmZpZWxkCuKWgUlOCmVuc2lvbgpyZWwK4paBZ29pbmcKd2ViCkNvbnRleHQK4paBbGF0ZXIKdWsKbGF5b3V0Cm9uYQrDoXQKLS0tLS0tLS0tLS0tLS0tLQriloFleGFjdAphbmRvbQriloFzaWUKSUkK4paBVGhleQptZW50ZQppYmxpCuKWgWZpbmUKVVQK4paBZGV2ZWxvcAriloFFaW4Kc29mdApvZmYKU2V0CuKWgWF6CmV0ZXJzCmlsZGVyCnBsZXMK4paBc3BlY2lmaWMK4paBb20KZXJyb3IKZW50bHkK4paBZmlsbQp1Y2sKYWlucwphY2nDs24KZ2VzCtC20LAK4paBdGhpbmdzClNoCuKWgXRob3VnaHQK4paBYWRkZWQKZGVwCtGB0LrQvtCz0L4K4paBTGkKaWxzCnluYwriloHRgtC+CnJpZXMK4paBY3UKY2hlbgpJT04K4paBRGVzCnVsdGFkbwppcnQK4paBYmFzZWQK4paBbW8K4paBZGVzdApwbmcKcmVlbgriloFydW5uaW5nCmFtbWEKb3VkCuKWgXJlZmVyCmlvdXMK4paBSnVsCuKWgXNlYXJjaAphbGQKZWRlCuKWgXdyb25nCkFuCuKWgXVudGlsCnNpdGUKYXllcgriloFvbmNlCmFycgriloFhZ2FpbnN0Cj09PT0K4paBc291cmNlCmFybgphcGkK4paBcmVwcmVzZW50CuKWgWFmZgriloFzZWluCuKWgWFsbG93Cm9ybWFsCmVuZGVkCuKWgWNvbnRyb2wKbWF0aGJmCmNvbWUKY3VyCmVuZG8Kd2EK4paBdXBkYXRlCuKWgWluc2lkZQriloFyZWFzb24Kb21lbgriloHQstGLCkRlCuKWgdGY0LUKc3cK4paBc2V2ZXIKT2YK4paBaW5zdGFuY2UK4paBbWVyCuKWgWVmZmVjdApjb2xvcgp1Z3VzdAppbHQKZGVzCml0egp1bGF0aW9uCm5pZQriloFXb3JsZAriloFzaW1pbGFyCnltYm9sCmhpbmcK4paBbWFyawpTdGF0ZQriloFjb250ZW50CuKWgW1lYW5zCmFtZWQK4paBRW5kCk5ECmNvdW50CuKWgUluc3QKcGVydHkKY3RvcgriloF7XAriloFMZXQK4paBIT0K4paBZ2V0dGluZwp1dGgKdW1iZXIK4paBQ29uc3VsdGFkbwpzY2hhZnQKbGV0ZQriloFXaWxsCuKWgUVtCmhlYWQK4paBbGVnCtC90L7QvApPcgphcm0KcG9uZAriloFDaHJpc3QK4paBYXJvdW5kCuKWgWNsZWFyCuKWgWhyZWYK4paBU2VlCicpLgriloFjcmVhdGVkCuKWgWJ1dHRvbgppbmluZwriloFjbGljawppYW0KcGxpdApGb3IK4paBcG9saXQK4paBc2VlbQriloFsaWZlCtC90L7QsgriloFpbnRlcm4K0YnQuApzZWwKc29jaQriloFzdG9yCmNsZQplYXJjaAphbmRyb2lkCn1eewriloFlaXRoZXIK4paBZmV3CuKWgWluaXRpYWwKbGVuZ3RoCnJpYQpzcWwKd2lrCuKWgcOpdAp1ZXIK4paBdmFsaWQKQW5kCmluY2x1ZGUKdXJ5CuKWgXN1cwppcmVkCuKWgUFmdGVyCuKWgWR1ZQriloFiZWkKb3VyY2VzCuKWgU5vdgpBY3QK4paBQ29udAriloFicmVhawplc3RlZAriloFhY3R1YWxseQplbHNlCnRtbApyZXIKb25lcwriloFkZXNpZ24K4paBcHJvcGVydHkKcGhpCmFsaXR5Cm9jaAppc3RzCuKWgcK3CnVkaW8KQUIKYWxhCmlvbmVzCtGE0LgKZmluZApBcwriloFjdXN0b20K4paBYW5uCkVTCk9UCmxhbWJkYQriloFpZGVudAriloFvcmdhbgriloFDZW50CuKWgUNoYXIK4paBb3MK4paBaGFyZArRgNC+0LIK4paBLz4Ka28K4paBZXhwZXIK4paBc2VwYXIKeWwKb3VybgriloFkZXYK4paBYXVjaAriloFibG9jawpib29rCuKWgW1hcAppbGxhCuKWgWNvbXB1dAriloFzcGFjZQpyZXN1bHQKKX0K4paBZWNobwpjb25maWcKaGkK4paBbGFyZ2UK4paBd2lkdGgK4paBR28KbWF0CuKWgWRpZmYK4paBa2luZAphbmNlcwp5bmFtCuKWgWNvbG9yCkludApzb2wK4paBcGkK4paBY2hhcmFjdGVyCm9tZW50CuKWgXJlc3BvbnNlCmlnbWEKd2FyZHMKYXJyb3cK0YHRgwp0aWVzCuKWgcO8YmVyCkltYWdlCnlkCuKWgdC/0LXRgNC1CuKWgW5vZGUK4paBaXRlbQphY2hpbmUKaW1hCuKWgXZhCuKWgWFwcHJvYWNoCuKWgXdlcgriloHRh9C1Ck9uCm9sbG93CtC+0L3QsApjdGVkCnVyZWQKQ29udHJvbGxlcgpsaWVkCuKWgWpvCuKWgWRhbAp1bmsK4paBw64Kc3RhcnQKb2xhCuKWgWNvbXBvbgpJQwpiaXQK4paBYmFzZQrQv9GDCuKWgWlkZWEK4paBZGlyZQriloFyYWQKZ3JvdXAK4paBV2l0aApzZXJ2ZXIKc2lkZQpzaW5nCuKWgWRpZXMK4paBbmVhcgriloF2b29yCuKWgWFyZ3VtZW50CuKWgX0sCuKWgWxhbmQK4paBbmFtZXMK4paBb3B0aW9uCml0aHViCnBwZWQKYXVnCuKWgWxpbmtzCuKWgWZ1bGwK4paBc2l0dQriloFjb25zb2xlCuKWgWV0YwphdXgK4paBQ29yCmljcm9zb2Z0CuKWgWNhbWUKbG9jYWwK4paBa25vd24K4paBbXVsdGlwbGUKYW5ndWFnZQriloF0b3RhbApvbG9neQrDpHQK4paB0KUK4paBZnJlCuKWgXRlbgppZGVvCuKWgWJlcwp0cnVlClF1ZXJ5Cm9tbQriloFBcnQK4paBa2VlcAriloFVbml2ZXJzaXR5CnJlYXRlCnBwb3J0CuKWgXB5dGhvbgp0cmEKZWN0b3IK0YDRlgpvcGgK4paBY29uYwriloFmb3VyCnZpcm9uCuKWgXZpYQo/IgppbWFnZQpvbGwK0L3Ri9C1CuKWgWNvbnRleHQK4paBc2VtCi5fCuKWgWVuZwptYXIKQUQK4paBbW9yCuKWgUNhbAriloFjZWxsCmltYWwKQVRFCuKWgWluZgrDtm4KdWZmZXIKc3EKLi4uLgriloF6dXIKV2l0aArRgNCw0L0KY2huCuKWgWRvb3IKY29udGVudAriloFtaXNzCuKWgXNpbXAKw6FyCmlyYQriloFoYXQKVGVzdAriloFjZXJ0YWluCk5TCuKWgWNobwriloFhZHYKd2hlcmUK4paBbG9va2luZwriloF0aW1lcwrQvdC40YUKdXRvCuKWgcOJCmNhbgpob3N0CuKWgSgqCmxvYXQK4paBbmljaHQKRmllbGQKYnVyZwpjb25zdAphZGVzCuKWgU11cwriloFub3RoaW5nCuKWgWluY3JlCuKWgU1pbgriloFwb3dlcgriloFBbWVyaWNhbgpsbgp2YWxpZAp1bmdzCuKWgU5hdGlvbmFsCuKWgVNhbgriloFZb3JrClJlcXVlc3QKY2hhcgriloFaZQpidXR0b24K4paBYWxnClNPTgriloFhcAp1ZmYKYWJpbGl0eQrQtdC8CuKWgWFueXRoaW5nCmVsYQooKSkK0LHQsAphbXBpb24K4paBcG90CuKWgWZ1dAphaWxhYmxlCuKWgXByb3AKIl0K4paBbGVzcwpsYWcK4paBQXVndXN0Ckl0CuKWgXBsZWFzZQriloFzdHlsZQriloFBbHNvCmJ0CuKWgXByb2JhYmx5CuKWgU9uZQriloFwb3NzClVJCnVpdAriloFXZXN0CmhuCitcCkJ1dHRvbgpqc29uCmVycgpyYW1lCmRvbQppbG9uCmFsZgriloFjbGllbnQK4paBY29udGludQp4bWwKcGVjCmFkb3IKbHMK4paBaG93ZXZlcgriloFBbnkKw6RuZAptYXRocm0K4paBdXJsCuKWgWJvb2sK4paBZ2wKaXZlcwpnaQriloF0cm8K4paBVVMKcG9pbnQKb3BlbgriloFjdXIK4paBZXJhCuKWgXBhcnRpY3VsYXIK4paBSFQKb290CmVsbG8KbG9iYWwK4paBYWN0aW9uCuKWgUludAriloFpbmNsdWRlCuKWgWVsZW1lbnRzCtC90LDRjwphcmRzCuKWgUJsCuKWgWh1bQpmcm9tCmNoYW5nZQriloFmdW5jdGlvbnMKaGVuClNlcnZpY2UK4paBaGVpZ2h0CuKWgUxhbmQKaWFzCmdzCmnDs24K0LvQvtCyCm5vZGUKLuKAnQpoYW5kCuKWgdCx0YMK4paBYW1iCuKWgUx1CuKWgXRocm93CuKWgW1vdAriloFBY3QK4paBd29ybGQKX1wKYmFzZQriloFDbwriloFhcmNoCuKWgSMjIyMKZ2VkCnByaWwKb2xkZXIKTW9kZWwK4paBc2V2ZXJhbApsaWUKY2hlY2sKXXsKY29ucwriloFUcmEKaGVjawriloFsZWFzdApkb3duCmVicnUKRGVmCnBhcmFtCmlzY2hlcgriloFjYXMKQ0gK4paBYWRkcmVzcwriloHRgNCw0LcKdWZlbgp1cm9wZQrQtdC5CuKWgWJvdW5kCkNPCuKWgUFuZwriloFNYQpJbmRleApjb3JlCm91Y2gKYXRhYmFzZQpyaWJ1dGlvbgpkb2N1bWVudApMZQp9X3sKdmVybgriloFzdGF0ZW1lbnQK4paBQnJpdApvbm8KcHNpbG9uCuKWgWxldmVsCuKWgXByb2R1Y3QKSVMK4paBY291cnNlCuKWgU1yCj4NCuKWgWJhY2tncm91bmQK4paBcmV0CmVyaW5nCm1vc3QK0YHRjNC60L4K4paBdGhyZWFkCml0aW9uYWwKaXRlcwpQbAriloFkb3MKZ2EKZGF5CuKWgUdlbmVyCuKWgXR3CkFkCiI+PAriloEoJAriloFtb21lbnQKdGl0bGUKY3JlYXRlCnZlcnNpb24KTWFuYWdlcgriloFmdXIKcHBpbmcKaWpuCtC+0YEK4paBcmF0aGVyCnB0ZW1iZXIKT1MK4paBc2l0ZQriloFjYXVzCmFuaQriloFob21lCtC80ZYK4paBc2hvcnQKcGEK4paBbGVhZAppc2hlZApjaW5nCm9yZGluZwriloFwcm90ZQrRgdC70LUKTEVDVAriloFkaWRuCnBvc2l0aW9uCiIsIgooKSwKdHJhbnMK4paBbG90CuKWgdC+0LQKQVMK4paBc2F0CuKWgXBvaW50cwpnaXRodWIKc3R5bGUK4paB0LPQvtC00YMK4paBRGlzCnBvbmVudApvbWV0CnplcgpVTEwK4paBcGEKQVAKYWNlcwriloFVbml0ZWQKYW1hCmV0eQpDb2xvcgriloFlbm91Z2gKVVMK4paBbGVuZ3RoCigpKTsKXntcCmZ0eQpCb3gKYXB0ZXIK4paBY29tcGxldArQvdC40LoKbWF4Cm9iamVjdAooewppbWd1cgppdGl2ZQp1bmNoCuKWgVN1YgplbmRlCtCz0YMKYXRlZ29yeQrRgtGLCmlhbm8K4paBdXBkCuKWgUF1c3QKfXtcCnRvcApsYXMKcGlzCmluZXNzCuKWgXsNCuKWgdCVCkdyCuKWgUFTCuKWgdCy0LUKdGhlcnMK4paBZGVmaW5lZAphemlvbmUK4paBb2ZmaWMK4paBYXV0b20Kw7xuCuKWgWJyb3cK4paBc2VydgriloFyZW1vdmUKaXJvCuKWgUJpYmxpCkVECuKWgXdob2xlCuKWgdGICuKWgUphdmEK4paBenVtCnVhCnBtCmRldgrQutGA0LAKb2xkcwriloFXYXIKw6RuCnBhc3MKdXoKWyIK4paBdHJpCmlzZWQK0YXQsAriloFtZW1vcnkK4paBUG9ydApvcGVyClVwCuKWgVRoYW5rCuKWgU1pY2gKeWNoCmJvYXJkCtCx0YMKSW5zdAriloFiZWdpbgppbmF0aW9uCuKWgU1vZApfLAriloFEZW4Kb3B0aW9uCuKWgWNvbnN0cnVjdAriloFKdXN0Ck1hcApydW4K4paBcmVzcGVjdApoYW0K0LzQsNC9CmltZWRpYQriloFhcHBseQpjcmlwdGlvbgptYWluCuKWgdCa0LAKb2lkCkNvZGUKfTsKSW5mbwriloFmb3JtYXQKTG9nCuKWgdGB0YMK4paBbGF0CnV0b3IK4paBcmVmZXJlbmNlCuKWgWNhbGN1bApvbm4KTG8KaW5mdHkK4paBYWxvbmcK4paBxI0K4paBdGFzawriloFldgp0aGV0YQpyYXMKam9yCuKWgdCx0L4K4paBcHJpbmNpcApNeQriloFlaW5lcgriloFFcwpvbWIKcXVhZApeey0KdW1wCuKWgXRpbGwK0LTRlgriloFsb29rcwriloFvawrRhtCwCm51CkZpbAriloFzb250CuKWgU1lZAphZ3VlCuKWgWNvc3QK4paBU2ltCuKWgWNvbW1lbnQK4paBKFwKZWdlbgriloFwYXJhbWV0ZXIK4paBRnJhbmNlCnJlcAriloFUSAriloF5ZXQK4paBYXdheQriloFjaXJjCuKWgUFQSQplbXAK0LLRlgpMYXlvdXQK4paBbGluZXMK4paBUGFydAplbXB0CuKWgUJpCuKWgW1pbmQKa3kKZ2luZwriloFyZXBvcnQK4paBQWRkCtGA0L7QtAriloFyYW5nZQpjaWFzCmxpcAriloFLYXIK4paBQ29tbW9ucwpnZXJ1ZmVuCmFmZgpzZWMK4paBaHRtbApsaWcK4paBd2luZG93CmluaXRpb24KY2lzCuKWgXV0CmVsbgriloFhdXgK4paBbmVnCkhhbmQK4paBKTsK4paBYW5hbAriloFmcmkK4paB0YHQuApldGNoCm1kCnBhZ2UK4paBbGlicmFyeQriloE6PQpST00KWW91CnNwYWNlCuKWgWR1cmNoCuKWgWhvc3QKYXZlbgriloFGaWxlCmFsbGUK0YLQuNCyCuKWgXBhcArRgdGC0LLQvgptYXJrCuKWgW1haXMKZXJtYW4KU2l6ZQrQtdC6CuKWgdCc0LAK4paBaXNuCuKWgWNvcHkKc3RlbgpyaXZlcgriloF3ZW50CuKWgWphdmFzY3JpcHQK4paBc2FtCuKWgWZyYW1lCuKWgXZpCuKWgXByZXZpb3VzCnJvZHUK4paBbWV0aG9kcwriloFuZWNlc3MKTkEKY2tldAriloFvcHQKTG9jCmhvdwriloHDrm4Kc2hpcAriloFpdHNlbGYK4paBUGxlYXNlCmllbmUK0LLQtdGACuKWgTw8CuKWgW1pbGwK4paBdHJhZApwYWNlCuKWgUhhcgppdGVuCndpc2UKd3JpdGUK0YbQuNC4CtGA0YsKTGluZQpvbG8K4paBYWNjZXB0CmhlaWdodAriloFlbGVjdAplbGxhCuKWgXDDpQpTZWxlY3QK4paB0LvQuAriloFcPAooKAriloFJRApvcHMK0LLQsNC9CmnDswpUUArCuywKbmVjdGlvbgpwYXJlbnQK4paBTWFnClRhYmxlCk92ZXIK4paBbmV0d29yawrRgdC/0L4K4paBYXNzaWduCmlnZ2VyCmlybQopYApvdHRvbQpiZXRhCuKWgWRlbGwK4paBYm9keQriloHQtNCwCuKWgVlvdXIK4paBZnVlCuKWgXBhY2thZ2UK4paBbGlnaHQK4paBKioKTVAK4paBY291Cnllcwo6XAriloHQpwriloFtZW50aW9uCmVuc2NoCuKWgWRlZwriloFjb252ZXJ0CuKWgURhdgphZHQKUmVzdWx0CnRob3VnaAriloFidXMKeHkK4paBc2VlbgpBbGwKcHVibGljCml2ZWx5CuKWgVJlYwriloFIaXMKc2ltCuKWgWbDtnIK4paBaGlzdG9yCuKWgXNldHQKcmF0CmFibGVkCuKWgcK7LApnb29nbGUKV2ViCsOpbAriloF0aXRsZQriloFKYW51CtGY0LAK4paBdG9vawppZGVuCnN6CuKWgUdldAriloFvYmplY3RzCuKWgWNvbW1vbgriloFjaGFuZ2VzCuKWgUxvbmQK4paBZXh0ZXJuCuKWgWp1CklzCuKWgWF2YWlsYWJsZQp0cmkK4paBbcOhcwpvc2EKQmUK4paBRGF0YQp1cmFsCuKWgWhvbQriloFhY2NvdW50Cm9vCuKWgXBlcm0KcmVzcG9uZAp5dAriloFzZW5kCuKWgXJldHVybnMKaXZpZAriloFleHBsYQrDrW4K4paBbm9yCklmCuKWgUZyb20K4paBdGFyZ2V0CmZlY3QK0LXQvdGCCuKWgXVpdAriloFKbwriloF2YXJpYWJsZXMK4paBc2VyaWVzCuKWgWZ1bmMK4paBaGltc2VsZgriloHRh9CwCmFudGkK4paBYWNoCmlhbG9nCuKWgXN0ZAphZQriloFmb290CuKWgXVudGVyCmdyZXNzCk5vdApyYWQKZsOpcgriloF1dGlsCm9yZW0K4paBc291Cm9wdAriloFvZwriloF1bWEKaXRhcgriloFPawrDvGNrCnNxcnQK4paBYW50CuKWgXdlcmRlbgrDpXIKfSk7CuKWgVBhcmlzCuKWgWV4Y2VwdGlvbgriloFkZXRlcm0K4paBVm9sCuKWgVNhbQriloFlc3MKbGllcwppb25pCm9kaW5nCmlkZ2V0CuKWgXByaQriloF3aGV0aGVyCuKWgdC/0L7QtAriloFudW1iZXJzCuKWgX4KZXZlbnQK4paBc2hvd3MKYXR1cmVzCuKWgWhvdXNlCuKWgWZhY2UK4paBc2nEmQp2aXJvbm1lbnQKdmFuCuKWgWluY2x1ZGluZwriloE8LQp0aW1lcwpub3cK4paBcHVyCmlmaWVyCuKWgWVtcAriloFjbGEKbW9uCuKWgURhcwphZHkK4paB0LLRltC0CuKWgdGGCmFib3IKT1NUCuKWgWJhbmQK4paBw7oK4paBZXhhY3RseQppZXJ0CmF2aWcK4paBcmVkdQriloFTRQpsaXNoZWQKQnUKTWVzc2FnZQpjZWxsCmZ1bGx5CuKWgXN2CuKWgW1ha2VzCnBvbAriloFyZXF1aXJlZApmZXJyZXIK4paBcGVycwriloFtaQpGSQriloFQYXVsCuKWgVVJCuKWgUJlbAppbmMK4paBY29udGFpbnMKT3V0CmFzdXJlCnB1Cm90bwriloFnYW1lCnpuCuKWgVdoeQpvcml0aApiaWcK0LrQuNC5CnNpZ21hCuKWgXF1aXRlCuKWgWplZApyZWMK4paBU1FMCtCx0LUK4paBTWFydAp5YQriloFzY2hvb2wK4paBc2ltcGx5CuKWgXZvcgriloFkb3VibGUK0YDQsNCyCuKWgVN0cgppZW0K4paBYWxidW0K4paBcmVzb2wK4paBZGVpCuKWgVdpawriloFhdwp1bWIKb2xzCuKWgSovCuKWgXplCuKWgWFuaW0KLz4KcmlzCnJlc2gKTm8KaXF1ZXMKY3VycmVudAriloFwZXJpb2QK4paBQXByaWwK4paBc3RvcmUKJywnCuKWgVNldAo9ewphY2hlZAriloFNYWwK4paBUGFsCmFudGVzCmF0ZXJpYWwK4paBd29ya2VkCmxlcQpvcmVmZXJyZXIK4paBaGFwcGVuCuKWgWJveApuZXkK4paBY2xvc2UK4paBZ3JhbgriloFsaWUK4paBaXIK4paBZXhwZWN0ZWQK4paB0LTQu9GPCmNsaWNrCsiZaQriloFwYXJ0ZQpvZ24K4paBRm9ybQriloFtZW1iCuKWgXBsYW4K4paBdGVhbQpdWwriloFjb21tdW4Kb3JyeQplbmN5CmdsCmluYXJ5CmNkb3QKXlwK4paBRmlyc3QKYW5kZXIK4paBRGVjCnJlcXVlc3QK0YHRgtCy0LAK4paBc3RydWN0dXJlCuKWgXx8CuKWgUNvbXAKYWN0b3J5CuKWgU1pbAriloFTb21lClN0cmVhbQriloFhc3N1bQp1ZW4K4paBd29yZHMK4paBU2VwdGVtYmVyCuKWgdCa0L4K4paBZGF5cwpvcmllcwrRgdGC0LDQsgpzbQp2aW4KcGFydGlhbAriloFwYXJlbnQKb2oK0L3QuNC4CiEiCnVnaW4K4paBV2luZG93cwpFZAo6fQriloFxCuKWgWJlbgppYW5hCuKWgWxhYmVsCnN0YXRlCnV0ZWQK4paBKCkK4paB0YHQstC+CuKWgWVkaXQKdXJpbmcK4paBTlMK4paBSmFocgriloFwcm92aWRlCkhlCuKWgVllcwphbmVsCmVuYW1lCuKWgURvbgppc2sKZ3JhCmVsaWoK4paBcm9vdAoqLwriloFGcmUK4paBTW9yCnVzZWQKcmFuZ2UK4paBdGFtYgriloFtb2R1bGUK4paBZGlyZWN0b3J5Cm91bmRzCkFjdGl2aXR5CuKWgW11CmluZm8K4paBZnJlZQpvcmdlCnRhYgopPQpsYW5nCuKWgdC+0YEK4paBRlJPTQriloFlbnRlcgriloFiZWNhbWUKaWRhZQrRhdC4CuKWgVN0YXRlcwp2ZXJzZQriloFleHBsCnludApVTgplZQplbmRlbnQK4paBbWFraW5nCuKWgSIkCnVuaQpxdWVuY2UK4paBbHVpCkhUCuKWgXVzZXMKemllCm5pYQpDb250ZW50CuKWgUNvdW50CuKWgXN0YW5kYXJkCkVOVAriloHQutC+0L0KZm9ydAphZGFzCtC30YMKU3lzdGVtCuKWgVN3CuKWgWV2ZXIKTE8K4paBY29ycmVzcG9uZAriloFQbwphcmdpbgrQutGCCtGW0LkK4paBcmVtYWluCmNpbwriloFhY3R1YWwK0YHRgtGDCuKWgXNpbmQK4paBUGUK4paBY2hhbmdlZAriloFOb3RlCnNraWUK4paBZmFtaWx5Cml0w6AKY29zCnR4dAprZXIKY2VlZAriloFhcnIK4paBY2FtCml6ZXIK4paBRGFuCmhlbAppY3VsdApIUAppbGVyCuKWgVNhbAriloFjb25uZWN0aW9uCnVzaW9uCmtuClJJCuKWgXZvbQpMaXN0ZW5lcgriloHDtgriloFkaW0K4paBcHJlc3MK4paBZXNjCuKWgVRyeQphdGFsb2cK4paBdGhhbmtzCkRPCuKWgXdyaXR0ZW4KZGlyCnJldwriloFmaXJlCuKWgU5hY2gK4paBw6EKZW5jCuKWgW9yaWdpbgriloFOb3ZlbWJlcgriloF9OwpDb3VudAriloHQl9CwCuKWgWdyYXBoCuKWgW1pcwriloFFeHRlcm5hbAriloHiloHiloHiloHiloHiloHiloHiloHiloEK4paBb3B0aW9ucwriloFVUkwK4paBcGhwCuKWgWludGVncgpDb25maWcK4paBVGV4dAppbm5lcgriloFjcml0CizigJ0K4paBdG9nCiQkCm5vZgriloFzZXMKw7xocgriloFTaW5jZQpEZXMKdWJlCuKWgXNlY3Rpb24K4paBZ2kKZm9yZAriloFBc3MKYWluZXIKdHRwCuKWgWJlaGF2CnBvcnRzCmRyYXcKVGhpcwpyYW5jaAppbmRpbmcK4paBZXN0YWIK4paBb2J0YWluCnJpY2gKbGljaXQK0LXQsgriloFxdWFsCuKWgXphCuKWgWhhcgriloFmYWMKYWFyCmpldAppY2xlcwriloFBdXMK4paBaG9yCuKWgXJlbW92CuKWgXdpZQpDbGllbnQK4paBbmF0dXIKaGlwClN1YgriloFyYW5kb20KREYK4paBYXJlYQp0YWcKUHIK4paBSXRhbAriloFyb2t1Cm5vZm9sbG93Cip9CuKWgW90aGVycwriloFsaW1pdAriloFzaWwK4paBc2F2CuKWgW9mdGVuCuKWgXJlbmRlcgpEQgriloFNYwriloF6aWpuCtC20LXQvQriloF0YWcKbWluZwpsaWNoZW4KcGFjawriloFBZwriloFzZW5zZQpwZwpNZXRob2QKYWdlZArDoWcKxYJhCuKWgWludGVyZXN0CuKWgWFzc29jaQp2b2x1dGlvbgriloFlbXB0eQppY2hlCuKWgWdybwriloF0eXBlcwriloFTaWUKSW50ZXIK4paBbm9yZWZlcnJlcgriloFnaXZlcwpoYWwK4paBc2F2ZQriloFmb250CnJ1Y3Rpb24KU2NyaXB0CuKWgWFsbGEK4paBc2F5cwriloFmdQphcGUK4paBbGFuZ3VhZ2UKaWdlcgriloFLaW5nCmJvcgp1dgriloFzaGFsbAriloFFdXJvcGUK4paBZWluZW0K4paBd2F0ZXIK4paBZ292ZXJuCmFuegphdG9ycwriloFtb250aAp5ZQriloFpbXBvcnRhbnQKYXR6CmZpcnN0CuKWgVRyYW5zCuKWgU1hZAriloFicmEKaWthCuKWgVNhaW50Cm9yaWEKa3JlCmVtZW50cwriloFCZW4KbGF2CuKWgWFkbWluCuKWgUhlbgpyaWwK4paBU20KY2F0CuKWgVJlZmVyCuKWgdCoCuKWgXByYWN0CuKWgVBhdAriloFHcmUK4paBeW91bmcK4paBSW50ZXIKb21hCnRlZ2VyCmliaWxpdHkK4paBcGFyYW1ldGVycwriloFldmVyeXRoaW5nCmRhdAp1cm9wCm9sZWFuCuKWgXJldHVybmVkCuKWgUNsYXNzCmFjeQojIyMjCuKWgXDFmQriloFmb2xkZXIK4paBa29uCuKWgWd1ZXNzCmd0Cmplbgphbm5lbAppY29uCuKWgWNvbWIKcmljdAriloFoaWoK4paBYXV0aG9yCnNlZQpoZXJlCnN0cmEK4paBZW50aXJlCuKWgWRpcmVjdGx5CnJhZnQKaGVldAplc3RlcgriloHQvNC4CuKWgW1hc3MKdW50dQriloF1c2VycwpjaGkKUEUK4paBY29tcG9uZW50CkNsaWNrCkF0dAriloFzb2JyZQphbmRzCuKWgUhvbAriloFTYW50Cm9yaQriloFzdWEKc3RkCmVudGljCkNDCuKWgWZpbHRlcgpTUUwK4paBR29kCkF0CuKWgdC80YMK4paBcGVyZm9ybWFuY2UKZGVsdGEKYW5kZQphbWVyCtC00YsK4paBY3VsdAriloFOb3IKYnV0CuKWgWxpawoqKioqKioqKgrRgdGC0LLQtdC9CuKWgWNvbW1lCuKWgWRyCmltZXIKb3JkaW4K4paBY29uZGl0aW9uCmVzdGUKKFsKRkYK0YLRjNGB0Y8KaW1vCnJhYgrRltC70YwK4paBaGFsZgplYWNoCkRpcwriloFyb3dzCuKWgWhvbgriloF0b2dldGhlcgriloHImWkKbWVkaQphZ24KYWxsZWQK4paBdmlsbApJTkcKaWRkZW4K4paBZHJhdwp5bnRheAriloFhdHRlbXB0ClVSTApwb3NlCuKWgWluZGljCtC90LjQutCwCuKWgUVuZ2xpc2gK4paBZMOpYwriloFuZWVkcwriloFub3JtYWwKdXJ0CuKWgdC90L4KfX1cCmxhc3QK4paBRmluCuKWgUZlYnJ1CmlsYQriloFjb3VudHJ5CuKWgWZpZWxkcwriloFtYXgKbMOpcwpvd2llCuKWgWRldXgK4paBYnVpbHQK4paBTWFpbgriloFjYW1wCml2bwppdmEKaWN5Cnppb25lCk5vZGUK4paBOikK4paBYW1vbmcK4paBT2IK4paBY2FzZXMKaGFwcwpzZXJzCmFydGVyCsWbY2kK4paBaXRlcgriloFuYW1lZApleGVjCuKWgXNlYXNvbgp0b3QKPT4KZ3JhcGgK4paBbmlsCmFjaW9uYWwK4paBTlVMTAriloFzcGVjaWFsCtGB0YLQtQpjc3MK4paBXCgKdnMKYWVsCuKWgWNpdHkKb3ZhCuKWgWFydGljbGUK4paBU291dGgKQWN0aW9uCsOnYQpzcHJpbmcKaXR1ZGUK4paBY29tcGxleAriloHRh9GC0L4KYnVpbGQKZ2FtbWEK4paBRW50CmllcnMKJy4KY2FyCmFwYWNoZQppbmdlbgpJbnB1dAo64oCJCuKWgWR5bmFtCmFsbHMKc2hvdwp8XAriloF3aXJkCkJhcgphbHRoCm1vZGVsClRyYW5zClJvdwphYmUK4paBbGliCm51bGwKcmFnbWVudAriloFTdGF0ZQriloFsYXcKRnJhbWUK4paBTG8KZ2ViCn0kLgriloFuZWVkZWQK4paBY29udHIKYXJpZXMK4paBc2NyZWVuCnlyCm1tCuKWgXNob3duCuKWgWJhZAriloFjYXN0CuKWgVRlc3QK4paBQXVmCuKWgXF1YW50CmlnYQriloFyZW4K4paBTWFjCuKWgXRyYW5zZm9ybQriloFkaWZmZXJlbmNlCuKWgXRpdApURQriloFzdGVwCuKWgWNhcHQK4paBY29sbGVjdGlvbgppY3Rpb25hcnkK4paBVG9tCnJpZXIK4paBbW92ZQpjb3BlCm9yZHMK4paBZnVydGhlcgriloFjb2x1bW5zCuKWgUxpbgriloFmaXhlZAriloFjaGlsZHJlbgpNUwptbwp1bmEK4paBaW5kaXZpZAp0dHkKYXN0ZQpzcmMKbWF0Y2gKd2kK4paB0YUK4paB0LTQuAriloFvcmQKaXZpbmcK4paBQnJvCuKWgWFsbW9zdAriloFQcmVzCnJlY2kKYXJpbmcK4paBLy8vCtC10YLRgdGPCuKWgXNpZwpsaWdodAriloFSZWQK4paBc3VnZ2VzdApvbGYK4paBw6l0w6kKaXNhdGlvbgrQt9C90LAKTmV3CtGB0YLQsNC9CkxBCnVuaWNpcAriloFmaWd1cmUKbXQKaWFsZQriloFjYXRjaApkZWZhdWx0CuKWgXRlbGUK4paBbWF0dGVyCmNhc3QK4paBUmljaAriloFoYW5kbGUKdmFsdQokLQrQvtCxCuKWgWpzb24KQ3JlYXRlCuKWgWV4YW0K0LDQu9GMCtGO0YIKb3JlZAppZG9zCmFwcGVuZAriloFBcnJheQrQutGBCn1bCnJpdmUK4paBY2x1YgptYW5uCuKWgWVzdGUKZXN0YQriloFHaQriloFKYXAK4paBTmFtZQpDb2x1bW4Kb3Vwcwppc21vCuKWgUNpdHkK4paBY2xhc3NlcwriloFpbmZsCmhsCtGA0L7QvAriloFhZGRpbmcK4paBZmFpbAp4eArDtWVzClNjCnV0aWwK4paBbG9jYXRpb24KbGVnZQphZ28K4paBcHJvcGVydGllcwphYmlsCnZhcwp9JCwKaXR0ZWQKw7NkCuKWgURlbQriloFhc2tlZAriloF0YWIKU291cmNlCuKWgWVycm9ycwpvZ3JhcGhpZQriloHQttC4CuKWgW1hbApzdHJhY3QK4paBZHJvCnJhawriloFub3RlCuKWgXNldHRpbmcK4paBZmVtCuKWgXNhdwppYXIKSEVSCtC10YEK4paBcHJlZAriloFPdXQK4paBaXRlbXMK0LvQsNC9CuKWgXdlcmQKZXJzaW9uCmxpYQriloFzaW4KaWNodGUK4paBZmVlbAriloHQv9GA0LAK4paBb2RlcgpVRQpvY3VtZW50CuKWgW1vZGUK4paBTmEK0LTQtdC9Cm1lcwpmcmFtZXdvcmsK4paBYXV0bwrQvdGL0LwKdWJ5CuKWgXRlbXBsYXRlCuKWgW1lc3MKaWVkZXIK4paBcmVsYXRlZApva2VuCuKWgWZvbGxvd3MKc2VhcmNoCmFtaQriloF3YWl0CmlncgriloFsb3cK0YHQutC40YUK0YHQutCw0Y8K4paBTWFyawriloFpbGwKYW1lbnRvClw8CuKWgWRmCm9zaXRpb24K4paB0JLQuAppc2YK4paBRGV1dHNjaAphaGwKd2FyCml0ZWN0CuKWgXNhbAplbGVuCkJ5SWQK4paBZ3J1CnN2CuKWgXBhc3NlZAriloFhw7EKU2NoCuKWgXNvbHZlCndlaXNlCmF0b3MK4paBbWVnCuKWgW1lbWJlcgplcm5hbWUK4paBY29ubmVjdAppcHMK4paBcm91bmQK4paBXQpuZXMK4paBZGlyCuKWgUxvbmRvbgpkeQpGQQriloFyZWNlaXZlZApyZWV0CuKWgUxvZwriloFTY2hvb2wKYW5nbwriloFUaGVzZQriloFNb250CuKWgWVuZXIKbGFkCuKWgWRlZmluZQpzaWduCuKWgWNsZQpmaWd1cmUK4paBVmlldwp0ZXh0YmYKJFwK0LfRiwpudW1iZXIK4paBZGluCmVsbGVyCm9yaXRobQpmYWxzZQpmb2wKZmZpY2llbnQK4paBSFRNTApsaWNoZQriloFNbwriloFpbnRyb2R1CmV4cAriloFzdHJvbmcK4paBdGh1cwovKQriloFlbGUK4paB0YLQsNC6CuKWgdC/0LAK4paBZG9udAriloFjYXVzZQpOdW1iZXIK4paBaW1hZ2VzCuKWgXNhbXBsZQriloFzY2kKbGlrZQriloFMb3UKZGl2CmFuYwriloFmcm9udApuZW4K4paBbWlzc2luZwphcmlhCnByZXMK4paB0L/RgNC10LQKREkKZmlsdGVyCuKWgU1pdApVUgriloFvcHAK4paBc3FsCuKWgdGA0L7QutGDCmVyZW4KZW1hdArDrXMK4paBSmVhbgrDqWMK4paBY2kKZW5uZQphdGZvcm0K4paBdGFrZW4K4paBT2YK4paB0L3QsNGB0LUK4paBZXJyCk9QCkZyb20KRGVmYXVsdAriloFHZW5lcmFsCndpa2kK4paBZ3JhbmQK4paBZWluZW4KUmVnCkhhbmRsZXIKY29ub20KYW5nZXIK4paB0LHRi9C7CuKWgUxvcwriloFleHByZXNzaW9uCtGI0LAKeWFsCuKWgSQoJwriloFzd2l0Y2gK4paBdmVjdG9yCuKWgVRob20K4paBdmlydApsZWFzZWQK4paBY292ZXIK4paBcmVzcApha28KcmVuY2gKb3RhCkNlbGwKYW5nZWQK4paBKz0KbGFjCnNrYQpuZXh0CuKWgUludGVybmF0aW9uYWwK4paBV2lsCuKWgW9udAppYnIKdXN0cgriloFibGFjawriloFzZWxlY3RlZApjaGVyCuKWgWxpdGVyCnJvb3QK0LvRgdGPCuKWgUxpZmUK4paBaW5zZXJ0CuKWgW1hdHJpeAppc2VzCildCuKWgXBlbApPdmVycmlkZQpyeXB0CuKWgWZvcm1lcgriloFGaWxtCuKWgU5vcnRoCmNsaWVudAriloFuaWdodArRhdC+0LTQuAriloFBdXN0cmFsCuKWgVJldApyaG8K4paB0L/QtdGACmlwZWRpYQriloFleHByZXNzCuKWgXRoaXJkCuKWgW1ham9yCuKWgWdyYWQKb3dlCuKWgWJlbGlldmUKb3VybmFsCuKWgXN0YXR1cwp1bmMK4paBZG91CuKWgUpTT04KdWlzCuKWgXBvcHVsYXRpb24KZW56CuKWgVdpbGxpYW0Kc2YK4paBT2JqZWN0CuKWgWNpbgriloFEaQpjdXJpdHkK4paBT3BlbgriloHQu9C1CmxhcgphZGRpbmcK4paBa29tCn0oXAriloFraWwKdW1lcgoiLz4K4paBZmVhdHVyZQriloFBcmUKY2tzCuKWgUludGVybmV0CuKWgWloCuKWgXN0YXJ0ZWQK4paBZWFybHkK4paBYmVnYW4KVEgKcHl0aG9uCmFzcAriloFGcgriloFjbG9zCmlzdGljCuKWgW11c2ljCuKWgWRpZwriloFpdGFsCuKWgURhdmlkCuKWgXdlYnNpdGUK4paBY29udHJvbGxlcgriloFNZXIKY29udGV4dApwcm9kdWN0Cm9zcAriloHiloHiloHiloHiloHiloHiloEK4paBanVuCnJvd24K4paBQXoKIjoiCuKWgWFhbgriloFEYXRlCm11bHQK4paBYnJvd3NlcgrRgNC10LQKd2hpY2gKUkEKcXVhcmUK4paBUnVzcwriloFzb29uCuKWgVByZQp0YXUK4paBd2VlawriloHQsdCwCuKWgW9jdAriloF0b3duCnJveQriloFlbHMKYmxpYwp1bmRsZQriloFIaXN0b3IK4paBZm9pCuKWgW1vZGVscwrQt9C+Cm9ueW0KUGFyYW0K4paBTWV0CmdlbmVyCmrEhQriloFlc3BlCkNFCuKWgWRldmljZQplbGxvdwriloFkZWJ1ZwrDqXJpZQp1c2luZwrQsNC90LMK4paBKikKdWRpCuKWgU1pc3MK0LrQvtC8CnBvc2VkCuKWgXp3ZQrRltC9CuKWgVJvYmVydAriloFPY3QKbG9wCmphcgriloFhdmVyCuKWgWhhYml0CuKWgTo6CsOkbmcKU3RhcnQK4paBcG93CuKWgXNyYwriloFwYXR0ZXJuCuKWgdCtCuKWgWJpCm90ZXMK4paBX18K4paBc2VucwriloFhdm9pZApleGFtcGxlCnV0dApMYWJlbAp0ZXgKYm9vdAplc3RvCuKWgU1hcmNoCuKWgWVhc3kKaWN0dXJlCkdyb3VwCuKWgWZhdGhlcgriloF1cGRhdGVkCuKWgVZvCuKWgUlJSQpvbWVnYQriloFhbGxlClJlYwp5ZwrQt9C1CuKWgURpbQpuZWN0CuKWgVRvcgriloFkZXV0c2NoCuKWgXdoaXRlCuKWgW5hdGlvbmFsCnBwZQriloFhaXIK4paBcGFzc3dvcmQKZGV0CuKWgWJpZwriloFVc2UKY2FsbAriloFleHRyYQpXZQphbmlhCuKWgWhvbGQKQ29udHJvbAriloFDTwriloHQvNGWCml0aQriloFLZQplbnUK4paBUGFyawrRgtC+0LwK4paBYXV0aAriloFjZW50ZXIKUGgK0YLQvtCyCmlkaW5nCuKWgWFjcm9zcwriloFzb25nCuKWgXBoeXMK4paBbnVtZXIK0YnQsAriloFBbGV4CuKWgXByb2JsZW1zCuKWgUVycm9yCmZvcm1hdAriloFBY2MK4paBc2l4CuKWgWRiCuKWgUNhc3QKb21zCnByb2plY3QK4paBdmVydApjcmV0CuKWgWhlYWRlcgriloFzdHJlYW0KaWRzCuKWgXRvcgriloFzZXB0CuKWgWVzdGltCuKWgWRlY2wK4paBZ2F2ZQriloFwbGF5ZXIKeXNpcwriloHQtNGA0YMKYW1tCtGJ0L4K4paBKCIK4paBYXgKUHJvcGVydHkKdXNyCuKWgXNvbWVvbmUK4paBaW1wcm8KYWRlbgpyb3RlCuKWgdCc0LgKaWgKKyspCuKWgXZpZGVvCuKWgWV4aXN0cwrQutC70LAK4paBY29tcGxldGUK4paBc2Vzc2lvbgriloFjb25zdGFudAppY29zCuKWgXBhY2sKcm9tZQplZ3IKQXBwbGljYXRpb24K4paBeWVzCuKWgWVsbGUK4paBZW1haWwKb3JmCmNhc2UK4paBcG9pbnRlcgriloFyZWdhcmQKc2VuCnN0YXR1cwriloFtZXMK4paBZGVsbGUKaW5ndG9uCuKWgUJhcwopXgpkZXZlbG9wCuKWgWZvcmNlCuKWgWNoYXJhY3RlcnMK4paBY3Jvc3MK4paBZGVhdGgK4paBdGFrZXMKw6lyaQppZ25lCtGH0LXQvQpVUAouOgpUaHJlYWQKanUKaW55CuKWgWRldGFpbHMK4paBeG1sCnRhaXQKb3V0cHV0Cm1lc3NhZ2UKJycK4paBQnJpdGlzaAp2aWxsZQriloFEaXYK4paBVXNlcgpjbQrRh9C90L4KY29sdW1uCmVxcmVmCsOzcgpvbm9tCuKWgVBvc3QKZWxsZW4KQWIKdWx0w6kK4paBcGVyZmVjdAooKXsKdmlzaW9uCmFjdGl2ZQpsaWVyCnJpagpzZAriloFrw7YK4paBbmllCuKWgXJlbGlnCuKWgW90CuKWgW1hY2hpbmUK4paBaGVsZAopJC4KPT09PT09PT0KY2tlcgrQstGLCmJvcm4K4paBcGFzdArRgNC40Y8K4paBRHIK4paBcmVndWxhcgriloFwcm92aWRlZApURVIK4paBdW5pdmVycwriloFnZXRzCuKWgW51CuKWgS8qCm9iZXIKZmluCuKWgW5lbGxhCuKWgWJlY29tZQriloFgYAriloFoaXN0b3J5CuKWgVNvbAriloFSYWQK4paBdGVybXMK4paBZXZlbnRzCmx5bXAKKSkpCtGA0L7QstCwCuKWgWFic29sCuKWgXNvZnQKbGlua3MK4paBaG9wZQriloFzdWJqZWN0CiIpLAriloFjcmVhdGluZwriloF9DQriloFTawriloFmbG93CuKWgdCg0LAK4paBYXNzZXJ0CnpldAriloFGcmFuawpzYQriloFkaXN0cmlidXRpb24KY3UKYmFuZAppenoK4paBam9iCmluZXIKc3RydWN0CsOhawpUTwphdWYK4paBZXh0ZW5kcwriloFHcmEKZGlzcGxheQriloFzaWduaWZpYwpvbmV5CnNvdXJjZQptaWNyb3NvZnQKaW5kZXIK4paBcXVpY2sK4paBd29uZGVyCkluc3RhbmNlCmVsbGVzCsOobWUK4paBY29tcGFueQp1w58KLn0K4paBc2VwYXJhdGUKVU0KSEVSRQriloF3cml0aW5nCml0dXRpb24K4paBR2VzY2gK0LzRjwriloFKYW1lcwriloFERQriloFTcGUKcHJvY2VzcwpTdHIK4paBc3ltCuKWgWFvCuKWgXd5CuKWgWFueW9uZQriloFVcAp1c2V1bQphcm9uCuKWgWRlZmluaXRpb24K4paBYCQK4paBZmF2CnJpYnV0ZXMK4paBUsOpCm9ncmFmaWEKZWxlbWVudApjYXAKcGF0CuKWgUJyYQopKAriloFhY2NvcmRpbmcK0LPQtQriloFwaWUKZWxpCn0iCuKWgWFjdGl2CuKWgXN0b3AKcGF0Y2gK0YLRlgriloFKb3NlCkVuZAriloFwcnplCuKWgWFnZQppdG9yeQriloFQSFAKYWdlbWVudAriloFgLgriloFwcmV0dHkK4paBcmVjb21tCuKWgXN1ZAriloFyZXF1CuKWgdC+0LHQu9CwCmF0aXZlcwriloFIaWdoCsOhegpvdWwKcmVzdAriloFUZXIKdW5kZXIKdGhlcm4KY2VudGVyCuKWgXVyCmxhdAriloFpbnRlcmZhY2UK4paB0LjQvQriloF3aG9zZQppY2FzCmFtZW4KRmlsdGVyCuKWgXN0YXRpb24KUGFnZQriloFhcm0K4paBZXllcwriloHRgNCw0LkK4paBc2V1Cm9saQp3aW4KbGlrCmdleApjaGFuCmlkZW5jZQphcmdzCmFraW5nCuKWgUdvb2dsZQriloFTdHVkCuKWgWhvCtGC0L7RgNGLClN1CuKWgWF1dG9tYXQKw6ptZQriloFjeQpsb3IK4paBc3RhY2sK4paBU0VMRUNUCkFGCuKWgT4+CuKWgWNvbXBldAriloFwYWlyCuKWgWluZ2zDqXMKUmVzcG9uc2UK4paBRmlnCmdyYWQK4paBZG9jdW1lbnRhdGlvbgriloFjYW50CuKWgWFwcHJlY2kKw6VuCuKWgWxlYXJuCuKWgWluZGVwCuKWgXBhbApwYWNrYWdlCmFyZXMK4paBQmVybGluCtCx0LvQuApyZWljaArRkdC9CuKWgXNhdGlzZgriloFyZWdpb24K4paBZnJpZW5kCuKWgUdlb3JnZQriloHQktC+CuKWgSIiCuKWgWRlc2RlCkZhY3RvcnkK4paBQ291bnR5Cm91dgriloHigJgK4paBaW5zdGFsbGVkCuKWgXdhbnRlZAriloFQeXRob24K4paBaW50ZXJwcmUK4paBaW5jbHVkZWQK4paBKCgK4paBYWx0ZXJuCmlzdG8KZ24K4paBYm9yZGVyCnBkZgriloFkdXAK4paBZG93bmxvYWQKanVzdAriloFtZW1iZXJzCmNoaWxkCuKWgXBheQriloFjZXIK4paBbG9va2VkCuKWgWNvcnJlY3RseQphdXRoCuKWgdGB0YLQsNC9CuKWgWVzcAriloFkZXNjCmViZW4K4paBcXVlc3Rpb25zCm1hbAriloFhYmdlcnVmZW4K4paBQmFuZAriloFbXQpCYXNlCuKWgXJpcwriloFmb3J0CuKWgUlkCuKWgXZhcmlvdXMK4paBTGVhZ3VlCuKWgUhhbmQK4paBVHlwZQppcmwK4paBRmUKacOpbgppdHRlcgriloFmYXN0CnN0YQriloFleGNlcHQKaWN6CuKWgUZyZW5jaAriloFlbnZpcm9ubWVudAriloFjb25zZQrRg9GACtC+0LPQvgriloFuZWNlc3NhcnkKdGFyZ2V0CuKWgXJlYWRpbmcKaG9tZQp6ZWljaAriloFlcXVhbAriloFwacO5CuKWgXByZW0K4paBZGlmZmljdWx0CuKWgXVuaXQK4paBcmVwbGFjZQriloFoZWFydAriloF0YWxrCkFNCuKWgVJFCuKWgVBlcnNvbgplbmRlbmN5CuKWgWltbQriloFodW1hbgpkbgriloFLaXIK4paBQXV0Cmtub3duCuKWgWZyZXF1CnN5c3RlbQrQu9Cw0LIK4paBU3oK4paBR2FsCtC90L7QtQpzZWx2ZXMKcmlnaHRhcnJvdwriloHQodCwCj0iQAriloFidWlsZGluZwppbXBvcnQK4paBZmFtCuKWgWRlbGV0ZQphaXJlCm1hcnkK4paBZnVuZAriloFwYXJ0aWNpcAriloFzeW4Kc2luCuKWgWxvd2VyCuKWgXplcm8K4paBc2VjCuKWgWZyYQpQb2ludAriloFmYWlsZWQKaWVudG8KY3VwCuKWgXNsb3cK4paBbmF0aW9uCsOkaHIK4paBaW5mbwriloFQdWJsaWMK4paBZGVjbGEK4paB0KLQsAriloFzb2xkCuKWgVJlbQriloFQaGlsCtGB0YLRgNCwCuKWgW1laHIK4paBV29yawriloFOb3JkCuKWgWZhaXQK4paBZ2V3CnByaW50bG4Kb2JpbGUK4paBS29uCuKWgWFzc3VtZQpsYW5kcwriloFhbW91bnQK4paBUHJlc3MKw71jaAriloFtYXhpbQriloFDaGFtcGlvbgpsaWJyYXJ5CmHDsQriloFXYWwKQ29tbQpdXQriloF6dwriloFzb2NpYWwKTEkK4paBVW50ZXIKdm9yCkRlbHRhCmVtYWlsCnJhaW50Cm9uaQriloFhbHQK4paBbsOpCtGG0LjRjwpvZ3JhcGh5CuKWgW1lbnRpb25lZAriloE8PQriloFjZXR0ZQriloFjdXJyZW50bHkKdmFyZQppemluZwriloFEZWYKaWNvbArDvG5kCuKWgWNvbmZpZ3VyYXRpb24KZXN0aWcKSUlJCmxhbQppw6hyZQriloFFYXIK4paBdHUKRW50CuKWgVVzaW5nCuKWgdC60L7QvApjaWUK4paBcHJvb2YK4paBaW52b2wK4paBSGlzdG9yeQo+PAriloFBTkQKYXZ5CuKWgXJlbGF0aW9ucwokewriloFjb21lcwriloFkaXJlY3Rpb24K4paBSnVuZQriloFXYXkKQ29tcG9uZW50CmVjaAriloFQZXRlcgpzZwriloFzdHJhCnVjdAriloFpbXBsZW1lbnRhdGlvbgphdHRsZQriloFjegpwbG90CuKWgXBsYXllZAoiPjwvCuKWgWZpdmUK4paBY29sbAriloFDaGFybGVzClRyYQriloFzdW8KZmlsZXMKZW50ZXMKcmVzcG9uc2UKSG93CuKWgVNvY2kK4paBaWduCuKWgWxlZAriloFHZXJtYW4KdWRvCuKWgUR1CuKWgXRpbQpvdW50ZXIK4paBYXR0YWNrCnVyaQriloHQsNGACmVzc2UKaXZpbAriloFKdQriloF2ZWwKbWF0cml4CuKWgU1hdApnaW8K4paBWmVpdApWRVIKaGFzCkNvbm5lY3Rpb24K4paBaWhyCuKWgWF0dHJpYnV0ZQriloFkaXNjdXNzCuKWgWRvbWFpbgpiaW5kCuKWgVNlYwpyaWsKY2xvc2UKZ2luCuKWgWxvdmUKYW50bwpnZW50CmFiYQpqYW5nbwpiaQriloFvYnNlcgppdHRpbmcK4paB0YDRgwp9PQphZ2VuCkJDCnNvbWUK4paBQnUK4paBc29jaQriloFpbmRpdmlkdWFsCuKWgWRlYWwK4paBb3V0c2lkZQpyaW8KRXhlYwphbmRpZAriloFidXNpbmVzcwriloF0ZW1wb3IK4paBVHVyCuKWgSghCnJpdGVyCuKWgWdvb2dsZQpdOgppdHRlCnhpCuKWgdCf0LAKaG9sCtC90YwKcmluZwriloFzdWwK0L3QvtGB0YLQuApfLgpnYXIKVGFzawriloFDaGVjawriloFtb2Rlcm4K4paBd2luCnVzdGVyCmhhbgpmb3JtYXRpb24Kdm9pZAriloHRhNC4CuKWgXVzZWZ1bAriloFFbmdsYW5kCmxvcwpldGltZQpldXIK4paBdW5pcXVlCuKWgdC60LDQugp5aW5nCm9iagp1aWQK4paBd2luZG93cwriloFkaXN0YW5jZQriloFub21icmUK0ZbRjwpvY3VzCmFobgppZXJ0ZQriloFkYXIKU0kKbG9uZwphc3RhCml2ZW4K4paBdG9sZAriloFHcnUKZm9vCuKWgWNhbGxpbmcKaWVtYnJlCuKWgWZ1dHVyZQpwcsOocwpsZWVwCmF2aWdhdGlvbgpQT1NUCuKWgWRlc2NyaWJlZAriloFub2NoCnVuaXQKYWxsZW4K4paBYnJhbmNoCmZhCuKWgWZpbGwK4paBb2JqCuKWgXRyZWUK4paBd3VyZGVuCuKWgUxpdGVyCnJvdApzcGxpdAplbWVpbgptb2R1bGUKQ0EK4paBb3BlcmF0b3IK4paBd3JvdGUK4paBSmFjawpvbG9naWUK4paBQW50CtGC0LXRgApzdHJlYW0K4paBUXVlCmVwc2lsb24Kbm9uCnN0ZWluCuKWgXNpbXBsCnB1YgriloFKdWx5CuKWgW5hdHVyZQriloFEYXRhYmFzZQrDs2wK0L3QuNC8CuKWgVZJCsOqdHJlCmlsZXMK4paBd2VsCicpLAriloFtdXQKbG9jYXRpb24K4paBdGhlcmVmb3JlCmVsbGkK4paB0IYKbsOpCuKWgdCw0LIKbGVkZ2UK4paBY29udmVyCsOtbQriloFYVgp2aWRlcgriloFKYW51YXJ5CuKWgXVzdWFsbHkK4paBcmVsZWFzZWQK4paBTWkKSGVhZAppbGxlcgriloFqYW4K4paBbGV0dGVyCnByb2R1CnJkCuKWgUNhbQosJwriloHQpgriloFwdXNoCnVwZGF0ZQriloFtYXliZQpIdHRwCkAiCtC80LXRgApzZXJ2aWNlCnBhcnNlCuKWgWRhc3MKw6puCikiCm1vcmUKLyoK4paBbWFzCuKWgWxpa2VseQriloFtYXRlcmlhbAriloFbWwriloFsb25nZXIKYmFsCuKWgUFyY2hpdgppZ3QK4paBZWd5CmlkZ2UKaWd1CmNvbmYK4paBaW5jCmNvbnN1bHTDqQriloFtYWkKV29yawriloHQs9GA0LAK4paBT2N0b2JlcgriloFnbG9iYWwK4paBc2VsCuKWgW11bmljaXAK4paBdmlvbAriloFEb2VzCuKWgVxbCtGB0LrQvtC8CuKWgWNvbXBvcwrQsdGA0Y8K0LLRjwriloFyZXNwb25zCuKWgWNvbnNpZGVyZWQK4paBSmFwYW4KcGVzCm9zdG8K4paBbWlsaXQKU1AK0YHRiwphdHRyCmNpbAppcmVjdG9yeQphdmluZwriloFEZWwK4paBcHJldmVudAppZGFkZQpnaXQKaWZvcm0Kb3V0ZXIKaW5jdApsZXZlbAphdGV2ZXIK4paBcmVwZQriloFleGMK0LTQsNGAClN0eWxlCuKWgVRob21hcwplbGluZQriloHQtgp1bnRpbWUK4paBbGFyZwpUcnVlCi4qCmNyZWVuCnlsZXMK4paBdHJhbnNsCuKWgdCh0L4KZW5zaW9ucwrDpGwKaXNzZQriloF2b2x0CmNpYWxseQpuaWsKLl0K4paBU3RhZHQK0LzRiwpmaWxsCmxvdgriloEiLwpTcAriloFBaXIKQ2FsbAriloFudXIKQ2hlY2sKaWVuY2UKZWZpbmVkCuKWgdCy0YDQtQrFgm8KZHoK4paB0L7RgAppa2VyCm93YQrQvtCy0LjRhwpyw6kKT0wK4paBbGluZWFyCuKWgWV4cG9ydAphaHIKaWNpYWwKUmVwCuKWgW5hdHVyYWwK4paBY29wCuKWgX0pCsOnw7Vlcwp6egpXaGF0CuKWgUhvdXNlClJlZgppbmdlcgriloF0YWtpbmcKbsSbCuKWgUVpbnoK4paBZGFtCuKWgWlzc3VlcwpCdWlsZGVyCmVkaXQK4paBcHJ6CnBhc3N3b3JkCkdlbmVyCnJpbQriloFwYXJ0cwotLS0KaWdpbmFsCuKWgVNjaQriloFtb3RoZXIKcmVhCuKWgWNvbnRhaW5lcgrQtNGPCuKWgUlQCuKWgW5vbmUK4paBZm9sbG93ZWQK4paBcGxlCuKWgW1lYXN1cmUK4paBdG91dApFeHQK4paBVFYK4paBZXhwbGFpbgriloFwYXBlcgrRgdGC0ZYKd3MKV2lrCuKWgW1tCuKWgU5vcm0K4paBU2VydmVyCmZvbnQKZWNhdXNlClRSCuKWgdCx0LgKTGEK4paBZW5zCuKWgXJldHIK4paBU2lsCuKWgXNlcXVlbmNlCmFyYwpJVgp6w6EK4paBQW5kcm9pZAriloFTdXBlcgriloFyb3oKb3ZpZQpPbQriloFXZWxsCm1ha2UKb3JwaAriloFKZXIK4paBUm9zCnJlZmVyZW5jZQriloFmZWF0dXJlcwriloFHZXIK4paBTGVnCuKWgWxhdGUK4paBYWRkaXRpb25hbAriloFmbG8K4paB0LXQs9C+CuKWgWFsZ29yaXRobQpCQQprYXIKSVAKXSk7CuKWgWFwcGVhcnMKeXcK4paBdGVtcAriloFhdXNzaQptZXRob2QK4paBcGV0CnN0cmFwCmFybmluZwriloFjdXQK4paBU2EK4paBdHJhY2sK4paBZW1wbG95CuKWgWluZGUKcmF2CuKWgWdlbmVyYXRlCmJlcwphcnRzClN0YXR1cwp1Z2UKYWxpcwriloFvdmVycmlkZQriloFmaQriloFsb3N0Cm90ZWQK4paBcm9vbQriloFjYWxscwriloFjb25zaXN0CtGA0LXQvQriloF2aWxsYWdlCmRpc3QK4paBdGVjaG4KZW56YQriloHRgNC+0LcK4paBQ2F0YWxvZwriloFiZWNvbQpyb3dzCuKWgU5lbApjb21wbGUK4paBcHJlbWkK4paBcm90CuKWgVdlYmxpbmtzCuKWgWZvb3RiYWxsCuKWgWNvbXBhcgriloFsaXZlCtC60LjRhQriloFlcXVpdmFsCmNhcGUK4paBR2VuCm5kZXIK4paBVmlzCuKWgWJlaGluZApnZXJzCnZva2UK4paBbWVkaWEKRVgKdGhhdAriloFzb25vCuKWgW15c3FsCmV2CuKWgXJ1bGUK0LTQvtCyCmFjYwriloFXSEVSRQrQtdC90LUKR3JpZAriloFqdWwK4paBbW9ydAriloFnZW5lcmF0ZWQKZW5jaWEKYWN0ZXIKY2x1ZAriloFzY2VuCuKWgWNsb3NlZAriloFNaWNoYWVsCuKWgW1vdW50CikkLAriloFkcm9wCuKWgWNvbWJpbgp0b2NvbAriloFnb2VzCuKWgWdlYgpNRAriloFBbnRvbgriloEkKCIKVGVtCuKWgWNhCuKWgWluc3RydQplZHMK4paBdG9vbApteXMK4paBcm91dGUKIikpCtC/0YDQtQriloFmbG9hdAriloFzZXJ2aWNlcwriloHRh9C4CtC60ZYKZW1ibHkKYWtlcgriloFTb24K4paBTWF0aAphc3NlCm91c2x5CmxpY2F0aW9ucwriloFydQriloHRidC+CuKWgUNvbnN0CuKWgWltbWVkaQpGTwpvcm8K4paBcHJvZHVjdGlvbgpyZWkK4paBanF1ZXJ5CmFubnQK4paBV2hpbGUK4paBc24K4paB0LPQvtC00LgKRm9ybWF0CuKWgXN0YXIK4paBU2VuCuKWgWtvCk5BTUUK4paBcHLDqXMKY2hhCndoYXQKb21pbgplbmRhbnQKaHkK4paBb2JzZXJ2CuKWgXByZWZlcgrRg9C9CuKWgWNvbnN0cnVjdG9yCmJzCuKWgW1hYwriloFCcmUK4paBSW5zdGl0CuKWgXN0b3J5CuKWgXN5bWJvbAplbGVzCsOfZQphc2luZwriloF3ZXN0CmlhbnMK4paBbWFzdGVyCtC10LcK4paBd2F5cwpibQriloFwaWNrCuKWgWRlcGFydApCYWNrCmVuawpsaXBzZQriloFtYXRoCuKWgUZyYW5jaXMK4paBRGVjZW1iZXIKZnMKcnVtCuKWgWRldmVsb3BtZW50CkxUCmVybmVsCuKWgVRydWUK4paBTW9yZQpyYW5nbGUK4paBY29uZGl0aW9ucwpPcHRpb25zCuKWgWdsaQriloFvcGVyYXRpb24Kw6lrCmFjaHQKaWdodHMK4paBbWlzdAphbmRhCuKWgWVuZXJneQriloHQttC1CuKWgXdvbWVuCmFrdAriloFDSApnZWJyYQriloFtZWV0Cml1CndlbGwKw7ZsCuKWgWdvdmVybm1lbnQK4paBSm9zCmllZwriloFzeW50YXgKZml4CuKWgVBldApqcXVlcnkK4paBY2FyZAriloFwcmluY2lwYWwK4paBZHJ1CuKWgXRlcnJpdAriloHQv9C+0LIK4paBU1MK0YDQuNC4CnRyZXMKYWduZQpseWluZwp0aWxkZQpiZXJuCmVudGVyClBlcgriloFzb21ldApMb2FkCmxpY2UK4paBc291cwriloFMb3VpcwriloFsb2dpYwriloFPdGhlcgriloFjaXIKw6l2CmNocm9uCuKWgWhhbgriloFtYXJnaW4KV2luZG93CsOocmVzCm55Y2gKcHVzaApib2xkcwriloFsYXlvdXQK4paBW2AKQ2hhcgriloFDYXAKYm9sZHN5bWJvbAriloFSb21hbgriloFNYXgKOigK4paBQ29kZQppc2luZwriloFzdGF0ZXMK4paBZXhpc3RpbmcKc3VwcG9ydAriloFyZXNlYXJjaApsaWNhdGUKdmFyaQriloFiaWoK4paBYXBwZQriloFoYXBwZW5zClwiCuKWgWNvbmNlcm4Kd2VzdAriloFzYXlpbmcKcGlkCuKWgXJlY29nbgriloFIZXQKQ2hpbGQK4paBY3MKXCwK4paBY2xlYW4KbGVjdGlvbnMKYWNjZXNzCtCy0YMK0L/RgNC+CmFjaXR5CuKWgU9mZgriloFlYXNpbHkKw6hxdWUK4paBamFrbwriloFpegriloFIYQriloFEZXQK4paBZm9ybWEKc2NoZQpzd2VycwriloFvZmZlcgpxdWlyZWQKVXNlcnMK4paBc3Vic3QKPigK4paBZ3JvdW5kCnVubgpyb2QKc3BlCnVyc29yCuKWgWxlYXZlCmVyawriloF0YWwK4paBYm90dG9tCklPCuKWgXBvcHVsYXIKaWdvCuKWgVRpbWUKdmFsdWVzCuKWgUxvYwriloFDbHViCuKWgWFuY2hlCmlhxYIK0ZbRlwpPbWVnYQriloFsb2NhdGVkClVybAriloFFc3AK0LvRiwrRhtGMCnVsYXRlCuKWgWpvaW4KYXZlcwp2ZXQKbGlvCnJlbW92ZQriloF0b2tlbgriloFvcHRpbQriloFjbGFpbQpvbG9naWNhbAriloFjc3MK4paBYWx0aG91Z2gK4paBcHJpdgriloFCYQrDvGwKZW50aWNhdGlvbgriloF2ZW4KU2VydmVyCuKWgUNvbmcKTkVUCkNPTgpkdApwZXJ0aWVzCuKWgWVwaXMKd2lraXBlZGlhCuKWgWVuZ2luZQriloFmZXIKZ2V0RWxlbWVudAriloFDbGEKxZnDrQriloFyb20KdmFyZXBzaWxvbgriloFwcmltZQppc3RyeQpwZWN0ZWQKb3JhZ2UK4paBdG91Y2gK4paBWycK4paBZGFuCkVtCmFjaW9uZXMKQ2FuCuKWgXdob20K4paBYmVoYXZpb3IK4paBc3RyaW5ncwriloFFdXJvcAriloFSb20KY2lyYwriloFwdW4K4paBcmVnaXN0ZXIKYnVudHUKcmFpbgpPYgpUQQriloFzb21ldGltZXMK4paBbWVudAriloFpbnRlZ2VyCuKWgUphYwpsZWdhdGUKb3RoaW5nCuKWgXNvdW5kCmxhY2VzCuKWgdCR0LAKcmIKZGkK0LvQtdC90LjRjwriloF0aGVtc2VsdmVzCuKWgUJsYWNrCuKWgXNldHRpbmdzCuKWgW5vcm0K4paBcnVucwriloFOT1QKS0UK4paBcGVyaGFwcwriloHQrwriloFtb2wK4paBYW5zCmF0cmUK4paBRGllcwpUb2tlbgphbmllCuKWgWFsbG93ZWQKUmFuZ2UK4paBR3JvCnZpYQp1dG9yaWFsCmVuc29yCmVzdGl2YWwKKTsNCtC60YDQsNGXCuKWgXR1cm5lZApzY29wZQriloFiaWVuCj0kCuKWgWV4dGVuc2lvbgphdG9yZQriloHQoNC+CuKWgXNwZWNpZnkKZWR1CkRhdG9zCuKWgXN0b3JlZAriloFwYXJzZQriloFhbnN3ZXJzCmlsbHMK4paBaGVhcmQKbHUK4paBVEhFCuKWgWfDqW4K4paBZnVsCmV6CuKWgVByZW0KdGhlbgpkcArRgdGM0LrQvtCz0L4K4paBU2kKw6dvCkVkaXQK0LrRltCyCuKWgdCb0LgK4paBU2luZwriloFjYXRlZwpFcXUK4paBZ3VlcgpXaWR0aAriloFDaHJpc3RpYW4Kc3RhdApXcml0ZQriloF3b21hbgp3b29kClZpcwrRgNCw0LcK4paBJCRcCm9kZXIK4paBYm9vbAriloFpbnRlcm5hdGlvbmFsCtC90L7RgdGC0YwK4paBUmljaGFyZAriloFhZGRpdGlvbgriloFNdXNpYwriloFhYmVyCnTDswriloFoaWVyCnVnaAriloFwb2IK4paBdGFibGVzCkRvCuKWgWhpZ2hlcgpwc2kKcsOhCuKWgWFjdGl2ZQriloFUYWJsZQrRmtC1CuKWgWRlc2NyaXB0aW9uCuKWgXNlZW1lZArDrXN0CuKWgW15c2VsZgriloFtZW51CmRlbAriloHFvgplbGUKQXV0CuKWgdCz0YDRgwptdXQKb29uCmFzYwpidWcK4paBbW92ZWQKQ0wK4paBZGF0YXMKU08K0L7Qu9C+CuKWgUdlb3JnCuKWgXJlYWNoCjoiCuKWgWV2YWx1CuKWgUhlbAriloFSaXZlcgriloHQkNGACi8vLy8K4paBc2V0cwriloFPbHltcApBZGFwdGVyCi4nCm92ZXJuCuKWgUxvcmQKIS0tCmpwZwppbWVudG8K4paBUHJvZgriloFhY2hpZXZlCn06CuKWgWluY29yCuKWgW9uZGVyCmVuZ2wKQUJMRQriloFNYXJ5CuKWgXdhcmVuCmxhZ2UKRGVjCtCw0L3Qs9C7CmVuY2lhcwrQu9C10LkK4paBTWFjaGluZQriloHQkNC9CnVkYQriloHFmwriloFYWApvbmx5CtC70LXQvdC40LUK4paBdGFtYmnDqW4KbmVqCuKWgXJlbGF0aXZlCuKWgWhvdXJzCuKWgWluZGVlZAp1bmRvCmluZ3UKYXJlYQriloFDcmVhdGUKYmVpdAriloFyZW1vdmVkCm1hc3RlcgpoYXVzCuKWgUJlcm4K4paBc3BlZWQK4paBQmF5CuKWgUF0dAriloFOb25lCmFwcGxpY2F0aW9uCsO8ZAriloFmaXQK4paBTWFyaWEK4paBbm9yZAriloFzcGxpdAriloFzdHJ1CuKWgW9mZmljaWFsCuKWgWV4ZWN1dGUKb3V2ZQp7ewriloFBcAriloHQutGDCklMCuKWgV4KZGltCuKWgXNldHVwCtGB0LoK4paBc2hhcmUK4paBbWludXRlcwpnbGUKb2NvCnN0ZWxsCuKWgUNvdW4K4paBdGVtcGVyCmtlaXQK0YHRjNC60LjQuQphbwriloFMb25nCigmCtC60LDQvQriloFkZW5zCkJ1dApYWApEQVRFCmdhbgouKS4K4paBZW50cnkKaW5zdGFsbAriloHQt9C90LAK4paBU29tCkNvbW1hbmQKw59lbgriloFzdGFydGluZwriloFzdG8KSUcK4paBbWluaW0K4paBZXhwbGljaXQK4paBYnl0ZXMK4paBcGFydHkKdG9iZXIK4paBR3JhbmQK4paBVm9yCuKWgWxldXIKRG9jdW1lbnQKZXJjCmVuc2l2ZQpDUAplbnYK4paBYXJndW1lbnRzCuKWgUdyYW4KYXJpbHkK4paBbGluCnRuCigtCmdlcQriloFGYW1pbAriloHQkdC+CuKWgXRvdXIK4paBbmF2CuKWgXByb3Blcmx5CuKWgU1ycwriloFNZWwK4paBc2NhbGUKYXN0aWMKZHMK4paBU2lyCuKWgUNodXJjaAp9XntcCnlvdQovLgpTbwriloFicm91Z2h0CuKWgXJvbGUK4paBU3VyCuKWgWZvbmQK4paBZ2VzCsW8ZQpldGVuCuKWgcOpdGFpdApTRVIK4paB0LrQvtGC0L7RgNGLCuKWgWVxdWF0aW9uCmFzcHgK4paBQWZyCuKWgWRpdAplbXB0eQphbGVtZW50CndyYXAK4paBQmV0CuKWgWNvbGxlY3QK4paBZ2l0CuKWgXZpZQriloEuLgrRgNC+0LkK4paBPD8K4paBZWR1YwprbAplbnNpcwriloFPUgriloFIaQriloFDb3VyCtCx0YsKY2VydAriloFHZXMKZXNzb3IKTWFpbgriloHQu9GOCmNhZGUKZG90CmF1Z2gKaGliCuKWgWF1dG9tYXRpY2FsbHkK4paBc3BpcgpwcmVzZW50CuKWgUZlYnJ1YXJ5CuKWgUVsbGUKY3VzdG9tCuKWgXByb2dldAriloFhZG1pbmlzdHIKQUEK4paBYm9ybgriloFDb2xsZWdlCmF0aG9sCmApCmllcnJlCuKWgXJhbgriloFwcm9mZXNzaW9uCm9nZW4KfV97XAriloFhY3Rpdml0eQriloFzY3JvbGwK4paBcHJvdmUKaWJyYXJ5CmVyaWVzClJlYWQKeWVhcgriloFsYW5nCkRldAriloFrbmV3CuKWgXByb3RlY3RlZAriloF3b3IK4paBZWZmaWMK4paBcsOpZwriloF0aGVvcnkK4paBcHVibGlzaGVkCnJlYWwK4paBVG91cgriloFkdXJhbnRlCsOkcwriloFwb3NpdGl2ZQriloFmb3J3YXJkCuKWgVJlbAp7IgpwYXJrCuKWgVVtCuKWgWVlcgplbnRhCuKWgWltYWcK0L3QvtGXCnBpZWwK4paBalF1ZXJ5CmlzbWUKY2huaQpvcmdhbgriloFhcmdzCm9pcgpoZWltCnJpYW4KZWxlc3MKdXNlcwrQtNC40L0KaWNpw7NuCuKWgWluZHVzdAriloF3aXNoCsOhbnkKb2NhCuKWgWFuZ3VsYXIKaWV2ZWQK4paBb2NjdXIKU0VMRUNUCm9uaWEKYWRtaW4K4paBQmVzdAriloHRjdGC0L4K0L7Qs9GA0LAK4paBbG9zcwriloFiYWwK4paB0KDQvtGBCuKWgWNhcmVlcgriloHQv9C1CklYCuKWgWZhbGwK4paBUm9iCuKWgU9QCmVuZWQKZ3JhcGhpY3MK4paBY29taW5nClVwZGF0ZQriloFkaWVkCmVkZW4K4paBYWJzCuKWgWlubmVyCuKWgXRyYXYK0YHRgtC+0Y8KesSFCsOpcAriloFHcm91cAriloFjZWwK4paBc3R1ZmYK4paBc2l0dWF0aW9uCuKWgSR7CmFjbGUK4paBcHVycG9zZQriloFGaXJlCuKWgU9oCuKWgVNlY29uZAriloF1cGxvYWQKb3N0YcWCCtGO0YnQuApBdXRoCuKWgXNob3dpbmcK4paBY29tcGxldGVseQphdmVsCmJkCuKWgXByb2NlZAriloHDlgpjb250cm9sCuKWgXRoYW5rCnVuZHJlZAriloF0b20K4paBZXhhbXBsZXMK4paBcmVtZW1iZXIK4paB0YDQsNCx0L4K4paBcG9zc2liCuKWgWRldGVjdAriloFwb29yCuKWgU9wCuKWgWNlbnR1cnkKdXR0ZXIK4paBbG9naW4KdW5zdApPdXRwdXQK4paBb3RoZXJ3aXNlCmxhbgrRgtGD0YAK4paB0YHQvtCyCuKWgWdyb3VwcwpyaXAK4paBc2hlbGwK4paBZGlzdHJpY3QK4paBcmVjb3JkcwriloFzacOoCmZvcnR1bgplbnR5CuKWgVRyZQriloFjaGFuZ2luZwrRgdC70LXQtAphdWdodAriloFkZWVwCnN1YnNldAphZ3kKZW5kYXIKamF4Ck9NCkVsCmltYXRlCmFyZG8K4paBcGxvdAriloF2aXNpdAriloFidWcK4paB0LLRgdC1CuKWgW9wZW5lZAriloFyZXBsYQriloFIZW5yeQriloFwcApiYXMK4paBZGFyawriloFNYXJ0aW4K4paBcmVzb3VyY2UKaWxpbmcK4paBd2F0Y2gKcmVwbGFjZQriloFyZWxlYXNlCkxvY2F0aW9uCuKWgWxlYXJuaW5nCm1lbnUK4paBYWxsb3dzCtGK0YAKTGVuZ3RoCuKWgXdoYXRldmVyCuKWgXBhZ2VzCuKWgWNvbXBpbGVyCuKWgdGC0LDQutC20LUK4paBUGFuCmNvbW1hbmQK4paBcm9hZAriloF1bmxlc3MKYD8K4paBZGlzY292ZXIK4paB0L7QvQp9XQpib3VyCuKWgUNvdWxkCuKWgXJlZ2V4CuKWgXBzCkNECtC40LcK4paBd2lmZQphbWVudGkK4paBZmFpcgriloFEQgriloFDdXAKZW5lbgphamF4Cm90aMOocXVlCuKWgXNlaW5lcgppY2tlcgrDoW0KZXhjaGFuZ2UKb2xlcwpJRgriloHQlNC+Cm9obgriloFncm93CuKWgVRodXMKc3BlYwriloFoYXR0ZQojLAphbGxlbAriloFyYXRlCuKWgWNlbnRyYWwK4paBVmFuCmlmb3JuClJ1bgriloFzdHVkeQriloFYTUwK4paBQ2hlCuKWgWJlYXV0Cm1pZAriloFhZHZhbmNlClZlcgrRgtGPCuKWgWhhbmRzCuKWgWxheQriloHFoQriloFPUwriloF7fQpQcmUK4paBSGFsbAppbXAK4paBc3VuCuKWgXN0ZXBzCuKWgWp1ZApxdWkK4paBYm9vdAriloElPgriloHQktCwCm5vc3QK4paBbmVtCuKWgXBlbgpPcGVuCuKWgWNodXJjaArQutC+0L0K4paBYXZlcmFnZQriloFjb21tZW50cwriloFjb3JyZXNwb25kaW5nCmxldmFudAriloFiZWQK4paBbWVhbmluZwpWZXJzaW9uCkxpbmsKYmVsCuKWgWV4dHJhY3QKxZvEhwriloFJVgriloFJcgriloFjb21wdXRlcgriloFhZmZlY3QK4paB0KHRgtCwCkFYCnNvcnQK4paBc3BlY2llcwriloFPcGVyCuKWgWhhc2gKY2hlcwriloFFaW56ZWxuCuKWgWtleXMK4paBbWFyem8K4paBaW50ZXJwcmV0Cmhvb2QK4paBY29vcmRpbgrDtnMKcmFnZQpldHoKaXphCtC00LXRgArDvHQKXioK4paBbW9kaWZ5CuKWgXRlcm1pbgriloFjcmVkCnpvbgrQvdGD0Y4K4paBbWllCuKWgScnCuKWgU1vcwriloFjb25uZWN0ZWQKTk8K4paBY29tcGlsZQriloEiXAriloFjYXQKZmlkZGxlCnV0YQpBY2Nlc3MK4paBU3RvCuKWgUJ1cgriloFub3J0aApHYW1tYQriloFhbGxvYwpJbml0CuKWgUxpbmsKaWFsaXplCkltcGwKb3VwZQpyb3ByaQriloFHb2xkCuKWgXNvbG8K4paBRGlzdAosLQpuYXYK4paBYWxlcnQKZXNpcwriloFPcwovLy8K4paBZmViCuKWgS0tPgpmb290CuKWgUZyaWVkCuKWgUVpbnplbG5hY2gK4paBcmV2CnplaXQK4paBU3RhdAriloFTZWcK4paBYmxvCndpY2sKRUwKY2FwdGlvbgpoZWFkZXIK4paBcHJlc2lkZW50CuKWgW11bHRpcAriloFFaW56ZWxuYWNod2Vpc2UK4paBc2VpbmUKP+KAnQpGdW5jdGlvbgriloFTdGFuZAriloFGdW5jdGlvbgriloE/PgriloFCaWxsCuKWgXNwZWN0CuKWgXJlZGlyZWN0CnJ1cHQK4paBd2FsawrQstGI0LgKc3ByaW5nZnJhbWV3b3JrCnBsYWNlCsOpaG8KRW50aXR5CuKWgVNlcnZpY2UKaW50ZQriloF0cmFpbmluZwriloEoYArRhNC+0YAK4paB0LrRgNCwCmF1cgriloFmZXRjaAriloHigKAK4paBbcOqbWUK4paBKCcKYXRpdmVseQriloFleGVjdXQKw6RjaAriloFDYXRhbG9ndWUKYmFzZWQKQXR0cmlidXRlCuKWgXNwcmluZwpwaG9uZQrRgtGA0LAK4paB0L/QuArRgtC10YDQsAriloFgXAriloFPZApPbmUKc2VuZApib24K4paBwrAKTU8K4paBYXNraW5nCuKWgW/DuQriloFpbmfDpXIK4paBdGVzdGluZwriloHRhNCwCuKWgUJvb2sKaW1tCuKWgXByb2dyZXNzCmJybwpGaXJzdAriloFwaG90CuKWgU9OClRlbXBsYXRlCmRldmVsb3Blcgphbm5vdAriloE+PQptaXNzaW9uCuKWgWt0w7MKcGMKYmFjaAp6ZW50CnVlZAriloFvbmVzCtGY0LgK4paBcm91dAriloHQmtC4ClBvc3QK0YbRltGXCuKWgVZpcgpuZWsKYWdpbmcK4paB0L7Qugppem9udAriloFhZ29zdG8K4paBY2hvb3NlCuKWgQ0K4paBc3lzdGVtcwpsb3NzCmllbnRlCuKWgUNyZQriloFjb250cmEKdW1zCuKWgWJlZ2lubmluZwplbXkKaXN0aWNzCuKWgXNlcnZlZApEb3duCm9wdGlvbnMK4paBR292ZXJuCuKWgUJZCuKWgWplc3QKdMOpCuKWgWNvbnRpbnVlCnBlcnMK4paBZWFzaWVyCuKWgWNvcwplc3NvCj4+Ck5ldAriloFCb3IK4paBQ3IK4paBdHJhbnNmZXIK4paBQ1NTCuKWgWZpbm5zCuKWgdGF0L4KdXNlcm5hbWUK4paBY29uc3RydQriloFwYWluCuKWgVRlbQriloFzcGVjaWZpZWQK4paBYnJpdArRgdC60LjQtQppcmsKcmFwcGVyCuKWgWNvdW50ZXIK4paBWyIKb2RlZArQtNCw0L0KcHJvcGVydHkKaGFyZAppc3RyaWN0CikvCuKWgVBvdXIK4paBV2hlcmUK4paBPT09CuKWgXNvd2llCuKWgdCf0YDQvgriloFkZXNzCuKWgXRyYXMK4paB0YPRh9CwCuKWgU92ZXIKbm90ZQriloFBbWVyaWNhCmNwCuKWgWdyYW5kZQpNZQopLQpNb2RlCuKWgXBhc3NpbmcK4paBZ2l2aW5nCkNsCn0vCk1lbnUKISEKYW5ndWxhcgriloFsYXVuY2gKdmFycGhpCuKWgUpvaGFubgriloFmb3JlYWNoCnLDswpzZXF1CmlmaQpBbQphcnAK4paBYnVmZmVyCuKWgW5pCuKWgW1peAriloFNdXNldW0K4paBbWVhbnQKYXNpCuKWgWthbgrQv9GA0LDQsgpDb21wCmlzdG9pcmUKaWZ1bApqZXIKaXNzaW9ucwpSZXNvdXJjZQriloHQstC+0LcK4paBU1QK4paBc29sdXRpb25zCuKWgWJlbG9uZwriloFBc3NvY2kKY2YK4paBTcOkcgriloFncmlkCk11bHQK4paBcmVxdWlyZXMKa2sK4paBdGVhY2gKZW1laW5kZQriloFzcXVhcmUK4paB0LrQvtC80LDQvQriloFFdmVudAriloFydWxlcwriloFidXIK4paBZWluZwriloFNYWkK4paBbmFtCuKWgXNsw6QKaMO2cgriloF0aXAK4paBTGl0ZXJhdHVyCuKWgXNjb3BlCm92ZXJsaW5lCuKWgWV4aXQKKT8KYmV0CuKWgXZpY3QKT2ZmCuKWgWFwcHJveGltCuKWgUdlYgprdG9wCmhlaXQK4paB0K4KdGVtcGxhdGUK0YDQvtC9CuKWgXVubwpTZXJ2CuKWgWZyYW1ld29yawpvcGVyYXRvcgriloFnZW5lcmFsbHkK4paBaHVuZHJlZAriloFkaXZlcnMKb3ZpCuKWgXLDqXMKYWJzCuKWgWdhbArDp2FpcwriloFmZWV0CuKWgXZpcnR1YWwKY3p5CtGB0LrRgwouLwpodQphbmN5CuKWgXJlY29tbWVuZAriloHQv9GW0LQK4paBbW9uZXkK4paBdmVyc2lvbnMK4paBaGVscHMK4paBSG9yCkl0ZW1zCmxvb2sKY29ubmVjdAphbmdlcwpWaWV3Q29udHJvbGxlcgplbGlqawriloFvY2N1cAriloFlZGl0b3IKYXV0bwrDtmcK4paBc2Vjb25kcwriloFvYnZpb3VzCnZtCmFrZXMK4paBZ2VnZW4K4paBdGlsCmplY3Rpb24K0LvQtdC90L3RjwriloFvcGVyYXRpb25zCuKWgUVhc3QKb2d5CuKWgVBvbGl0CnV0ZW4K4paBSm9zZXBoCiJgCuKWgUNvbXBhbnkK4paBY2FsbGJhY2sK4paBc2VuCmNjacOzbgriloFhc3NvY2lhdGVkCuKWgWNvbnRhaW5pbmcK4paBcHJhY3RpY2UKZWxpamtlCm9rZQrDqXJhCnVucwphbnRhCnZleQp6dQriloFCZXMK4paBRmxvcgptZW0KeWN6CuKWgWFyY2hpdGVjdAriloFhbm5pCuKWgWNvbnRhY3QKWVBFCuKWgUNhcwriloHQv9C+0LvRgwpvdm8K4paBYnJpbmcK4paBY29uY2VwdAriloFqcwriloFSZWZlcmVuY2lhcwplbWJsZQriloHQvQriloFzdXBwb3J0ZWQKQmlnCuKWgUhhbnMKZXJ2CuKWgU1hagriloFhcnJpdgriloFIYXZlCuKWgXByb2JhYmlsaXR5CuKWgVBvcAriloFQYXNzCnRva2VuClByb3ZpZGVyCuKWgVJhClJlYWRlcgpvb3RoCmxhcAriloFhc3Npc3QKYWRvdwriloF0ZXN0cwrRgdGB0LgK4paBa2luZwpsYW5nbGUK4paBU3VtCk9JTgriloFzZWN1cml0eQpuaXMKLi4vCuKWgWJhc2ljCnVuaXR5CmA6CuKWgdC60L7RgtC+CmtvdwriloFCaWJsaW90aMOocXVlCmFzaW9uCmFsbwppZmVzdAriloFub3ZlbWJyZQriloFwZXUK4paB0JYKZW5zY2hhZnQKY2x1cwrRmNGDCkhlaWdodArDum4K4paBdHVyCuKWgWlkZWFzCuKWgWNlcwpmcmFrCuKWgXByZW1pZXIKaXRhdGlvbgriloFzw6kKSFRNTAriloFSb3lhbArRgdGM0LrQvtGXCuKWgWJ5dGUKUFMK4paBc2VndQppbmVuCuKWgUdyZWF0CuKWgdCa0YMK4paBZXh0ZXJuYWwKVGl0bGUKVG9wClByb2Nlc3MKaXTDpHQK4paBYC8K4paBc2VjcmV0CnBvc2l0b3J5CuKWgXBvdGVudGlhbAriloFCdWQKbmFtZXMKYXNvbnMKc3RhY2tleGNoYW5nZQpiYWNrZ3JvdW5kCtC/0LXRgArRgdC+0LIKYWZ0ZXIK4paBcGVybwriloFzb2Z0d2FyZQriloFzZWQK4paBYXJyYXlzCnRtcAriloFhc3AKc2NhbGUK4paBTGF0CmFuYWwK4paBZ2VtClBVCuKWgUFsdHJpClRoYXQK4paB0J3QuAppZmFjdApBZGRyZXNzCuKWgXNvdXRoCuKWgWZvcm11bGEK4paBQ29sbGVnCuKWgdGW0L0Ka3Rpb24K4paBc2FjClNICmFqbwpldGMKdmMKYF0oCuKWgUR1cgriloHQnNC1CuKWgVNtaXRoCml0ZW1zCkNLCmVsbwriloFwbHVnaW4K4paBc2VyaWUKaWVubmUK4paB0LjQu9C4Ck1hcgriloFJbWFnZQpnb3QKYW5kYXMK4paBbWF0Y2hlcwriloF3b3J0aAriloFEZWIK4paBY2FjaGUK4paBZmVsdAplcnNjaAppemVzCk9wZXIK4paBSmFocmUK4paBY29tbXVuZQp0aHJlYWQK4paBbnkKZGVjCm91dwriloFzdXJmYWNlCuKWgVBvcgriloFTdHJlZXQK0L/RgNC4CuKWgWNhbmRpZAriloFSZXR1cm4K4paBS29tCmdydQriloHRgtC4CltcCuKWgWRlcGVuZHMK4paBaW5mbHUK4paBdG93YXJkcwphaW5lZAriloFyYW5rCuKWgUphbnVhcgriloFjb21wb25lbnRzCmdlc3QKZ2V0RWxlbWVudEJ5SWQK4paBY2hlY2tlZAphaXJzCmpvaW4K4paBZGVhZAriloFoaXQKw6lueQriloFlcXVpdmFsZW50CuKWgdCf0YDQtQriloFhcHByb3ByaQpQYXNzCuKWgXByaW1lcgplbmdsaXNjaAriloFhcHBhcgriloFEdXJpbmcK4paBa25vd2xlZGdlCuKWgXRyaWdnZXIK4paBY29yZQriloFPbAriloFQcm9kdQriloFGZXJuCuKWgdC90LDRh9CwClRlCuKWgU1vdAplcnZlCtGC0LLQvgriloFtaWQK4paBZmluYWxseQphaXJlcwriloFlc3BlY2lhbGx5CuKWgXR1dAriloFyZWNlaXZlCmFkcmUK4paBbmVpZ2gKa3RldAppbGRlCuKWgXJhZGlvCuKWgWRyaXZlcgrQu9C40YHRjAplbmRlbmNpZXMK4paBSUUK4paBc2F2ZWQKZmZlY3QK4paBV2F5YmFjawppYXQK4paBcGFkZGluZwp3aW5kb3cK0YLQuNGH0LUK4paBbXVyCmFjdG9yCuKWgUhhbgrQvtC90LDQu9GMCuKWgWdhcgriloFmYW1pbGplbgrDs3MK4paBbmF0aW9uYWxlCuKWgXByw6kKZGVkCm9uYWwK4paBUHJlc2lkZW50CuKWgVwsCuKWgXBsYWNlZAplcm5pCuKWgXNpZ25hbApuYWIKaG0KTW9uCuKWgXZzClNDCuKWgXByb2dldHRpCuKWgcOcCuKWgWZvcm1zCuKWgW1lc3NhZ2VzCmluZgp1c2VycwpHRVQK4paBZGVscwpDb2xsZWN0aW9uCuKWgUdvb2QK4paBTWF5YmUK4paBY29tcHIK4paBbGFyZ2VyCmdyZXMKYXBlcgriloHQn9GA0LgKdW5kZXMK4paBc2VhCuKWgVNwcmluZwp1bG8K4paBbWVjaGFuCuKWgXNhbnMKR0IKVmFsaWQK4paBY29tbXVuaWMK4paBcHJhCnZpZXIK4paB0KHQtQriloFhaW4K0YLRg9GA0LAKa29tCnNraWVnbwrQutC+0LLQvgphZGF0YQriloHQoNC1CuKWgWJvb2xlYW4Kc2V0cwriloFlZmZvcnQKLlsK4paBem9zdGHFggpQQQriloFWaWN0ClNECm93YcWCCuKWgWVtYgriloFwcmltYQriloFob3VyCnN1YnNlY3Rpb24K4paBRm9ydAptYXRoZnJhawppZ2luCkdMCikrCmZpCuKWgWFuY2kK4paBcGFuClwpCuKWgWx1ZwriloFkZXBsb3kKZG9tYWluCuKWgXNsaWdodApKU09OCuKWgW1vcm5pbmcK4paBaGkK4paBY29tcGFyZQppamUK4paBYmx1ZQriloFBYwriloFtaWRkbGUKYW5kZW4K4paBc2hhcmVkCuKWgUNhbXAK4paBw4EKb3VuZGVkCnV3CmllcnVuZwpTdGFjawriloFlaW5lcwriloFEYQpsaWoKZW50aQriloHQuQpVdGlsCuKWgWV4cGVyaWVuY2UK4paBYXdhaXQKdWxzCuKWgXJlcXVlc3RzCuKWgWltcG9zCuKWgWNvbnN0cmFpbnQKQ2hhbmdlCmVtcGgK0LHQtdGACuKWgUFub3RoZXIKQ3VzdG9tCuKWgXNpZ25pZmljYW50CmNyCuKWgW1pbGxpb24KcmVlawriloFkYWxsYQriloFHZXJtCm90YWwKYXRldXIKYnRuCuKWgXRoaW5raW5nCuKWgWludGVydmFsCm9ubmUK4paBbGl2CigpOgriloHQktC1Cm9lCuKWgUV2Cm1ldGEK4paBYnJvYWQKUmVtCmFwcGx5CuKWgWNvdXBsZQriloF0ZWNobmkKaWRhZGVzCuKWgWdvYWwK4paBQ0QKaGFiCuKWgWV4cGxhbgphbm5lcgriloFCZWNhdXNlCmJsb2cKaW5jbHVkZWdyYXBoaWNzCuKWgXZvaWNlCuKWgU1hcAp2ZW50aW9uClNlc3Npb24K4paBTGllbnMK4paBc29yCmNhdGVnb3J5CmFzaGluZ3RvbgriloFNw6Ryegpwb3AKaWxsZXQK4paBendlaQriloFMaWUKTnVsbAphZGRyZXNzCuKWgWZhY3RvcgriloFsaWduZQriloFIVFRQCuKWgXN1ZgriloFwZXJzb25hbApjaXAK4paBRGFyCuKWgWFkbQrQutC+0LkK4paBRXh0CuKWgWdvZAphYQpSaWdodArDqXTDqQriloFkeW5hbWljCuKWgW1haW50YWluCnRvcgojIyMjIyMjIwriloFGcmEK4paBY2hvaWNlCuKWgdGB0YLQvgrQodCgCuKWgUZlZGVyCnN0b24K4paBZmxhZwpraXQKTW9kdWxlCuKWgdGB0L/QvgriloFTdHJhCmlja3MK4paBaGF2ZW4K4paBTWFzcwriloFFbXAK4paBUGkK4paBUGVuClJlY3QK4paBS3IKaXRhdAplbGVyCtGP0LHRgNGPCml0ZXQK4paBU3RhcnQK4paBcHJvZHVjZWQK4paB0L/QvtC7CihfCuKWgWRlbGV0CuKWgWhvdAriloFHZXNjaGljaHRlCn5+CuKWgW1vbnRocwriloF0b2QK4paB0L3QuArDunMKdGVtcAriloFEZXoKeXBlcwriloFjdWkKb21tdW4KYWN0aW9ucwriloFlaWdlbgriloFpbW1lZGlhdGVseQpQTAriloHQk9C+CuKWgUJhbArRmdC1CnVsdWkK4paBb25saW5lCuKWgWHDsW9zCuKWgW5hbWVzcGFjZQriloFtb25kCuKWgUJhc2UK4paBQ2FuYWRhCmV0enQKfS0K4paBZGVmaW4K4paBZG91YnQK4paBaW52ZXN0aWcKdmlld3MK4paBTGluZQriloFzdGFnZQpldHRpbmdzCnVicmUKZmxvYXQK4paBUGxheQriloFMYXMKcHRyCuKWgWJlY29tZXMKZXN0YW1wCuKWgWluZGVwZW5kZW50CuKWgWFuYWx5c2lzCuKWgUxvb2sKbGFpbgriloHRgNCw0YEKUmVmZXJlbmNlCuKWgXNvcnJ5CuKWgXN1cHBvc2VkCsO7dAriloFkZWdyZWUKdXR6Ck1NCuKWgWRlc2lyZWQKxYJ5CuKWgWxlbgriloFhbG9uZQpzaWduZWQK4paBU3RhClBlcnNvbgriloFhcHBsaWVkCuKWgUJhY2sK4paBbWFycwpQYXJ0CuKWgURpZAriloFleHRlcm5lcwriloFucApvbmdvCuKWgWVzdGEKQmxvY2sK4paBcG91CmFkb3JlcwriloFTdHVkaW8KLiQK4paBcmVhY2hlZApib3QK4paBSnVuaQp0b25zCml0ZWwK4paBR2FyCuKWgWFydGljbGVzCuKWgURpc3RyaWN0CuKWgXRyb3VibGUKbGlkZQriloFGb3VuZArDoWQK4paBZXF1aXAK4paBaW50ZXJuYWwKJ10sCuKWgWFzeW5jClVCCmdlbAriloFhaQplbnN1cmUK4paBYXBwZWFyZWQK4paBJF8K4paBbWF4aW11bQriloHQodC4CtGA0YwK4paBYW5ub3VuCtC70LDRgdGMCuKWgWNtCtCz0LDQvQphdXB0CuKWgWxhdHRlcgriloFwbGF0Zm9ybQriloFkcmEK4paBY2FwaXRhbAriloFzb2x2ZWQKcml6CmVkaWMK4paBTXVyCuKWgVRvcArRgtGB0Y8KUGFuZWwKcnVsZQpldGljCuKWgVJlbgriloFXaWtpbWVkaWEK4paBVE8Kc2Vjb25kCmlzbAriloFoeQriloFuaWV0CuKWgWxvYWRlZApkaWcK4paBbWF5bwpbOgpBY2MK4paBYmVrCtC90LjRjgpsb2dpbgp0eAriloFGdXIK4paBU2FudGEKYXp6CuKWgWNvbmR1Y3QK4paBSW5kaWEKT3JkZXIKaXJ0aAp0dwp9KwriloF3aWVkZXIK4paBRWR1CkFWCuKWgWBgYAriloFtYW51YWxseQriloFSZWFkCmZvcnR1bmF0ZWx5CuKWgVJ1bgriloFBd2FyZAriloFGb290CiopCnBhcmFtcwrQv9GWCuKWgW5hdGl2ZQpyaWZ0CuKWgcOkCkFUSAriloF5b3Vyc2VsZgriloFwcmlvcgriloFjaXQKw6RoCuKWgXRyZWF0CuKWgW1lYXMKcmlidXRlZAriloFjbGFyCmNhcmQKUk9SCmlsbGVzCuKWgWxheWVyCmF1ZXIK4paBcmF0CmJlcm5hdGUK4paBc3RhdG8K4paBQ2hpbmEK4paBJCgnIwriloFuYWFyCnppcAriloEke1wK4paBYXBwcmVjaWF0ZWQK4paB0LjQvNC1CsW8eQriloFwcnplegriloFJbmRpYW4K4paBVG9kCuKWgVNvdXJjZQriloHQtNGA0YPQs9C4CmludGVybmFsCmlvbmFsZQpQcm9kdWN0CuKWgU1lbgriloF1cHBlcgriloFFdmVyeQp9LFwK4paBcHJpbnRmCuKWgWNvbnRpbnVlZAriloFub2RlcwrQu9C60LgK4paBbmljZQptb2R1bGVzCmVpZ24K4paBTWV4CuKWgUFjY29yZGluZwriloF1bmRlZmluZWQK4paBYmluYXJ5CmN1dApDdXJyZW50CmVkeQp9fXsKYmxlcwriloHQstC+0LkKc2NyaQplcW4KQ2hhbmdlZAriloFrw7Z6CuKWgXJlbW90ZQrQstC70Y8K4paBcXVlbAriloFhbGlnbgriloHQv9Cw0YAKU1YKeWVyCuKWgUNhbGlmb3JuCuKWgXBsYWNlcwriloFwcmltYXJ5CuKWgWNvbnYK4paBSnVsaQriloF2aXN1YWwK4paBU2VsZWN0CmF0b3J5Cj0oCmlzZXIK4paBaW50ZW50CnN1cgpjb250YWluZXIKaWNlZAriloFib2FyZAphc3RyCm9taWFsCtCy0LXRggrQt9Cy0LAK4paBY3J1CuKWgU9rdG9iZXIKc2F2ZQriloFncmVhdGVyCuKWgWlubgriloFwaWN0dXJlCuKWgdCi0L4K4paBb2J0YWluZWQKV2lraW1lZGlhCsO6YmxpYwriloFsb3JzCuKWgW1vbnQKb2JyZQriloFjaXZpbAriloFjb25zdHJ1Y3Rpb24K4paBV2VsdAriloFVbmRlcgp1bmRlcnQK4paBZWRnZQriloFMaXN0ZQpjc3YK4paBZXhwZXJpbWVudApsb2NhbGhvc3QK4paBRWRpdApncmVnCm92w6EK0ZnQsAptc2cK4paBR3JlZW4KRGlhbG9nCklkZW50CuKWgUpTCl57KAriloFzbMOka3RldApfX19fClByb2plY3QK4paBYmVza3JlCuKWgWJlcgriloF3b3VsZG4K4paBcmVhY3QKSGVsCnp3CuKWgVdhc2hpbmd0b24Kb3JpZQp0YXNrCuKWgWNhdGVnb3J5CuKWgWFydGlzdAphbm5vCuKWgW9vawphbW1lbgriloFNaW5pc3RlcgriloFkZWNsYXIK4paBS2V5CiwuCuKWgW1hY2gK4paBd3cKaXNlbgpGcmFuCuKWgdCg0L7RgdGB0LgK0LHQvtGACtGC0YDQuAriloFyb2NrCnF1aXMKbW9zCtC/0LXRgNCwCuKWgWVzdGVybmkK4paBZ29sZApXaW5kb3dzCiUlCuKWgXBhcnRpYWwK4paBd2VpZ2h0CuKWgXNwcgp9KS4K4paBZnJhbsOnYWlzCmZ1bgriloF0aG91cwpob2xkZXIK4paBZ29uZQriloHEjAriloFyZW5kCkRBCuKWgWFuc3dlcmVkCuKWgUZhbHNlCkJ1ZmZlcgriloFkYXVnaAouLS0K4paBU2hvdwriloFyZWN0CuKWgUtyZQpkcgpvc29waAriloF5aWVsZAp1cml0eQp0b1N0cmluZwphdmFsClBvbAriloFsb2NrCmltYXRpb24KYW50aWMKTG9jYWwK4paBYmVza3JldnMKaXTDqXMKZ3JpZArRg9GCCuKWgV97CtGB0ZYKRklMRQriloHQutC8CuKWgXNwZWFrCnN1bW1hcnkKcHJvcApqYXZhc2NyaXB0CnprCml6b250YWwK4paBdHJvaXMK4paBUm9kCnByaXNlCtGA0L7QstC+CuKWgW9kZAriloFnZXN0CuKWgXByb2R1Y2UK4paBd2FhcgriloFBdgpyaWJ1CtCy0LDQvdC90Y8K4paBZmluaXNoZWQK4paBYWRhcHQK4paBU2FyCnRleHRpdAriloFDZQriloFGYQpvc2VuCuKWgWRlcml2CuKWgXNoaXAK4paBb3BpbgriloFFdmVuCmdlc2NoCuKWgXN1cHBvc2UK4paBRmVyCtGB0LrQvtC1CuKWgXdvcmRlbgpzZXkKaGxpbmUK4paBVW5pb24K4paBLyoqCuKWgXZlegriloFDb2xsZWdhbWVudGkK4paBU29jaWV0eQriloFlY29ub20KxaHDrQpvaQriloFvcmllbnQK4paBVGVpbApyZW50CtC70LXQutGBCuKWgXNvbGlkCuKWgWNhcnQKKioqKioqKioqKioqKioqKgriloFjYWIK4paBTWVzc2FnZQpkb3RzCuKWgcOpZwriloF0d2UKYWdhCuKWgW5hegriloFNaWNyb3NvZnQK4paBdW5kZXJhcnRlcgpwcGVuCuKWgXJlY2VudAriloFuZXQK4paBcmVzb3VyY2VzClN0ZQouXAriloFTTwrQu9C+0LwK4paBY2VsZQriloFsaWMK4paBYmVuZWYKbGRvdHMK4paBc2VyaWFsCkludGVnZXIKY2xlcwriloFtaWxlcwriloFBbGUK4paBZW50ZXJlZAriloFUd28Kd2llCuKWgWluY2x1ZGVzCuKWgUVhY2gKZWxsaW5nCnF1ZXIK4paBRG9tCnBmCldTCuKWgXN0cmFpZ2h0CuKWgVN0YW4K4paBbm9zCsOtY3VsCmF0cm8K4paBQ2VudGVyCkZUCuKWgUluZ2EKaWxvCuKWgXd3dwpqc2ZpZGRsZQpuaWMK4paBRXVyb3BlYW4K4paBY29tbWVyCuKWgWdpcmwKdG90YWwK4paBU3RhcgriloFzdWdnZXN0ZWQKcGFsCuKWgXp3aXNjaGVuCtC/0LjRgdCwCklNCuKWgWhhbmRsZXIK4paBUHJvZ3JhbQp4c2wKw6FseQpCVQosLS0K4paBdmlkCuKWgWVzdGFibGlzaGVkCuKWgVNwaWVsCm9tZXRyeQp1bmVzCuKWgXNpdAriloFpbmhlcgriloFwdWlzCuKWgcOqdHJlCuKWgU1vc3QKSGVhZGVyCmluc2VydAriloFzaXN0CuKWgWZhdm9yCmRlc3QK4paBZW50aXR5CkNhbAriloFUaGVyZWZvcmUKREQKOzsK4paBRGV6ZW1iZXIK4paBUmgKaW1lbnRzCuKWgXJldHVybmluZwpzdG8K4paBVmFsdWUK4paBbGliZXIK4paBUmVzdWx0CuKWgWJpbmQKdm9pcgriloFUaW0K4paBTW92aWUKd2VnCmtldAriloHQuNGB0YLQvgriloFmcmllbmRzCuKWgWZuCuKWgcOpbAriloEmPQphcmRlbgpmZmljaWFsCuKWgWNvbW11bml0eQriloFhcGkKQXJncwppZXJlbgriloFkYW5uCm9tb3JwaAphZHIKbG9vcAp1bWFuCuKWgXZvdXMKYnN0CnN1Ym1pdApcfArRgtC40L0KQ29udGFpbmVyCmFza2V0Cj8pClNlYwriloFkcml2ZQpBc3MK4paBc3dlCuKWgWFtZXIK4paBbWluZQriloFIYW0K4paBYXZhaXQK4paBSG9uCuKWgWFwcsOocwriloFNYW5uCtGB0YzQutCwCuKWgWluY3JlYXNlCuKWgXR5CnNreQriloFhY2N1cgphcnRpY2xlCndlaWdodAriloFzZXgK4paBbGlzdGFkZQovKioK4paBZXN0w6EKfX0kCmFyZ28KZGVmaW5lCuKWgdGB0L7RgdGC0LDQsgpzZXNzaW9uCmFkcwrRgdGC0LLQuAriloFMYXcK4paBZGlhbG9nCuKWgWR1cGxpY2F0ZQriloHDqXAK4paBdm9jCmZyaQriloFncmVlbgriloFoaWRkZW4K4paBSXNsYW5kCuKWgWRpYWcKb3dlagpteXNxbAp0ZWlsCnLDpAppa2FuCuKWgUpvc8OpCmFsZWQKUnVudGltZQriloF0cmFpbgriloFEaXZpc2lvbgrQvdC40YYK4paBU3BhbgrQvdC40LzQsAopPVwK0YLQsNC9CuKWgXN0YXkK4paBZm9vCuKWgWFjY29tCuKWgWhlcnMK4paB0L3QsNGDCuKWgU3DvG4KaWRlb3MKc3RhdGljCuKWgXJlYWR5Cl1gCuKWgXZpc2libGUK4paBSG9wZQp1bGF0ZWQK4paBQ3VsdArRgdGC0YDQvgpDbwriloFzbWFsbGVyCmF0dXJhCuKWgXBlcmZlY3RseQpyZXEK4paBcHJvcG9zZWQK4paBZGVnbGkKU2VhcmNoCuKWgWljaApNYXgK4paBdm9sdW1lCmV4ZWN1dGUKZ3JlCuKWgXNwb3J0CnVkYWQKUFQK4paBUmVjb3JkcwriloFjb29rCuKWgWV4cGFuZArQsdGWCuKWgWFsdHJpCnBwZXQKYXJzZQriloF3ZXQK4paBQm9iCuKWgUZDCuKWgUFzc29jaWF0aW9uCnVqZQriloFmZWwK4paB0YHQu9GDCuKWgUJpZwovXApHZQp3aGlsZQp7KAriloFzdWZmaWNpZW50ClBvc2l0aW9uCuKWgXVuZGVyc3RhbmRpbmcK4paBbnVlCuKWgXJhegriloF5ZQpoZW0KTnVtCuKWgVByb2plY3QK4paBSXRzCuKWgWhhc3RhCmVuc28K4paBd2lyZQpSZXQKdWoKcHJvb2YK4paBcmVsZXZhbnQK4paBcGFydGlyCuKWgWFnbwppZmljYXRlCuKWgWRvbWluCuKWgWJveQriloFwbGFudAriloFlbmNvZGluZwriloF0aHJvd3MK4paBUm9jawp6b25lCmdhbmcKd2lkZ2V0CuKWgWludGVyZXN0aW5nCkRFUgriloFkZW1vbgriloFvZmZpY2UKYW10CsOkdGVyCuKWgVdoaXRlCuKWgXZlcnNjaAriloFkaWVzZXIK4paBTW91bnQK4paBc3R1ZGVudHMK4paBUHViCuKWgdCU0LUKaWphCuKWgUN5CuKWgUNhbGlmb3JuaWEK4paBYWJyaWwKw6RsbAriloHRh9C10LwKVFYK4paBbcOpcwriloFkZWNsYXJlZAriloHRjgrFkWwKYXBwYQriloHQkdC1CmVjaG8KbnVtZXIK4paBcG9zdGVkCuKWgdCy0LXRgAriloHQs9C+0LTQuNC90LUK4paBd2VhawriloFSZXB1YmxpYwriloFjaGFtcGlvbgplbnN1cmVtYXRoCnlvdXIK4paBT2JlcgriloFDZW50cmFsCmlzYQrQsNC90LQKeXkK4paBZnVsbHkK4paBU0QK4paBTGludXgK4paBU2NvdHQKcGFydG1lbnQKa29uCuKWgWNvbnRyYWN0CuKWgU9GCuKWgWFsZQriloFBbm4K4paB0L3QsNC0CmxhaAriloFOZXh0Cm9yZW4K4paBZGlzawriloFlZwphdHUK0LvQvtCz0LgK4paBZ2FtZXMKTGVmdAriloFsdQriloFmaW5pdGUK4paB0LrQuAriloFjcmFzaApwaGVyCmV4ZQpBVElPTgriloFicm90aGVyCkVuZwp0YXQK4paBSW50ZWdlcgrQvdC+0LzRgwriloFjb2xvbgppcXUKKSkuCml2aQriloFNZXRob2QKYXJ0ZW4KVW5pCnZlY3RvcgriloF3b29kCtGA0YIK4paB0JvQtQriloFzacOoY2xlCuKWgWdlbnQKfQ0K4paBY29udGVudHMK4paBY29tcGFuCkdvCuKWgWpvdQp1ZW50CkFzeW5jCnByaW50ZgriloFNb2RlbAriloFrZXB0CkFTRQriloFwcm92aWRlcwriloFBYmdlcnVmZW4K4paBR2FsbAriloFBbGYKU0EK4paBTWVtCuKWgWt0ZXIK4paBQnJ1CkFuZHJvaWQKKDoK4paB0KPQutGA0LDRlwpOZQpNaW4KYXRyCuKWgUhhbApkZWxldGUKb2RvCuKWgW7Do28Kw6huZQriloFjYWxjdWxhdGUKSnNvbgprZXlzCtC90LXQuQriloFoZW5jZQriloFvdwriloFMaWIKZW5vCuKWgUxvdmUKb3NpCndpZGUK4paBc2NvcmUKZnVsbArQstC+0LQK4paBZGV0ZXJtaW5lCuKWgXNwYWNlcwrQu9C+0LLQsAriloFwZXV0CsOpcmFsCsOzxYIK4paBYXBwb2ludAriloFUdwo8PwriloFPcmRlcgriloFob3AKcmFuZG9tCmNhY2hlCuKWgWRlc3Ryb3kK4paBcmFjZQpUYWcK4paBcmlkCuKWgW5lZ2F0aXZlCkNhcgplbnNpb25hbApkawriloFjcm8K4paBVEhFTgriloEkLgplbnNrCk5FCkhPCuKWgWtsZQpvc3BpdGFsCmt0ZQpmw6lyZW5jZXMKdWRlcwpJUgpvdGlvbgriloFSZWFsCuKWgUZlYnJ1YXIK0LjQvQriloFPbGQK0LrQvtCz0L4KbGVpY2gK4paB0YAKw61hbgriloHQs9CwCmNpZGUKbGFiCuKWgXB1bGwK4paBJy8KTG9uZwosJAriloFhcHByb3ByaWF0ZQriloHQsdGL0LvQsApmw7xocgriloFNZWRpYQriloFtYW5uZXIK4paB0JPQtQpkZXNjcmlwdGlvbgpCZWFuCuKWgUxhcgonXTsK4paBcmVsYXRpb24K4paBU29ycnkKaGFyCmNwcAriloFLbwriloFleGVjdXRpb24KaW5vcwriloFidWwKZ3JhZGUK4paBTXUK4paBcGlsCndyaXQKaWZpY2F0aW9ucwppbmVzZQriloFQaGlsaQpkeAriloFsZWFkaW5nCuKWgUpvdXJuYWwKb3ZlZAriloFjb250cm8K0L3QvtCy0LAKWWVzCuKWgWNoYW5uZWwKKSksCmlzdGVuCmFrYQpUb1N0cmluZwptYXMK4paBZXR0CuKWgWZvcmNlcwp1bGF0aW9ucwriloFDYWxsCuKWgWV4cGxhbmF0aW9uCm9yaW5nCkFUQQpjaHRlcgp3aGVuClZDCuKWgUphaHJoCkNhc2UK4paBY29tbWFuZHMK4paBcmljaApidXMKRmUKbWJveAriloFyZWNvbgrDsW8K4paBc2hhcGUKb3d5CmVudHJ5Cml0YWJsZQriloFlbGVjdGlvbgrRlNGC0YzRgdGPCuKWgXByZXAKdsOhCuKWgWluZmluCmxvdAriloFib29rcwriloFVU0EK0LvQuNC9CuKWgXBvbQriloFuYXMK4paBdGFncwriloFleGVjdXRlZAphaWxsZQpsdW5nCuKWgUphdmFTY3JpcHQK4paBYmFsbAriloFhaW5zaQriloFQcmkKeyQK4paBVU4K4paBUmFtCuKWgWhlYXIK4paBVWJ1bnR1Cj4oKTsK4paBcHVyZQriloFlbWJlZAphw6fDo28KY29udHJvbGxlcgriloFtYXJyaWVkCuKWgUZvbApmYW1pbAriloFwcmVjCuKWgXJlY3VycwpwYWQKaXN0cmF0aW9uCuKWgXJlc3BlY3RpdmVseQpbJAphdXRvcgriloFncmF2CmllcmEKYXppb25pCuKWgUJ1bAriloFBdXN0cmFsaWEKbW9uZAriloFUcm8K4paBRWxlCnBhY2thZ2VzCm1zZG4K4paBQWxzCuKWgXByenkKQVJUCuKWgWNoYXJnZQriloFhcHBsaWNhdGlvbnMKVW5pdAphcmVuCuKWgXN1ZGRlbgpvbWV0ZXIK4paBZG90CmFjamkK0LrRgtC+0YAKaW1pbgplbmluZwriloFkb25kZQriloFIbwp0cmVlCm1iCuKWgWRyYWcKYWplCuKWgWludmFsaWQK4paBZmluaXNoCmxhaW0K4paBZmVlZAriloFOYXAKcm9vbQppbWFnZXMK4paB0YHQsNC5CuKWgXN1Y2MKaWZmZXIK4paBYcOxbwriloFjdWFsCtC80LXRgNC4CkRSCuKWgUJpbGRlcgrQsdGA0LAKcmFpdApwYW4K0LXQvdGMCuKWgWRpc3RpbmN0CuKWgUtuCsO2bmlnCmFuY2VkCuKWgWxvYWRpbmcK4paBVGVjaG4K4paBU2VsCm11cwriloFyYWlsCuKWgXN0dWRlbnQK4paBbm90aWNlCuKWgXNsYQriloHQlNCwCuKWgWd1YXJkCuKWgURheQrQstCw0LvQuApPcHRpb24KYWlzb24KaXBwCuKWgUp1bgriloFmZWxsCuKWgWFic29sdXRlCtC+0LLQtQpkZWJ1ZwriloFTdWQK0L/Riwp1Z2lucwriloF2aWV3cwpsYXkK4paBc3VycgriloFzdG9vZAriloHQstGWCnNlbGVjdGVkCtCz0ZYK4paBYXR0cmlidXRlcwpmaW5hbAplbmRhCuKWgUJvbgpuZXJzCuKWgVdlcgpidXIKaXR0ZWwK4paBbW92aW5nCuKWgVBsYW4KaXNjaGVzCkphdmEK4paBYmFzaXMK4paBQnVzCuKWgUF1CuKWgUlsbAriloHQstGA0LXQvNGPCuKWgdGG0LXQvdGCCmhhbmRsZQrRgdGC0YPQvwriloFGYXIK4paBb3JhegpvY3IK4paBc2VpdApvbmRlcgrQtNC+0LwKOi8KY2hvcgriloFUb3duCuKWgWRlZmluaXQKcmVhY3QK4paBcGllY2UK4paBS2FybApDSQriloFBcHBsaWNhdGlvbgp1bnRlcgriloFmb3JtZWQK4paB0L/RgwpCbwriloFEYW5pZWwK4paB0L/Qu9CwCkJvZHkKfSkkCuKWgdCx0YvQu9C4CuKWgWVhcnRoCtCz0LvQsApUaGVyZQriloHRgdGC0YDQsAriloF2aWxsZQriloFjZW50cmUKKQ0K4paBaGVscGZ1bAriloErKwriloFDRwppemlvbmUK4paBR2FtZQriloFXaGljaAriloFwaXAK4paBUG9ydHVnCkRTCuKWgWRlc2NyaWJlCuKWgWNoZWNraW5nCuKWgW1hbmFnZXIKQk8K4paBQnVuZGVzCmJ1Y2gK4paBZGVjaWRlZAriloFKYWhyaHVuZGVydAriloFmaWYKZWZmaWNpZW50CmFuY2kKYnJhcmllcwriloFmYWlscwriloFrZXJuZWwK4paBR2wK4paBTmFjaW9uYWwK4paBcHJvY2VlZAriloFmdWVyCuKWgWxpdmluZwriloFzdWNjZXNzZnVsbHkK4paBZmFzdGVyCuKWgWNvbnRyZQriloFwcmlzb24KT1JUCmhlbHAK4paBYXV0b3IKxYJhdwphasSFCuKWgUFybQriloFwcm92aW4K4paBbmFhbQovIwpzZWQK4paBZ2VzY2gK4paB0LzQsNGACmVzawp0ZXJtCuKWgVRleAppcmluZwriloF0b29scwpQREYK4paBdWx0Cmlzc2Vuc2NoYWZ0CuKWgWNvdWxkbgpkaW5nCkRlcAp7LQriloFwcmVkaWN0CmFudGFnZQriloFMaWtlCuKWgdCR0LgKdG9vbHMKZXN0cmEK4paBa2kK4paBSmltCnN0YXIK4paBcmVtYXJrCsOzZwpuYWJsYQriloFBbHRob3VnaAptb2RlCkhvc3QK4paBc3RyYW5nZQpOb25lCmJsYWNrCuKWgUZlc3RpdmFsCuKWgUlTCmFuemEK4paBKC0KaWNrZXQK0LrQvtC70LAK4paBSmVzCuKWgWZsZXgK4paBw4AK4paBTmV0d29yawriloFFWAriloFlbmVybwoh4oCdCuKWgU9ydAriloFhbG9ycwriloFPcmlnaW5hbAriloF6bwrQvdGL0LzQuAriloFzcGwKRHJhdwp5b25kCuKUgOKUgAriloFPdAriloFkcmFtCuKWgWRpdmlzaW9uCuKWgWVmZmljaWVudAriloHQk9CwCuKWgXZpZXIKbmFrCkxTCuKWgXNwaXJpdAp6ZWljaG5ldAriloFkaWNpCmNsZWFyCmNvcHkKeWFyCuKWgdGA0L7RhtGWCnVzcXUK4paBbm91cwriloFibGV2CtC20LTQtQpBcmcK4paBcGVyZm9ybWVkCuKWgU1ha2UK4paBQ2Fyb2wKZXR0bwriloFTYW5kCuKWgURpc2MKRW5jCnJlcm8KaGFzaAriloFmb2N1cwriloFhdHRlbnRpb24K4paBYWdyZQriloFkaXZpcwriloHQsdGL0LvQvgriloFlagriloFtYXJjaAriloFwaGFzZQrDrWFzCuKWgXBoaWwK4paBUGFwCuKWgXJpdmVyCuKWgWNhdXNlZApwbHVnaW4K4paBVGVhbQp1bGVyCuKWgSQoIiMKaWVqCklTQk4KbmFtCuKWgWZpZ2h0CnZpZAriloFMdWQKU2VsZWN0ZWQKOkAiCuKWgVBvZAriloFhbm7DqWVzCmFyaW9zCuKWgWRldXRzY2hlcgriloFOQQriloHQuNGOCuKWgWRpY3Rpb25hcnkK4paB0JvQsAriloFUcmkKw6huCuKWgXBvbGl0aWNhbApyaWRnZQphdHRlbgriloFjaXJjbGUK4paBdHJhbnNwb3J0CmVtYXMKRkMK4paBcmVwbGFjZWQK4paBQXVkCmlza2EKQ29uZmlndXJhdGlvbgriloFzb29ydAriloHQndC1CuKWgXNlcXUKUFJPCuKWgWJ1ZAriloF7ewpsaWXDnwriloFNYXMKZGVycwp1c2FtbWVuCmVzYQriloFMeQrQstGA0L4KbWFjCuKWgdC40YHQv9C+CuKWgXN1Ywp1eQriloFpbGx1c3RyCuKWgXByaW1lcmEKaWxhdGlvbgriloFzdG9yYWdlCuKWgXBhcmFtcwprYXoK4paBdGVybWluYWwK0YDQsNC70YwK4paBaG9sZHMK0LvQvtGB0YwK4paBbmFkCuKAnS4K4paBb2N0dWJyZQpidWwK4paBaHVzClVMVAriloHDqWdhbGVtZW50CuKWgU1pbGwKxYJhZAriloFjb250aWVuZQoiPwriloE+Pj4KUXVlCsKgwqAK4paBcGxhaW4KYXRpdmEKb2NrZXIKTmFtZXMK4paBSnVkCuKWgWFncmVlCuKWgUdlbWVpbmRlCmxhcmUK0LrQsNC30LAK4paBc3RhcnRzCuKWgXByaWNlClRhcmdldApjdXMK4paBSW5zdGVhZAouOwriloFhbHRlcm5hdGl2ZQriloHQstC70LAKSUUK4paBb3JnYW5pegppbnUK4paBY29tcGxldGVkCuKWgWNhcnJ5CmF0b20K4paBZGVwZW5kaW5nCuKWgU91cgriloFpbnNwCuKWgSZcCmFpbHkKaXJlY3Rpb24K0YTQsAriloFkZWZlClRBQwriloFkZXNpZ25lZAriloF2b2lyCmJyZWFrCuKWgXBhcnRpZQriloFKYWhyZW4K4paBc3R1ZGlvCuKWgWpvdXIK4paBTm90ZXMKZmlyZQpob3VzZQpzdWNjZXNzCuKWgUp1YW4KSlMK4paBQ3VzdG9tCuKWgWJlc2NoCuKWgXN0YXRlZApib290c3RyYXAKw7Z0dApvenrDoQriloFDT04KaGF2CuKWgXNsZWVwCmVkYQpob3QKw6FuZAriloFTeQriloF0ZW1wcwphbWFyCuKWgXNjYWwK4paBYXN0CuKWgW9wZW5pbmcKY2xpcHNlCuKWgXByb2dyYW1taW5nCuKWgWxldHRlcnMK4paBcHJvZmlsZQpuYWgK4paBYmV5b25kCuKWgUZ1cnRoZXIKZmFjZXMK4paBY2hhcnQK0LfQtNCwCmFpZ24K0L3RltC5CuKWgVJvbArQvtCy0LDQvdC+CnRlcmlvcgp3ZWQK4paBaGVyc2VsZgriloFuZwphbmd1YWdlcwp9PVwKeW5hbWljCuKWgWp1ZwriloFFeGFtcGxlCuKWgSjigKAK4paBcGxheWluZwriloF1c2FnZQriloFtYW5hZ2VkCuKWgU5hdHVyCtGC0LXRgNC4CuKWgUV0CmVyaWEK4paBZGF1Z2h0ZXIK0L3QuNC10LwKRnJhZ21lbnQK4paBaG9sCkZsCtC+0LPRgNCw0YTQuAriloFpaG4Kw7xoCmluc3RhbmNlCuKWgWNvbXVuCuKWgXRydXRoCuKWgdGB0LDQvNC+CuKWgWltcGxlbWVudGVkCuKWgWFueXdheQriloFDcm8K0YTQtQpHQwp1YnVudHUKdHlwZXMKw6pzCi5+XApmb2xkCuKWgWpvaW5lZAo/PwriloFtw6kK4paBd2lsZArQutC70Y4Kcm93c2VyCuKWgUhvbWUKc2tpZWoK4paBSk9JTgriloFqdWluCmhvZgriloFkYXRhc2V0CtC20LTRgwonKSkK4paBbWllanMKQVBJCuKWgWVkaXRlZApvb2xzCuKWgXNlZWluZwppamQK4paBcHJvY2VkdXJlCuKWgUJyYXMK4paBc2lnbmVkCuKWgWV4dGVybm9zCuKWgWRpc2FwcAriloFEaXJlY3QKY3ljCuKWgWNvbnN1bHQKw7ZyZApXaWRnZXQKY2lvdXMKc2VjdAriloHQlNC4CuKWgXdpbmQK4paBQXJjaGl2YWRvCmFtbArRgdGBCldoCmtiZAriloFBcm15CuKWgXN1ZmZlcgphcnRpZmFjdAriloFyZXNvbHZlCuKWgVNwb3J0CuKWgdGG0LUKaWRhcwriloF0YXgKaWRpCuKWgWFjdGlvbnMK0L/RgNCwCnB1w6lzCuKWgW5hagpGYWxzZQriloFjaGFuY2UK4paB0YLQsNC60L4Kw6RkCuKWgWRvbAriloFlbnYK4paBYmFzaWNhbGx5CuKWgUNvdW5jaWwKenRlCuKWgWRpc3BsYXllZApuaWwKY29tcGxldGUK4paBTGVtCmlhbmNlCuKWgdC+0YHQvdC+0LIK4paBZGVwZW5kCnBsb20KZW5zdXMKdXRzCuKWgUhvdApiaXRyCuKWgXZhbGlkYXRpb24KYWJiCuKWgdGC0YDQtQprbQp6ZArDtmZmCldFCuKWgWludGVyZXN0ZWQK4paBeyIKYXJvCuKWgWNvcnJlbAriloFkZWRpYwriloFsaXN0cwriloFCaWJsaW9ncmFmaWEK4paBZWFybGllcgpwcm9ncmFtCuKWgXByZW1pw6hyZQpmcm9udApUYWIK0YHRgtCy0YMKZHJvcAriloFmZWFyCuKWgUVubGFjZXMK4paBQ2FwdAriloFyZWFsaXoK4paBaGFsCuKWgWluc3RhbmNlcwriloFzdXNwCmlsbGluZwolOwp7fQp8fAriloFwYXJ0aXRpb24K4paBQnVpbGQK4paBd28K4paB0J/QtdGACuKWgWRpcmVjdG9yCuKWgVNpbgrRgtC40Y8KcnNnCm91dmVyCuKWgW5lYXJseQpvZGEK0LrRgtC40LIK4paBc2lyCklNRQriloFqYW52aWVyCuKWgVdpbgpCdWlsZAppZXVycwpJTkUKZG91YmxlCkxhc3QK4paBcG9saWN5CnN0b3JlCuKWgW9ic2VydmVkCuKWgWZhbWlsaWUKbmljYQpyZXkK0LfRjAriloFZZWFyCuKWgWRldmVsb3BlZAriloFJbnN0aXR1dGUK4paBcmVwbHkKQ29tcGxlCmljaWFuCuKWgUd1ZXIK4paBZGFsbAriloFkZXNwCuKWgUZvb3RiYWxsCkVtcHR5CmNrZW4KdW5kYQriloFVcgriloFpZwriloFBdGwKYXV0aG9yCuKWgUJvbAp6aWcKbmF0CsWhdApzZWN1cml0eQpvbmljCuKWgXBlcwppdGFuCuKWgUV4dGVybgpqYW4KVkFMCuKWgdC40LwKYm9sZAriloHQstCwCuKWgdCc0L4K4paBZGlzcHV0CuKWgXRyaWNrCuKWgXBlZAopXnsKaW50bwpTaW0K4paBcGFyYWxsZWwKZm94Cm5vcm1hbAppbmVudArQv9C10LTQuApob2xkCk9LCuKWgWNoZW0K4paBdHdpY2UK4paBdXNlcm5hbWUKacSNCuKWgXJlcHJlc2VudGF0aW9uCuKWgWpvdXJuYWwK4paBOi0K4paBYmF0dApcJQriloFjZXJ0YWlubHkK4paBRXhjZXB0aW9uCmVwcwpzaG90CmF0ZWd5ClNob3cK4paBQ2FybApyaWcK4paBcmVwb3J0ZWQKYm90dG9tClRGCuKWgUZyYW5jaXNjbwpuYXAK4paBQ2hhbXBpb25zaGlwCuKWgWNvdXJ0CuKWgXNvdXJjZXMKaW91cgriloFjb25zZXJ2CmRpY3QK4paB0KDRgwpJQgriloFWZQriloHihJYK4paBRVIKIikpOwriloFQb2ludAphemluZQriloFpbnRlcm5ldArQtNC90LAK4paBY2FycmllZAriloFGaWVsZApheGlzCuKWgVN1bgriloFhdmUK0L/QuNGBCtGP0L0KYXN5CuKWgWp1bGlvCuKWgWRlcHVpcwriloFzdWdnZXN0aW9uCltbCuKWgUFyY2hpdmUKxJlwCuKWgVByYQpyZWgK4paBZGVtb25zdHIK0YTRlgpjbWQK4paBd2FzbgriloFwaG9uZQp1cGxvYWQKYXlhCtGC0L7RgNCwCmxpbmVzCuKWgWluZHUK4paBdm90CuKWgWVzcGEK4paBYmluCuKWgdC/0L7RgdC70LUKcGxhbgriloFqdW5pbwpvcmlhbApmcmVlCnN0ZXJyZWljaAriloHQtNGDCuKWgWxpbmtlZAriloFlbmFibGUKUEMK4paBZGVuc2l0eQriloFFZ3kKeW8KZW5kcmUK4paB0YHRigriloFpdGFsaWFubwriloFBUgriloFQZXJzCmbDqXLDqXMK4paB0YHQutC70LAKVmFyCuKWgU9uY2UKUmVkCmJ1ZmZlcgriloFFbnRlcgriloHFoAppbWllbnRvClN0b3JlCuKWgWhlYWx0aAp2YXQKSVNUCk9oCuKWgWt3CuKWgXJpdgriloFzb21ld2hlcmUKb2dyYWZpZQpwcml2YXRlCtC60YLQuAriloFkZWxheQriloFIdHRwCmpvYgpyYWVsCmVtcG9yCuKWgWRpY2llbWJyZQrDqnRlCtGG0YMK4paBY29tbWl0Cm9zbwpWYWx1ZXMK4paBaGVhZGVycwp0cmFuc2Zvcm0K4paBcHJvY2Vzc2luZwpyw6UK4paBQWgK4paBTm9kZQotLS0tLS0tLS0tLS0K4paBZmFpcmUK4paBaHVuClBsYXllcgriloFyZXZpZXcK0LPQtNCwCuKWgWxpbWl0ZWQK4paBUHJvcGVydHkK4paBc2VydmUKcmlhZ2UK4paBTWFzdGVyCuKWgWthbm4KY3JldGUKcGhlcmUK0ZHRgAriloFjaGllZgriloFzY2VuZQpraW4K4paBdW5pZm9ybQriloFmZWJyZXJvCiJ9CmlsbG8KSVRFCm91dmVsCnVzZXBhY2thZ2UKZW50aAriloFxdWlja2x5CkxhbWJkYQp4ZXMK4paBY2VsbHMKcm9nCmFtaW4K4paB0JzQsNGACuKWgW1heW9yCnBsYXllcgorKzsK4paB0J3QsNGB0LUK4paBc2FmZQriloF2ZWxvYwriloHQvtCx0YDQsApEYXRhYmFzZQpuZWgKVmVydAriloFmbGUK4paB0YTQvtGACuKWgWZvcmVpZ24KQWJzdHJhY3QK4paBbWFnbgriloFtb2RpZmllZAriloFtaWxpdGFyeQriloFtb25kZQriloFBY3Rpb24K4paBYmFuawpTZXJpYWwK4paBY29udGludW91cwriloFnZWwK4paBcGh5c2ljYWwK4paBaW50cm9kdWNlZAp1dHVyZQpyaWNrCuKWgXByZXNlbnRlZAriloFQcm92CuKWgUJvdGgKUG9zCnN1cGVyCiYjCuKWgWZpbmRpbmcKbmVsCnVuZGUK4paBZnLDpW4Kc2tpbQriloFIaWxsCmZuCuKWgUNhbmFkCuKWgWludGVuZGVkCm96esOhZsOpcsOpcwriloFqdWlsbGV0CuKWgVdhcnMK4paBc3VjY2Vzc2Z1bAriloFjaGFyZwppZWxlCm9tZXRoaW5nCm9rdQpmZXRjaAriloF9fQpiYW5rCm9wZXJhdG9ybmFtZQriloFDb2xvcgriloFDYXJkCnR1CuKWgSIsCndpZAriloFnZXAKWE1MCj09PT09PT09PT09PT09PT0K4paBVmlyZ2luCsOkaHJlbmQKbGljYXRlZApEaXIKemVybwriloFLYWwK4paBUGFydHkK4paBw6UKcHJpY2UKZG9uCuKWgXdhcm5pbmcK4paBQmFkCuKWgVN1cHAK4paBTGlnYQriloFQaWVycmUKUmVjb3JkCnVsYXRvcgriloFSb21lCuKWgXRoZW9yZW0K4paBZW50aXJlbHkK0YHQutC40LwKaGV0CuKWgWRvcG8KTmV4dAptbHVuZwp3aWcK4paBQXRoCuKWgVNvdQpsaWNoZXIK4paBc3Vkbwplc3RzCtGF0ZbQsgriloFzZXB0aWVtYnJlCuKWgW1pY3JvCuKWgXRyb3AKZml0CkNvcmUK4paBUmFkaW8K4paBT3JnYW4K4paBUG93ZXIKQ0YK4paBTGFzdAriloFvcHBvcwriloFvZmZzZXQK4paBcmVnaWEK4paBbWluaW11bQriloFoZWxwZWQKYW5kb24KaWZ5aW5nCnJ1aXQKZW5zY2hhcHAK4paBYmVyZQpWTQriloFBd2FyZHMK4paBYWdyCnlub21pYWwKZW5jZWQK4paBZGV2aWNlcwriloFib3QK4paBZmlybQriloF3cml0ZXIK4paBcmluZwouLQppc3Rlcwpsw6QK4paBbWVsCmVudGF0aW9uCuKWgVNjaHcK4paBbm9tZQriloFwb2JsYQriloF3b2oK4paBdWwKZW50bwrRi9GFCuKWgXJlc2lzdAriloFyZW1haW5zCuKWgUNhCmHDsWEK4paBQ291cnQKdXRhYmxlCmVudGlhbGx5CuKWgXRyYXQK4paBVmlzdWFsCuKWgXJlc3RyaWN0CuKWgXByZXZpb3VzbHkKY2F0aW9uCuKWgdC+0YHQvgriloFNeVNRTApmw7ZyCmNhbGEK4paBY3VsdHVyZQpsaXZlCuKWgWFjY2VwdGVkCkRpZAriloFob3VzCuKWgXNlbGVjdGlvbgriloFkZWNyZQptYXJnaW4KdXJiCuKWgUluYwriloFNYW55CmlidAriloFzdWNjZWVkCkJpbmRpbmcKY8OtCuKWgVJvZwriloFzaG91bGRuCmNsb3VkCuKWgWR6CtCy0LDQsgriloFwaXgKc21hbGwK4paBcHJvamVjdHMK4paBT0sK4paBbGF0ZXN0CuKWgXJlZmVyZW5jZXMKUHJvZ3JhbQriloFlcnN0CuKWgdGP0LoK4paBa2FtCuKWgUNhbWIKZWxsdArDtmQKbm9uZQriloFqdXNxdQpraW5nCuKWgVBlZAphc3NlcnQKQ1MKcml0bwplc3NhCtC70YzQutC+CuKWgVZvbgriloFFZHdhcmQK4paBaW1wb3NzaWJsZQpucAp3b3JkcwppZWx0CuKWgVBhZ2UKbGVycwriloFwaWVyCuKWgdC+0LHQu9Cw0YHRgtC4Cml0dGVlCuKWgShbCuKWgXRydXN0Ck5HCnJlZHUKPDwKcmlhbAriloFwcm9kdWN0cwriloFFcm4KcmnDqHJlCtCz0L7QsgriloFSZWljaAriloFSb2FkCuKWgW5lc3RlZApEaXNwbGF5CuKWgXN0cmVuZ3RoCm9ncmFmw61hCuKWgWFubm91bmNlZAriloFTY2llbmNlCuKWgdGA0LDQudC+ClBhcmFtZXRlcgriloFUYXNrCnVtZW50cwriloFhZG9wdAriloFPbmx5CtGO0YLRjAriloFjbGkK4paBbGVtCnN0b29kCuKWgUZJCsOqbmNpYXMKcG9uZW50cwpdJApjb21tZW50CuKWgXlhCnNob3VsZAppa2UKdGltCmVsbGlnCuKWgXNlbmRpbmcK4paBYWpheAriloFub3ZpZW1icmUKdW1lcwriloF3ZWl0ZXIK4paBRGFucwpvcHAK4paBc2VwdGVtYnJlCm90aW1lcwp6xZEK4paBZXAKdmVyZQriloFvaAo6PQriloFTb25nCuKAnSwK4paBdml2CuKWgXF1ZXJpZXMK4paBdsOhCuKWgWTDqWNlbWJyZQriloF1bmFibGUK4paBZXJoCuKWgWAtCuKWgUxlZQriloFlcnN0ZW4Kw7R0CtGB0YLQstC1ClRTCuKWgWZyYWdtZW50CuKWgXdpZGUK4paBc3VmZgriloFkdXQK4paBVmVyZQrRltGBCmFkaW5nCmllZ28KaWNhZ28K4paBQXJnZW50Cm9yZXIKZW5uZXMK4paBTGViCmxpbnV4CmFjaW5nCuKWgWJyb2tlbgp0cArDrW8KYWJldGgKaXN0YXMKZ2V3CmnDqG1lCmNhcwriloFwcmVjZWQK4paBRGFsCuKWgWNvbXBhcmVkCmVxdWl2CmlsbHkKdGVlbgriloFDb25zb2xlCuKWgXN0cmljdAppdGFpcmUK4paBRUQKZW50aWFscwriloFwZXJtYW4K4paBdG91cwriloFnZW1lCuKWgWV4dHJlbQriloHQvtC60YDRgwprZwriloFoZWF2eQriloFhdnJpbAriloFhbnRpCuKWgW9jdG9icmUKdXRmCmhlbG0KYW1wbGVzCuKWgShfCmFrZW4K4paBZGVhcgriloFvcGluaW9uCuKWgWZpc2gK4paBQWxleGFuZGVyCml3CtC40LwKY2FkZW0K4paBcmVmbGVjdAriloHQtNGACuKWgXRyaWIKY29tbW9uCuKWgWNsZWFybHkK4paBc2FmCj0iQCsK4paB0JzQvtGBCtGB0LjRgtC1CmVxbmFycmF5Cm51bmcK4paBcmVsYXRpb25zaGlwCuKWgVNlbQriloFraWxsZWQKdGVkCnVubwriloHQu9GWCuKWgXdpZAphbm5pbmcK4paBcGFuZWwK4paBTGViZW4K4paBcnVieQphbnNpb24K4paBYXJlbgp0YWJ1bGFyCmFsZXQKfSQkCuKWgUxha2UK4paBc3VpdGUK4paBbWlub3IKSG96esOhZsOpcsOpcwriloF4bWxucwpESVIKZHJpdmVyCmludHMK4paBdmljCkFORApwcmltCtGB0YvQu9C60LgK4paBT3gKVEMKcml2aWFsCmF0aWUK4paBZWlnaHQK4paBY29uZmxpYwphbmdlbAriloFCZWdyCuKWgWV4cGxpY2l0bHkK0Y7RgtGB0Y8K4paBRGV2CnJlbmRlcgriloFyZXByb2R1CuKWgWNyw6kKR3UKTUIK4paBa8O2bgriloFyZW1haW5lZAriloFrbArRhdC+0LIK4paBYnlsClBoaQriloFkZXRhaWwKamF2CuKWgW1vdXNlCkJhcwppxJkKYXNzZXIKaHMK4paBc2hpZnQK4paBw7psdApyYW5kCuKWgWJ0bgpyYXoK4paBcHVsCuKWgXN0YXRlbWVudHMKZmlsZW5hbWUK4paBcHJvbXB0CsOpbMOpCmlregriloFTdXMK4paBZGVidXQKU3RhdApmb3JtcwriloFIZWluCnN0YWR0CmVubmlzCtC/0L7QuwphcmFudGUK0YbRltC5CuKWgXF1ZXVlCuKWgXJlY2kK4paBc3RhCnluY2hyb24KY2VudGVyaW5nClNvbWUKR3JhcGgK4paBdGVzdGVkCuKWgUt1bnN0CtC+0LwK4paBTm90aGluZwppZXUK4oCcLgpCdW5kbGUK4paBb2ZpY2lhbAphbGxvdwriloFSZWFjdAriloFMaWJyYXJ5CmJsdWUK4paBdmVydwriloFwYXJlCuKWgUZyaWVkcmljaAriloFhd2FyZQpFeHAK4paBZWZmZWN0cwriloHQs9C+0YDQvgpsb3BlZGlhCuKWgVZlbgpyYWxlCuKWgUZpbmFsCuKWgXByb3BvcwpsYWNlbWVudAprdGVuCuKWgW5vdmVsCm9ydGVyCuKWgUdlcm1hbnkK4paBZGphbmdvCuKWgXRyYW5zaXRpb24K4paBaGFwcGVuZWQK4paBYmVhdXRpZnVsCuKWgW5laXRoZXIK4paBbGlicmFyaWVzCuKWgWhpZGUKYWxnCuKWgWFzcGVjdAriloFmb3JnZXQKY2FkZW15Cm9udGUKcmVmaXgK4paBY2xvdWQKbmVkCmNkb3RzCnJlZ2lzdGVyCm55bQouKToK4paBSmV3CuKWgXRyw6hzCtC90LjRh9C1CuKWgURvcgriloFwcm9jCuKWgWdhbgriloHRlAriloFTYXYKdsOtClNldHRpbmdzCuKWgVZhcmkK4paBY291cnMKUm8K4paBY29uagriloFyZWFzb25zCuKWgXJlYWRlcgrQu9C10LrRgdCw0L3QtAppY2F0ZQp9KSwK4paBdGFza3MK4paBUmF5CuKWgXJpYwpLZQpvbmllCnJmCilbCuKWgXN1YnNlcXUK4paBVHVybgriloFWSUFGCm1hdGhzZgpIRQriloFkZWNsYXJlCuKWgXByb3RvY29sCuKWgVBDCtGG0LjQvtC9ClZpZXdCeUlkCuKWgWFuaW1hdGlvbgriloFjb25mdXNlZArQstC40YcK4paBZW5hYmxlZApvd28Kw6FzdArDtnQK4paBbWFuZAriloFSYWlsCmZpZWxkcwriloFLYXAK4paBYWxnZWJyYQriloHQodGDCmbDqXJlbmNlCuKWgUN1cnJlbnQK0YHQvdC+CuKWgUxpbQpQYXJhbXMK4paBQW50b25pbwriloF0dgpsYXRlCmlmZXIKRW50cnkK4paBU2VydgriloFtdXNpY2FsCuKWgXRyYWNlCuKWgXNjaWVudApmaWMK4paBZm9yZ290CnZpZGVvCuKWgW9sZGVyClRyZWUK4paBdW5zCtC90LjQutC4CuKWgUV1cm9wYQriloFad2UK4paB0LHQtQriloF2ZWMK0LbRgwriloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloEKTWF0Y2gKc3BhbgriloFibGFuawriloFzcMOkdGVyCuKWgVR5CuKWgWRpY3QKw7FhCuKWgWNvbmZpcm0K4paBdsO9CtC30LDQvQpSZWwKZmlsbQriloFSb3QK4paBSHkK0LrQsNGFCuKWgWRlbWFuZAriloFtaW5pc3QK4paBTWFkcmlkCuKWgXVzdWFsCnNwaWVsCmVyb3MK4paBdHV0b3JpYWwK4paB0KHRgdGL0LvQutC4CnN5cwrRhtC40LDQu9GMCuKWgXNwcmVhZAriloFjb252ZXJzCuKWgXJvbGwKYXJ0aWZhY3RJZAriloFOdW1iZXIK4paBc3ltbWV0CuKWgU11bHQKZXhwZWN0ZWQK4paBYXhpcwriloFtYXRjaGluZwriloFmb29kCmdyb3VwSWQKTWFwcAriloHRgdCy0Y8K4paBdmVuZApGb3VuZApvdHRvCkNhdApjcml0CmlzdGVudAriloFkcmVpCuKWgWVuZGVkCuKWgVRlbGUKY29tcG9uZW50CuKWgWludm9sdmVkCuKWgUVzdGFkb3MK4paBZGFuZ2VyCuKWgWNoYWluCuKWgVByb20KaG9tCuKWgXBvbMOtdApjb3AK4paBbmFwCnJpZgpwbGVtZW50cwriloF2ZW50CmFubmEKYW50ZWQKZGF0ZWQKYW50aAriloF0aHJlYWRzCtC30L7QstCwCuKWgdGB0YLQsNC90L7QsgriloFlZXJzdApidWYKaGVpZAriloFSdQriloFQcmltCuKWgW1pZ3IK4paBVW5pZG9zCuKWgWFyYml0cgriloFyb21hbgpvdW50cnkKdWx0dXIK4paBS8O2bmlnCuKWgWFubm90CmFjaGluZwriloFIYXVwdAp1bWluCuKWgWhlbQpja2V0cwpiYXUKZWN0aW9uCmVmdAriloFwYWNrYWdlcwriloFLdXIKdGh1cgriloFwYXlzCmxpYW1lbnQK4paB0JHRgwriloFjYWRhCnBvaW50cwpvY2tldAriloF2ZXJiCtC70LXQtQriloFzdWJtaXQK4paBc2FuCnJ1YnkK4paBZWFzdAprb3YK4paBVmVybGFnCuKWgXNwb3QKcHBvCkVhY2gKamVrdAriloFCaW9ncmFwaGllCuKWgW5ld3MK4paBcGHDrXMKdWZhY3QK4paBZGlhCtC60L7QstCwCuKWgWFjY29tcGwK4paBw4l0CmlsaXRpZXMK4paBaWhtCmludm9rZQriloFhcHBlbmQKLiksCuKWgWxhYgphbmdpbmcKaXN0YW4KcmVzb2wK4paBU2VjdGlvbgpQYXJlbnQKbW96Ck1hdApzdHlsZXMKdW5kZW4K4oCcLAppcnRzY2hhZnQK0LrQuNC8CuKWgUZpbmFsbHkKcGhlbgriloFQYWMK4paBQXJyYXlMaXN0CuKWgXJlY292ZXIK4paBZWR1Y2F0aW9uCm1vZGVscwpwZWQK4paBaGFwcHkK0YfRgwriloFndWVycmEKbWVkaWEKT0YK4paBZW5zdXJlCk1hcmsKZGF0YWJhc2UKb2dnbGUK4paBcHVibGlzaApPVwriloFCYXUKPy4K4paB0YfQsNGB0YLQuAriloFyZXBvc2l0b3J5CuKWgU1hdHQKaGlnaApvdmVuCuKWgWdlcgriloF1bmtub3duCkFtZXIK4paBQnJvd24KQUxMCuKWgXJlc3VsdGluZwriloFib3IK4paBcG9ldArQvdC40LzQuApFbWFpbApGb250CuKWgWhpc3QK4paBdG9kYXkK4paBQmVyZwriloFidXR0b25zCtGC0LDQuwriloFzbmkK4paB0YfQtdC70L7QsgpDcmUK4paBdW5pb24K4paBemljaAppc2hvcAriloFxdWFuZG8KUG8KQ1RJT04K4paBQ29zdArRgdGD0LTQsNGACmVydmVkCk5vdGUKRXF1YWwK0LvQuNGPCtCx0YPRgAriloFhYnN0cmFjdApzdG9wCuKWgWFkdmljZQriloFpY29uCuKWgXRyYXZlbApCUwp2ZW5zCuKWgWJhdGNoCmxpcXVlCnNoZWV0CuKWgWlocmUKZW1vbgpiZXJ0bwriloFhc3NpZ25lZArRjNGOClBob25lCuKWgWF3YXJkCuKWgWZ1bmN0aW9uYWxpdHkKYWxsYQriloFEYW0K4paBY2l1ZGFkCuKWgWNsdXN0ZXIKRGVzY3JpcHRpb24K4paBc2hlZXQK4paBQXVzdHJhbGlhbgriloHCuy4K4paBIjwK4paBd29uZGVyaW5nCmFpbmUK4paBcmVwcmVzZW50ZWQKa2FwcGEKbmIK4paBc3kK4paBS8O2Cj0iIwriloFzZXZlbgpEaXJlY3RvcnkK4paBc2lzdGVyCnBsYXRlcwriloFsdWNrCuKWgXJlbWFpbmluZwriloFWaWxsCndlcmsKYW5uaQpldHRpCmZ1bmMK4paBYmFuCmltcwptaXNzCmFncmFwaArQtdC60YHQuAriloFSZWYKbml0dAriloFHYWIK4paBYW5kZXJlCuKWgWplZG9jaApyZXN1bHRzCiFcCuKWgWxpc3RlZAriloFsb3JvCuKWgWtub3dzCtC20L3QvgpSYWQK4paBc29ja2V0Cm11bHRpCuKWgdGA0ZYKcmFpbHMK4paBdGFyCuKWgWdlbnRsZQpzZXR0CnNlcnZpY2VzCmJvdW5kCmlna2VpdAphamEK4paBY21kCmFnZ2VyCuKWgWJhCuKWgUJlbGcK4paBS2xlCuKWgXdvcmR0CuKWgWZvc3QK4paBZGltZW5zaW9uCkFuZwp1bWluZwpPYmoK0L3QtdC9CuKWgU1hcmllCmV4aXN0cwrRgtGA0L4K4paB0LHQvtC70YwKZW1lbnRlCuKWgUpvbgpTRVJUCuKWgWhpZ2hlc3QKYWtpCuKWgXRyZXMK4paBY2lyY3VtCuKWgURvd24Kb21tZW4KdXJlcgriloFjYXVzZXMKdmVudWUKaXNzYW5jZQriloFpbmZsdWVuY2UK4paBZmF0CtGA0LXQtNC4Cn1cXAriloFlbnRyCuKWgVNpZ24K4paB0LrQu9CwCuKWgWJpbmRpbmcKZXNzZW4K4paB0KTRgNCw0L0K4paBTG9jYWwK4paB0Y/QstC70Y8KYXBwcm8K4paBZGVwZW5kZW5jaWVzCuKWgXRhbGtpbmcK4paBenVyw7xjawpjb25uZWN0aW9uCkFjdGl2ZQpiYmUKaXJscwriloFJbmYKd2QK4paB0LjRgQpyb2FkCuKWgWNvbnZlbgrEm3QK0LLQtdC3CuKWgWVudHJpZXMKZXNjCuKWgWJpdHMKYXNzbwpXUgpzaGlwcwriloFkw6lzCmVzcApNYWtlCuKWgWZhbWlsaWFyCkFydAriloFhcm15CmN0cgrDqXJpYwpxdWV1ZQriloFcewp1ZWxhCmFtaWVudG8K0YjQuNGFCuKWgSIiIgpjb250cgrQu9C70LUKRlMK4paBbWFya2V0CsOlbmcKY2l0ZXAKSWxsCnJhbmsK4paBc2VuZGVyCuKWgWJlaW0K0YDQsNC6CuKWgWNvbXBhdAriloFvY2N1cnMK4paBZGllc2UK0YHRgtC40YLRgwphd2EK4paBaU9TCuKWgUNoaW5lc2UK4paBVFIK4paBS2VuCuKWgVVuZQriloFjcmVhdGVzCuKWgXNob3dlZAriloHDqXYKb2xvZ2lhCuKWgXByb3Rlc3QK4paBUGYK4paBc3F1YWQKKyssCsOhdgriloFlc3NlcmUK0LfRjwprb2wK4paBc2xpZ2h0bHkKYWRkcgrDom4K4paBcmVkdWNlCuKWgVwoXAriloFEZXAK4paBZ2VuZXJpYwpMb2FkZXIKyJtpCuKWgdC/0L7RgQriloFvY2Nhc2lvbgriloFMYWR5CmVudGl0eQriloFhdmFudAriloFQYXMKYWdnaW8KXHsK0L/QsNC0CmF0aG9saWMKUGFzc3dvcmQK4paBcmVzcG9uZAriloFOb24KQUcKbmVnCuKWgdGD0YEKYmxvYgpja2UK4paBQ29uc2lkZXIK4paBQ2FyZQppa2kK4paBQ2hpY2FnbwppbmRlbgriloFDb3AKXSsKw7ZtCsOpdnJpZXIK0LrQu9C+CmFsZW4K4paBbWFqCnJhY3kKb3J0ZQppZW50cwplbGxzCmFjdGl2aXR5CuKWgXJ1bnRpbWUKTlVMTAriloFwb3NzaWJseQriloFzdHJpCml6aQriloFtaXIK4paBVmVyc2lvbgpwcmltZQriloF0d2VudHkK4paBTWFoCuKWgXNvdW5kcwrRiNC10L0KY2x1c2lvbgphY3oK4paBZGV0ZXJtaW5lZAriloFSZXAK4paBTGFuZGVzCuKWgXdhbGwKaWdpCuKWgXJlc2V0CtGI0L4KeWFuCk1ldAplaQriloFhcHBlYXJhbmNlCuKWgWZvaXMK4paBbmVsbAplc2kK0ZHRggpsb29yCuKWgVVsCuKWgXJlc29sdXRpb24K4paBZm90CuKWgXRocm91Z2hvdXQK4paBcmkKTGV2ZWwKcG9vbAriloFpZGVudGl0eQriloFqYW51CuKWgWltcGVyCuKWgcO2dmVyCn1gCuKWgWluZmVyCuKWgWRhdGVzCuKWgVN0YW5kYXJkCmZvcmNlCm9ja2V5CnRlcmEK4paBZGlzdGluZ3UK4paBcHJlc2VuY2UKbGljYQriloFsZWF2aW5nCml0dW5nCsOpYgriloFlc3RhYmxpc2gK4paBbWFhcgphZGkK4paBTmV3cwphem9uCmZvbGcK4paBSGVuY2UK4paBWWUK4paBZmFiCuKWgWbDvGhyCml0bWFwCuKWgVZlcnMKcm92ClNpZ24KZGV2aWNlClNpZ21hCuKWgXdldGVuc2NoYXBwCuKWgVBzClBBVEgK4paBdG9ybgp2ZXN0CtGB0YLQvtCyCmFjY291bnQK4paBbGFyZ2VzdAriloFwZXJjZW50CuKWgVdvbWVuCuKWgWltZwp0b29sCuKWgXJvY2UK4paBYXkKaW5ldAriloFhb8O7dAriloFwb2x5bm9taWFsCuKWgWludGVncmFsCuKWgWFyZWFzCn0nCuKWgWh5cApsb3llZQrRgtCw0LvRjAriloFwcm94eQriloFXeQriloHQnNC10LrRgdC4CuKWgWVzY2FwZQpvbGFyCuKWgW1pc3Rha2UKKX17CuKWgVBvdAriloFwcm9jZXNzZXMKIj4NCmhhbHRlbgp6emEKYW1vCtC60YDQtQriloFXb29kCsO4cgriloHRgdC10YAKb2NpYQp0d28KcHJvZmlsZQriloFBc3QKZW1icm8K4paBYXJtcwppbmFzCmlubmVuCuKWgW1zZwpJTlQK4paBYmF0dGVyCmlnbm1lbnQK4paBdnkKSHJzZwriloFHcnVuZApyb2MKc2VnCuKWgWRlY29yCuKWgWV2ZW50dWFsbHkKPiwK4paBcGFnCmFudGVuCuKWgXN0cnVnZwp9XlwKZGF0ZW4K4paBcmVsYQrQv9C+0LIK4paB0LrQvtGA0L4K4paBQm9zCuKWgWxhYm9yCuKWgVNlY3JldAp1Z2VuCuKWgWphcAriloFodXNiYW5kCuKWgUFsYnVtCuKWgWV0d2EK4paB0L/RgNC+0LjQtwpyaWNodApyYWNoCmJhdAriloFwcmVwYXIK4paBU3RvY2sK4paBbGFjawrRhdGW0LQK4paBaG9neQriloFDaHJvbWUK4paBQWRtaW4K4paBY29tcGFyaXNvbgriloFpbmNyZWFzaW5nCtC90LMKaW1pCkRiCuKWgWdlZgp1Y2h0CsOpc2UKZ2VuY2UK4paBQ29yZQriloFpbmNvcnJlY3QK4paBYXNzdW1pbmcKb3Vyc2UKaWVyb24K4paBVGhlb3JlbQriloFjYXNhCmplcwriloHQtNC10YDQtQriloFgIgpMRArDpMOfCkRlYgriloFzdWl2CuKWgUJhbmsKbGlicwriloFMZW9uCuKWgXF1YXJ0CuKWgXByb2Zlc3Npb25hbAriloF0aWVuZQriloFhY2NvbXAK0YHRgtC10YAK4paBVUsKTk4K4paBbMOtCtGG0Y8Ka2VsCuKWgeKAogriloFkaXNlCm9udG8K4paBbcOhCmlmcwpiaWxkCuKWgWNvbXB1dGUK4paBw6lkCmrEmQriloFNw6kK4paBbGFuZ3VhZ2VzCuKWgVRpbWVzCmNlbgriloHQsNCy0YLQvgrDvW0KZW5legriloF1cHAK4paBbcOpZAriloFjdWFuZG8K0L7QtApJbnRlbnQKZWVyZAriloFUYWwKb2Zmc2V0CuKWgWhhYmVuCnJlbWUK4paBU3RhY2sK4paBZHJpCuKWgXNlaW5lbQriloFmw6l2cmllcgriloFjb21iaW5hdGlvbgriloFzb2xsCuKWgW1vdmVtZW50ClNwZWMK0LrRgNGLCnJldGNoCk9mZnNldApSb290CtCQ0YAKd2FydAriloFGb2xsb3cK4paBU29jaWFsCtC90LjQutC+0LIK4paB4oaSCkRvbgriloFoYXJtCmFncgpuZWdvCnJlc291cmNlCuKWgUx1YwriloFzZWluZW4K4paBRGVwYXJ0bWVudAriloFVcGRhdGUK4paBVGV4YXMK4paBcmV2ZQriloFQb3MK4paBc2hvdApvdGhlCuKWgXJlcGVhdGVkCuKWgXJlY2VudGx5CsOhYmFuCmFrcwrQv9Cw0L0K4paBY2hhCm9obAriloF0ZW5kCuKWgdC00LLQvgpjaHRzCsOnYWlzZQpwbGluZwphbGJ1bQplagriloFgWwptYXBzCuKWgXVuaXRzCuKWgTwhLS0K4paB0LPQtQriloFJbmZvcm1hdGlvbgppa29uCuKWgXRhbgriloFkb2NrZXIK4paBU3RhZAriloFhdWRpbwppa28K4paBY29vcmRpbmF0ZXMKeHMK4paBcmVwbGllZAriloEpLAriloFHb3Zlcm5tZW50CuKWgUFjYWRlbXkKVU5UCuKWgdGC0YDQuApCbAriloFhbmMK0YjRgwriloHRgtCw0LrQvtC2CuKWgWluZmluaXRlClJDCuKWgWdhCuKWgWFkanVzdAriloFtZXJnZQo7YAriloFwb3N0ZXIK4paBSmFwYW5lc2UKIl07CuKWgWV4aGliCuKWgW9yZGVyZWQKaWN0dXJlcwrRgNC+0YEK4paBc8OpcmllCmxldHMK4paBaXAKU2VsZWN0b3IK4paBZXhpc3RlbmNlClJlY2UKbGlnYQpkb3dubG9hZAriloFsZW1tYQppZXYKdWRlbnQKc2tvCuKWgUFyYWIKaXRhdGUKYnl0ZQrQvtGCCmlrdArQvdCw0YLQsAriloFBZgooQAriloFtYWQKb2RiCuKWgWVsaW1pbgriloFzcGVudApFbnRlcgriloFNaXRnCldoZW4K4paBZMOpcGFydApNSQriloFmZWxsb3cK4paBdGhvdXNhbmQK4paBQ3UKa3RvcgpDYWNoZQriloF0YW1iw6ltCuKWgWV4dGVuZGVkCtCy0LXRgdGCCmF0ZXJzCuKWgUxpYwp0b3R5cGUK4paBR2EK4paBYmxvb2QK4paBbWFwcGluZwriloFub21pbgriloFtYW5pZmVzdAriloFwZW5zCuKWgXJpdAriloFmaWxlbmFtZQriloFmaWxsZWQKdsOkCuKWgXJhaXNlZAriloFtb2JpbGUKa8OpCuKWgVJpZ2h0CuKWgWdlaMO2cgriloF0ZW1wZXJhdHVyZQriloFzb21laG93CuKWgVNwYW5pc2gK4paBa29tbXVuCuKWgWNob3NlbgriloFob3JzZQo7XAriloFvcmlnaW5hbGx5Ckhhc2gK4paBY2l0dAriloFlbmNvcmUK4paBV29sZgriloFuw7oK4paBWW91bmcKVmFyaQriloFTY2h3ZQriloFjYXB0dXJlCuKWgUphbmUKSW50ZXJmYWNlCm93eWNoCuKWgURldXRzY2hsYW5kCuKWgUtvbAriloFib3VuZGFyeQriloFHTkQKTm93CmtlaHIKKCoKPS0K4paBV2VsCuKWgUNhdAphbW1lbnQKQUdFCuKWgXJpZ2h0cwpTY3JvbGwK4paBaGFwcGVuaW5nCuKWgUJsYQriloFzY2llbmNlCmF3cwriloFiZWhhdmlvdXIK4paBaW1wbGllcwriloFRdWVlbgpvdmFuCnBheQrRmtCwCmFyZXQKZXJzaGlwCuKWgUxhbmcK4paB0LPQvtC0CuKWgXJlY29yZGVkCnplbQriloFUaHJlYWQK4paBdG9kbwpvZ28K4paBc2NlbmFyaW8K4paBY29uY2VudArRgNC10LcKU3RvcmFnZQriloFkaXJpZwriloFTZXJpZXMK4paBZ2FzClNFVArDqGNlCnJhdGUKSFRUUAriloFrYXAKRW1wClVURgrDoW7DrQrRgdGC0LDQstC4CndpbmRvd3MKw6lyYXRpb24KYXBlZAriloFzaXN0ZW1hCuKWgXN1cnYK4paBV2VzdGVybgriloFnw6kK4paBU3VjaApXcml0ZXIK4paBY2FudmFzCuKWgWd1YXJhbnRlCnNjcm9sbAphdmVkCkl0YWwK4paBRWxlY3QKXSgjCuKWgUhlcm0K4paBQ29tbWFuZAriloFDaGlsZAriloFwZAp1dGNoClNxbAoqLgriloFUYWcK4paBVGEK4paBbWFpbApzY3JlZW4Kc2NyCnppYWwK4paBRsO8cgriloFzdWdnZXN0aW9ucwpjaGVzdGVyCil8CnBlcnNvbgp6ZWwK4paBd2FpdGluZwriloHRgdC70LUKRkwK4paBQWxiZXJ0CuKWgUhpagriloHRgtC10YAKZXdyaXRlCuKWgXNlbnRlbmNlCuKWgWxpbnV4CtC10LTQtQrDqm5jaWEK4paBSXRhbGlhbgrRh9C60LAKRmlsZXMK4paBbm90aWNlZApiaW5nCuKWgVJlc2VhcmNoCuKWgWFsdGVyCmhlZWwKXDxeCuKWgVByb2Nlc3MK4paBYmF0dGxlCtC80L7QsgriloFBZnJpY2EK4paBQW5uZQriloFnZWxkCn0lCuKWgWRvY3MKVHlwZXMK4paBcmV0cmlldmUK4paBT2ZmaWNpYWwK4paBdHJhYgrRhtGLCuKWgUlucHV0CnN0ZXAK4paBbGF1Z2gK4paB0KXQsAriloFwZWxhCk1lZGlhCnJvdWdoCtCz0LDQvdC4CuKWgVNob3VsZAriloFDb250ZW50CtC70LXQvApvc2gK4paBc29tZXdoYXQK4paBQ2VyCkJhY2tncm91bmQKc3RydQriloFpbmxpbmUK4paBTmVkZXIK4paBbW9kdWxlcwriloFCdWNoCsWEc2tpCndpZGV0CuKWgXpuCnBvc2VzCuKWgWdyYWR1CuKWgWFxdQpQUgriloFwdXR0aW5nCuKWgdC/0L7Qu9C4CuKWgXB1cmNoCuKWgXNtb290aArRgNC40LkKZW5naW5lCuKWgWxpdmVkCkFjY291bnQKRGV0YWlscwriloF0ZWxscwriloFPdXRwdXQKSGVyZQriloFGb3VuZGF0aW9uClRleHRWaWV3CuKWgWRlY2lzaW9uCuKWgWRlcGVuZGVuY3kKb2NhdGlvbgpvdmFsCmZlbGQK4paB0L/RgNC+0LIK4paBZW5kcwriloFpb3MK4paBZXhjZWwKYWd1CuKWgWVsZWcK4paBRWxlbWVudApRdWV1ZQriloFmw7YK0LLQtdGA0YHQuNGC0LUK4paBZXhwZXJpZW4K4paBZGlyZWN0ZWQK4paBY2FtYgriloHQlNC2CuKWgWZvbGcK4paBY29uY2UK4paBRmFiCuKWgVZpCuKWgWFkdmFudGFnZQriloFCZWkKcHJvZAriloFYSVgK4paBRmFjZQriloF2aXIK4paBUnVzc2lhbgriloFzcGFuCmVuw60K4paBem9uZQriloFhdHRhY2gK4paB0LHQtdC3CuKWgW1hbmFnZW1lbnQKQWMK4paB0L7QvwpvbmNlCmhhbHQKdXNvClNwZQriloFyYXcKw6lybwppZGVsCmxhdwpTaGVldAriloFtaXNzaW9uCuKWgWNhbWVyYQriloFob25vcgriloFhcHBvaW50ZWQK4paBUm9tYQpsaW5lYXIKUm93cwpmZXJlbmNlcwriloFJTwriloFjb3ZlcmVkCnJhagrRgdGC0LLQvtCy0LAK4paBU3ltCuKWgXRpZAppc2MK4paBUnVkCuKWgWVuY3VlbnQK4paBZmFpbHVyZQrDvHNzCuKWgXNxdQriloFwYWludAriloFzZXJpb3VzCuKWgWN1cnNvcgp0cmFzCuKWgWRpc2N1c3Npb24K4paBY3JpZWQKZXJpZQriloFEZXZlbG9wCuKWgXJld3JpdGUK4paBZ8OpbsOpcmFsCndhaXQK4paBSGFycnkKw61yCuKWgWdlcHVibGljCuKWgdC40LMK0ZbQsQrRj9GCCuKWgdCY0LcK4paBZXF1YXRpb25zCuKWgXBsYW5lCuKWgWFjcXUK4paBYW5nbGUK4paBdHJlZXMK4paB0JrQvtC9ClZECnBlcnQK4paBZG9jdW1lbnRzCmNiCuKWgWltcGxlbWVudHMK0YHRgtCw0L3QvtCyCuKWgVdhbHRlcgrQt9GL0LLQsAriloHRgdC/0LUK4paBY2hhcApwbGV4CuKWgW1hZ25ldAriloFnZXB1YmxpY2VlcmQK4paBaGlnaGx5CuKWgWxldXJzCuKWgWRyZXNzCuKWgXJlc3RhcnQKUmVuZGVyCkNhbGxiYWNrCmlzbwriloFjb25zdGl0dQriloFFbmRlClpFCuKWgUFuZ2VsZXMK4paBZGVyaXZlZAo9InsKXVwK4paBQ2hhbmdlCuKWgUhhdXMK4paBc3RhZAriloFSZXF1ZXN0Cm9tbwriloFBY3RpdmUKdXJlbgriloF0b3VybgriloFwYXJ0aWN1bGFybHkKU2VydmxldAphYmMKd2lkZXRpbGRlCmFuZHJhCkhlbHBlcgpSdWxlCuKWgXBsdXNpZXVycwriloF3YXZlCm5lcQriloHQotC1CmZyZQpza8OpCuKWgWFsYwriloFsb2dzCkdTCuKWgU1vbAriloFwZXJtaXNzaW9uCuKWgXNvdWwK4paBd2FudHMK4paBZ3VpZGUK4paBdmllbmUK4paBV2lsaGVsbQriloFldmlkZW5jZQoifSwKcm9wb2wK4paBYXV0aGVudGljYXRpb24K4paBb2NjdXJyZWQK4paBSUYKbm9jCklBCuKWgUJhbgriloHQutCw0YAK4paBYmxlCuKWgXNlZ21lbnQK4paBcGxheWVycwppc2kK4paBc3R1Y2sK4paBUHkKQW55CmhvdQriloFmb3JtYXR0CuKWgXBlYWNlCuKWgdCa0LDRgApldGVzCmRmcmFjCig/CuKWgVNpdGUK4paBTGl2ZQriloFVcwriloFjbGltCuKWgUFsaQrRgNC10LkK4paBUHJpbmNlCuKWgW9ibGlnCmllYgriloFBbHQK4paBcHJvcwpyYWNsZQriloFDZXR0ZQprZXMKesO2cwpvdXZlbGxlCi8vLy8vLy8vCmFieQrDqXJlCnJhbmUK4paBcG93ZXJzCuKWgVBhdGgK4paBV29yZAriloF0cmFuc2FjdGlvbgriloFjYXVzaW5nCmVsbHNjaGFmdArDonQK4paBQ1BVCuKWgWRlcHRoClNUUgriloFDb25mCuKWgXJhcmUK4paBQWsK4paBYm9uCuKWgUNhcmxvcwriloFzcGVjaWZpY2FsbHkKcmljcwpLRVkK4paBc3RhcnMKw6lyaWNhCuKWgdCb0YMK4paBY29uZmlndXJlCuKWgWFnZW50CuKWgWV4cGxhaW5lZAriloFjb2VmZmljaWVudArQtNGMCid9CuKWgXZpZGEK4paBU3luCuKWgdC90LDQt9Cy0LAK4paBT3B0aW9uCuKWgXJvYgriloHQutC70YMKOlsKYW50bHkKZGVwZW5kZW5jeQriloFDdXIK4paBZnJhbmNlcwriloFpZGVhbApTdwriloHQs9GA0YPQvwriloFDYXB0YWluCuKWgXRvZG9zCkpvCuKWgXBlbG8KP10oCuKWgWZhaXRoCtC+0LLQvtC5CuKWgWZyZXNoCuKWgXByb3ByaQpUaW1lb3V0CuKWgXZlaApjb250ZW50cwriloFEb2N1bWVudApjb2xsZWN0aW9uCuKWgWthcgpydWNrCllvdXIKdW1hCuKWgW1hdGhlbWF0CkVuYWJsZWQK0L/Rg9Cx0LvQuAriloFFbmdpbmUK4paBTcO8bmNoZW4K4paB0L/QvtGB0LUK4paBZm9uCmFyY2hpdmUK4paBZnJlcXVlbmN5Cn0rXArDonRlCuKWgWtvcgriloHQmtGA0LAKU2luZwptb250aAriloFIYXcK4paBc3lzCmVybWUK4paBV291bGQK4paBaW1wYWN0CnVycmVuY3kKbGljaHQK4paBYXB0CmllcmUK4paBbW90aW9uCtCh0KHQoAriloFJbml0CuKWgW1zCuKWgU1TCnNoaWZ0CuKWgWF1dHJlcwriloFiYXNoCmhpZGRlbgpvcmlvCuKWgWNlbGVicgriloFMaWJlcgpldG8K4paBZG92ZQriloFwYXRocwriloFpbmoKQ2F0ZWdvcnkK4paBY3J5CuKWgW1hcmtlZArRg9C00L4KYXNoaW9uCsOkbHQK4paBbGFuCuKWgXRlYW1zCuKWgWt2CmlhbXMKYWJhbgriloFUQUJMRQrQstCw0YAKUmVwb3MK4paBQmVsbAriloFwdWJibGljCuKWgWNvdW50cmllcwriloFzcGluCuKWgWzDqWcK4paBS3JpZQriloFKb25lcwp3aGl0ZQpIdG1sClByZXNzCuKWgUJsdWUKT3BlcmF0aW9uCuKWgUFudGgK4paBcHNlCuKWgUZvbnQK4paBdGhlbWUK4paBYmxvY2tzCiQpCuKWgWdsYWQK4paBbWFuYWdlCm9yZGVuCm9zdGVuCmNvbGUK4paBU1AK4paBc2NoZW1hCnVyYXMK4paBd2hlbmV2ZXIK0KjQkArRgNC40YLQvgriloFkaXNjb3ZlcmVkCuKWgXByZWZpeApnbG9iYWwKcm9rZQp6ZXMKY2h0ZQriloFCZWZvcmUK0LzQtdC90LgK4paBRGlnCuKWgXJhcGlkCuKWgWxsZWcKZXF1YWxzCuKWgUhvY2gKZm9yYWxsCtCy0LDRgtC4CnVzegriloFhdHRhY2hlZApFeHByZXNzaW9uCuKWgXN0b2NrCsO8bGwKcGV0CmVzc2lvbnMKY29sbwriloFneQpCb29rCuKWgUphY29iCuKWgVByb2R1Y3QK4paBaW5wdXRzCtC80LjRgAriloFsZWFybmVkCsOzd24K4paBcG9saWNlCuKWgdC70LXRggriloFJdGVtCuKWgWV5ZQphaWVudAriloFTYW1tbHVuZwriloFMb3IK4paBcmVwcmVzCuKWgWZlc3QKQ29uZAriloFub3V2ZQriloFleHRlbmQK4paBRnJhbmNlcwriloFGaW5kCuKWgWRlemUKZXJuYQriloFoYWLDrWEKcHLDvAriloFtb3RvcgpiaWUKSGVsbG8K4paBcmVzaWQK4paBZmluYWxlCiUpCnsnCuKWgUhhcmQK4paBcGFpcnMK4paBRWxsCml2b3QKcmVlcwriloFGb3JjZQriloFldmVuaW5nCuKWgWRlc3B1w6lzCnJnCldoeQriloFjb25uCnNjaGVtYQrRhdC+0LQK4paB0LzQtdC20LTRgwriloFmbGFzaApza2lwCuKWgW1pbnV0ZQriloF2ZWQKYXlsb3IK4paBc2V1cwriloFNYWpvcgriloFmcmFuYwriloFyYWMKa3cKY3YKTmF0aXZlCuKWgUJ1dHRvbgrQvdC40YbQuApzZXR0aW5ncwriloFBY2Nlc3MK4paBcXVhbGl0eQpwcm9wcwpGbG9hdAriloFTY290CuKWgUFECuKWgWFsbGVtCiZcCnVzdHJhdGlvbgpwYXR0ZXJuCm1pcgriloFpbmNvcnBvcgpza2ljaAonPgpTdGFuZAriloF0ZWNobmlxdWUK4paBRXNzCuKWgU94Zm9yZAriloHQu9CwCnRpa3oK0LvQuNC5CkxvZ2luCuKWgW1pbmlzdGVyCuKWgWN1cmwKa2FuCuKWgW1hcHMKaW5kYQpyaWViCuKWgUVORAppZmllcwpjb25zb2xlCmJ1cnkK4paBTEUK4paBaW5kZXBlbmQK4paBdGEK4paBxZoKb25lbArDqXN6CuKWgUlzdAp1dGl2ZQrRkdC7CuKWgVJlZ2lvbgriloEoPQriloFjb21wYWN0CsOnb2lzCuKWgWxhYmVscwphdXRvcml0w6kK4paBc3RhbgriloFmcmFuw6dhaXNlCuKWgXJlbW92aW5nCnljCn18CuKWgUV4ZWMKKCRfCm1hZwpiZWZvcmUK4paBc3RvcHBlZArQvNC40LgK4paBcmVmcmVzaAp1bmt0CmljaW8KWG1sCuKWgVRhYgriloFmb3VuZGVkCuKWgWZhbApmeAriloFIaXN0b3JpYQriloFFYXJseQpEb20K4paBZGVjaWRlCuKWgXVuZGVyc3Rvb2QK4paBanVyCuKWgU5yCuKWgWNhcGFjCndhcwriloFlbmVteQriloFwcm9ncmFtcwriloFtYXNrCtGB0LrQtQriloFncm91cGUKY2FtCuKWgXdpZGdldApSRUFURQriloFzZXZhCuKWgUJhcmNlbAriloFwZXJkCuKWgdCc0YMKcmFuY2UKVFlQRQriloF7JwriloFiaWxsCuKWgSJfCidgCmJhaG4K4paBY29udGFpbmVkCkNsb3NlCnJ1ZwplZ3kK4paBc2lnaHQK4paBUHJvdmluCtC90Y4KYXJ6CtGJ0LXQvQriloFKb2UK4paBZGVsZXRlZAriloFBdXRvCuKWgW1ldGVyCkNHCtGK0LsK4paBcGVudAriloFiZXplaWNobmV0ClN1bQpkYmMK4paBUGxhdHoKZWN0b3JzCuKWgUxpdHRsZQpRVUUK0YbRltGPCtGC0LXQu9GPCm5pZ2h0CuKWgWxsCuKWgW1vc3RseQpVSUQK4paBYmV6CmRvYgrQutGB0LgKdGVybmUK4paBY29ybmVyCmF0eQriloFpbXByb3ZlCuKWgWludHIK4paBYEAKYXJvZAriloFpbnN0YWxsYXRpb24K4paBUmVmZXLDqm5jaWFzCmlnYW4K4paBY3JpdGljCmFkZWwK4paB0YHQtdC70L4KLA0KYXRvcmkK4paBRnJpCuKWgXLDqWbDqXJlbmNlcwriloFJbnRlbnQK4paBdGFudAp1bmNpCuKWgWxldmVscwplcmVzCuKWgWVtZXIKc2FmZQp0awriloFjaGFtCuKWgWdyZWF0bHkK4paBd2VpdAriloFjb2FjaAriloF0b3dhcmQKSG9tZQriloFCb29sZWFuCtGC0LXQuwriloFtb2NrCuKWgWFwcHJlY2lhdGUK4paBQ3Jvc3MK4paBVGFrZQpEUAriloFzaWRlcwriloFOb3JtZGF0ZW4K0LTQtdC5CnN0YWwK4paBY291dApibgriloFWZXJ0CuKWgWJpcmQK4paBZHluYW1pY2FsbHkK4paBRG9sCuKWgUJ1cmcK4paBZG9nCsOkdHQK4paBbnVjCkVDCkJ5dGVzCuKWgWFrCnJlbGFuZAriloFndWl0YXIK4paBcmVnYXJkaW5nCuKWgUZ1w58K4paB0LTQvtC7CmF1c3MK4paBamVqCmFjbwriloF1cGRhdGVzCtGA0YPQugooJy8K4paBY29sZAriloFHaXZlbgpoaW4K4paBZmVlbGluZwppZ2xpCmZhaArRgdGC0YDQtQpib29sCmluaXRpYWwK4paB0YHRgtCw0L3QvtCy0L3QuNC60LAK4paBQW5uYQriloFob3JzCuKWgWRvbGwK4paBY29uc3VtCnViZXIKc3RhbmRpbmcKYWN0aXYK0LfRlgpjaGVja2VkCuKWgXBlcm1pc3Npb25zCuKWgU1vbnRlCldyaXRlTGluZQpwbHVzCuKWgUVxdQriloHQuNGFCtGH0LrQuAp1bnF1ZQriloFMTwplYQpzYW1wbGUKaWVzegpvcmFsCuKWgdCY0L0Kb3N0b24K4paBU2ltb24KZmFzdAptawphc3NlbgriloFhcmNoaXRlY3R1cmUKZW5zZXMK4paBw4UK4paBdG9waWMK4paBZGlzYWJsZQriloFDcnUK4paBQ29udHJvbAriloFjcmVhdGlvbgriloFoeXBlcgppdHVkCtC20LXQvdC40Y8KYXJhbQriloHQs9C00LUKaWVuc3QKZWR1bGUK4paBQm90CuKWgdCe0YEK4paBVGhlaXIKYW5uZQpNaWNyb3NvZnQK4paBUE0KeWRybwplbnRsaWNoCuKWgUVpbmUKQ0hBUgo6JwpXZWxsCmxldG9uCuKWgXN1cHBvcnRzCiddKQptYW51YWwK4paBdmljZQphc2EKY2xvcwp2aXNlZAriloFwb2sKdHJhY2sK0L3QvtGB0YIKLi4uLi4uLi4K4paBJ1wKwrIuCuKWgW9yZGVycwpldHRhCuKWgWNvbnZlcnNpb24K4paBdHJhZGUKY2xpCuKWgdCY0YHRgtC+CuKWgWFrdAriloFzdWJzZXQK4paBYXVnCuKWgWxlYXZlcwpNYXRoCmFubmVkCmthbAriloHQktC10LvQuAriloFub2cK4paBZXRoCuKWgWhhaXIKYXJvdW5kCuKWgWphdmF4CtCy0L7QuQriloFDZW50cmUKw7bDnwp1dGkK4paBbmF2aWdhdGlvbgriloFQUwriloF3YQriloHQoNC+0YHRgdC40LgKdXNhCnpldGEK4paBUERGCuKWgW1pc21vCnByb3BlcnRpZXMKbWVpc3RlcgrQu9GM0YLQsApmb3J3YXJkCuKWgU9zdApraW5zCuKWgXNpZG8K0LfQvtCyCnRhZ3MK4paBYWN0b3IK4paBZmx5CkNSCmFnaW5pCuKWgWxldHQKZW5pCnRlY2gK4paBRW5jCm9yYWNsZQphbWlsdG9uCnplagpmZW4KdW1lcmF0ZQriloFxdWVzdG8KZGFydAriloFLb3JlCmFwaXMKZXBlcgpTY3JlZW4Kd2FsbAriloFpc2xhbmQKc2hlCuKWgWxpZ2dlcgrQstGB0Y8KZmFuZwriloF0YXJkCuKWgXBsYWF0cwriloHQv9C70L4K4paBT2ZmaWNlCuKWgVNFVAriloFjaXJjdWl0CmplZApTYXZlCtC70YzQvdC+ClNvY2tldAriloFJbmRleApBQ0sKaWRlcnMKZXJlcgriloHQodCo0JAK4paBbGFkeQriloFzY2hlbWUKaWVsbGUK4paBZXhlcmMKKX1cCkRhdGVUaW1lCmF0aGFuCuKWgVByb2Zlc3NvcgriloFtb2lucwriloFFeGNlbAriloFIYXkK4paBTXVzaWsK4paB0ZcKxJlkCuKWgSIuCuKWgdCx0YPQsgriloFpbnN0cnVtZW50CtC/0LDRgAriloHQsdC10YDQtQriloFwb2xpdGlxdWUK4paBdHJhZGl0aW9uCuKWgVZNCuKWgUFydHMK4paBQ2kKVXNlCuKWgWFnZ3JlZwriloF3ZWVrcwriloFvcHBvcnQKaXRpbmcK4paBdmVydGljYWwK4paBTmF6Ci4uLikKaXpvCuKWgWN5Y2xlCuKWgXRlbXBvCtGC0YDQtQriloFoYW5kbGluZwppc3RlbmNlCuKWgXBhc3RlCuKWgWVuam8KUk9VUAriloFvdXRlcgriloFzdXBwbHkKZW1hbgriloFhY2NpZGVudAriloFcXQriloHRgtC10YUKUG9vbApvdGluZwpvbnltb3VzCuKWgUdpb3YK4paBdWQK4paBLi8KRVJST1IKY29uc3RydWN0CnRleHR3aWR0aApxdWlwZQpjYXNlcwriloHQsNC0CuKWgVJvdwpIb2xkZXIKd2FuCmFybmEKTWVtCuKWgUNhbmFkaWFuCuKWgUNvbW1pc3Npb24Kc3VuCuKWgWFwcHMK4paBQmxvCuKWgWlocmVyCuKWgWZhbWlsbGUK4paBbcSbCuKWgXB5CtC40YEK4paB0YLQvtCz0L4K4paBQWdhaW4K4paBaWdub3JlCuKWgXRlbGV2aXNpb24KUGF0CmhpZGUK4paBUmV2CuKWgWJlYXIKcGh5CuKWgW5vaXNlCuKWgXdyYQphdGlvbmFsZQriloFjb2xsYWJvcgpib3JkZXIK4paBZWxlY3RlZAriloFzdXJwcgriloFhdm9pcgriloFhc3NlbWJseQriloHQvtCx0YnQtQriloFhcmJpdHJhcnkK4paBYnJpZWYK4paBLS0tCuKWgU1hdXIKZ3Jlc3Npb24KaWNpYQriloFsaWVndAriloFGaWd1cmUK4paBb250bwpSZXBvc2l0b3J5CuKWgWTDqWYK4paBZm9ydGgK4paBY2xpY2tlZApzZWl0ZQriloFub3RlcwpuYXRpdmUK4paBRURJVArRi9C1Ck1UCmFtZW50YWwK4paBcm9zZQriloFwdWVkZQpEZWxlZ2F0ZQp1YmEKbmVvCnhpcwriloFBcnRodXIKVVJFCmFtaW5nCkRldmljZQriloFkaWFtCnN0w6RuZAriloFwcm9uCm9pcwpjb21pbmcKUGFyYW1ldGVycwp1dnVkCuKWgWFiaWxpdHkK4paBbcOpdAriloFVbmZvcnR1bmF0ZWx5CmZkCkRpY3Rpb25hcnkKc29ja2V0CuKWgWNvbm9jCmNvbnRhaW5zCmVzc2VkCuKWgWdlbGRpZwrQvdC40YbQsAriloFwb2ludGVkCmVzdGkKbm9tCtC+0LPRgNCw0YTQuNGPCuKWgXJlcHJlc2VudHMK4paBbWFuaXAKd29ybGQK4paBcmVzb2x2ZWQKdGVncgriloFkb3J0CmFzdGVybgriloFjYW1wYWlnbgriloFwcmltbwriloE7OwriloFzbmlwcGV0CuKWgU5pawpUb3RhbAppc3NlbWVudApBQ0UK4paBdmVyaWZ5CmlmZmUKbGFnZW4KaWV1cgriloFjb252ZXJ0ZWQK4paBTWlsaXQK4paBQWxnCuKWgVJvbgriloFrb25uCmFwcGxlCuKWgWRpc3BvcwpzdGVsbHVuZwriloFyZXRhaW4K4paBbWVudHJlCuKWgW5ldXQK4paBTmlnaHQKY2jDqQphdHRpCuKWgW9icmEK4paBc3VwZXJpb3IK4paBQ29uZ3Jlc3MK0ZHQvAriloFjb2RlcwriloFBbWEK4paBRWFydGgK4paBb3Bwb3NpdGUK4paBcG9vbAriloFEdW4K0LbQtdC90LjQtQriloEiJHsKaW52CuKWgdGD0L3QuAriloFBbmRyZXcK0YLQtdC70LXQuQriloFiecWCClVuaXZlcnMK4paBQW5ndWxhcgphbmltCtC00L7QstCwCkJVRwp1dGVseQriloFkcmF3aW5nCuKWgWdhaW4K4paBZm91cnRoCuKWgVByb2JsZW0K4paBc3VkZGVubHkK4paBw4QKb25uYQriloFLb250CuKWgUJpbGRlcm4K4paBa29ubnRlCsW+ZQpUcmFjZQriloFzZWN1cmUK4paBa3TDs3J5CuKWgWVxCuKWgWZvcm1hbAphbWVyaWthbgriloFBbmFsCuKWgVJld3JpdGUK4paBRG91YmxlCmNyZWF0ZWQKTlUKTURiCmFwZXMKVW5pcwriloFlc3BlY2lhbAp9KVwKZWRvbQriloFjYXRlZ29yClJldHVybgriloFIYW1iCuKWgVJpbwriloFNaXIK4paBR2VtZQphYmlsaXRpZXMKdHJ6CnVzZXQKaWVycmEKbmV0d29yawriloFkb2N0b3IKZXVycwriloFsaXN0ZW4K0LTQtgriloFIw7YK4paBY29uc2lzdHMKYXNtCkNocgphbGFuZAriloHQuNGB0L/QvtC70YwK4paBbHVnYXIK4paBZGVmaW5pdGVseQptb3ZlCsO6YmxpY2EK4paBbMOkbgppc211cwriloHQtNGA0LbQsAriloFkdAriloFQZXJoYXBzCuKWgUJyYXNpbApKb2huCuKWgXByb21pc2UKxYJ1CnJlZW5zCuKWgXBzeWNoCuKWgVdobwrRgNGP0LQK4paBSU5UTwriloFQZW9wbGUK4paBV2lsbGlhbXMK4paBTWFyZwriloHQtNCw0L0KcmVjb3JkCuKWgUV1cm8K4paBVmlyZ2luaWEK4paBUmVzdAriloFDb3JuCn19LAriloFHcmlkCuKWgWluamVjdArQvdCw0L0K4paBY3JvdwriloFQaHlzCuKWgURPCuKWgSItCuKWgWluY3JlYXNlZAphY2hlcgpwZWF0CkxpbgriloFEdWIKcmljZXMKYWdub3N0CmRsCuKWgWN1cnZlCsO8ZwpyaWNlCmxhbmd1YWdlCkNsaWNrTGlzdGVuZXIK4paBbXVuaWNpcGFsCuKWgU9yaQriloFCaWxkCuKWgUNhYgriloFWYXIK4paBbm90ZWQK4paBw44K4paBc3VicwppYXRpb24KV09SCmluZ2x5CuKWgVJ1cwppZW5zCklORk8K0LrQstCwCmF0aXZvCmdlbmRlCuKWgUZyYW56CuKWgWlzb2wKZWRlcwpuaWVyCuKWgU5PCuKWgUhhcwpiZWFucwriloFwYW5kYXMKKCIlCtCy0ZbRggrRg9GC0LHQvgriloFnYXRoZXIK4paBbGVnYWwKaW5jbHVkCuKWgWNpcmN1bXN0CmNyaXB0b3IKcmlibGUK4paBU8O8ZAriloFhcHJvCkFwaQriloHQvdCw0LkK4paBQWZyaWNhbgpvd3NraQriloFKb2huc29uCmllawriloF2b3RlCuKWgUthbgriloFiaWJsaQriloFoYWFyCuKWgXZyCl0pLApzdWJzZXRlcQpQYXJzZXIKaWFuaQppc8OpCmlkZWEKT25seQriloHDoWwK4paBQ2F0YWwK4paBQ2FzZQpzZWgK4paBZW5jb3VudGVyCuKWgXJlZm9ybQrQvNC40L3QuAriloFTdHJlCmV4Y2VwdGlvbgriloFUYXIK0YLQsNGACnRybAriloHQkNC70LXQutGB0LDQvdC0CtC70LXQutGCCmVxdWFsCk9wCuKWgWxpZgriloHQudC+0LPQvgriloF2b2x0YWdlCnNoaXJlCuKWgUdyb8OfCtCy0L3RjwpuaW5ncwrQvdGG0LgK4paBbGFnCuKWgWFuZGVyZW4K4paBdmFjCuKWgW1hY3JvCj1bClRoZW4K4paBY29udHJvbHMKc2VxCm9sb2dpZXMK4paBc2VsZWN0b3IK4paB0KPQutGA0LDRl9C90LgK0YXRltCy0L7QstCw0L3QvgrRi9C5CmFsbGVuZ2UK4paBSU1EYgp1bW15CnllbgriloFiZXN0ZQriloFCb3gK4paBY2hhaXIK4paBU2FiCmVyZGUK4paBbmFzdAppdmFtZW50ZQriloHQvtCx0YoK4paBcmVxdWlyZW1lbnRzCuKWgW1lZXRpbmcK4paBZmluYW4K4paBQWRhbQriloF0ZWxldmlzCuKWgWJyaWdodAriloFHaXQKRUcK4paBR2lsCnLDqHMK4paBQ29uZAriloFmdAriloHQsdGD0LvQvgotKwpFTkQKZXJuZQriloFDb21wdXQK4paBaWxzCuKWgWdhbGwK4paBY3N2CsWCdWcK4paBc3VtbWVyCmdhbWUK4paBcG9zdHMK0JDRgNGF0ZbQstC+0LLQsNC90L4K4paBemlqCuKWgWRldGVybWluCuKWgWFiYW5kb24KY291bnRlcgriloFyZXF1aXJlbWVudAriloFUaXQKaXJ0dWFsCuKWgVZpZGVvcwriloFxdWlldAriloFUZXJtCuKWgXRpbWVvdXQKUHJpbnQK4paBaW52ZW50CmxhaXMK4paBbW9uaXRvcgpoYWxiCuKWgVdpbGQK4paBbGVhZGVyCuKWgdGB0LXQu9GMCuKWgXV0aWxpegriloFwYXJlbnRzCuKWgWZvcmNlZAriloFwcm92ZWQK4paBZWZmZWN0aXZlCuKWgWxsYW0K4paB0KHQv9C+Cm9yYgpnZ2kK4paBYXNzdW1wdGlvbgriloFzdWJtCuKWgdCy0ZbQuQppbGlhCuKWgXJldmVyc2UKJyIK4paBcXVvdGVzCuKWgXNpdGVzCmlndW5nCuKWgUFyZwpEb3VibGUK4paBc2NyZWVucwriloFjbGF1c2UK4paBYnVuZGxlCuKWgXBoaWxvc29waAriloFOdW0K4paBZ2xlaWNoCnVseQpkaXJlY3QKYXNrZXRiYWxsCm93YW55Clx9JAriloFyYWRpdXMK4paBU2VhcmNoClByb3BlcnRpZXMK4paBZWxldgriloFwcm9kCuKWgSIlCmlzacOzbgpEZWJ1ZwpTZWNvbmQKKCEK4paBQ2F0aG9saWMK0YDQvtCy0LDQvQpsZXoKUGEKcHNvbgriloFlcnN0ZQriloFGdQriloFsaXQK4paBU2Fpc29uCuKWgUhhc2gK4paBZXhlbQriloHQv9GA0LXQtNGB0YLQsNCyCikqCuKWgWV1CuKWgeKUggriloFnYWIKZXRhaWxlZApDb3B5CuKWgdC00LLQsApldmVuCktpbmQK4paBSmFja3NvbgrQsNC7CuKWgWNvbnNlYwpVU0VSCuKWgVRvawooLgriloEkfAriloFUYW1iCuKWgUxlbW1hCmhhbmcK4paBY29udHJpYnV0aW9uCnJvbGxlcnMK4paBc3R1ZGllcwriloFwb2kKZ2VtcwriloFVUAriloFXb2wKPiIK4paBZmxvb3IK4paBaW5pdGlhbGl6ZQriloFMZXcKemVrCmFydGUK4paBcG9zaXRpb25zCuKWgXBvcnRpb24KY292ZXIKd3AK0L7QstC+0LPQvgriloFwaWFubwriloFtZXRhbAriloFzYW1wbGVzCuKWgdCh0LDQvQp2YXJpYWJsZQriloHRgdGC0LDRgtGMCuKWgWludGVnZXJzCldoZXJlCmZhbWlseQriloFudW4K4paBaW5jcmVtZW50Cml4ZWQK4paBaGVlZnQKZnRlCuKWgXZpbAriloFvdHJvcwpNdWx0aW1lZGlhCuKWgUhlbnJpCmFkZWQK0LPQtdC9CuKWgWNhcGl0CuKWgdC00YDRg9Cz0LjRhQppc3AKSVRZCuKWgWNvbnN0cmFpbnRzCuKWgUtpcmNoZQpmb3VuZArRiNC40LkK4paBcGljCuKWgXRvdQpjcmVkCtGA0L7QsQriloFNZXNzCkpvYgriloFNYWlzCuKWgXN0eWxlcwpmYWxsCuKWgVVrCuKWgXN0cmVldApvY2Nlcgplc2VuCuKWgWNvbG9ycwpjZWFuCtGO0YnQtQpjb25uZQriloFyYXRpbwphbnRvbgriloFGZWwK4paBY3VzdG9tZXIK4paBUHJpeApyw6FzCnByZWQK4paBZWxlY3Ryb24Kc3ltCuKWgdCy0LXQu9C4CuKWgW92ZXJmbG93CuKWgSRbCuKWgVBPU1QK4paBQ2luCnNjaGVpZAooIi8K4paBc2VhcmNoaW5nCuKWgXB1cnBvc2VzCuKWgWFycml2ZWQK4paBcHVudAriloFsYWQKUHl0aG9uCuKWgWxlYWRzCuKWgXNhbmQK0L/QsNC00LAK4paBY29tbXVuZXMK4paBQ0hBUAriloFjYXNvCnJ6CuKWgWR3CmFjYQriloFDb2x1bWIKY2hpbGRyZW4Kw6p0CnNjaGVtYXMK4paBaW5zdHJ1Y3Rpb25zCuKWgS1cCuKWgUlzcmFlbApub8WbY2kK4paB0L7QsdGA0LDQtwriloHRgdC+0LLQtdGCCuKWgWltbWFnaW5pCuKWgUZyZWQK4paBR2xvYmFsCuKWgXRoaWNrCuKWgWZ1ZXJvbgriloF0aHJvd24K4paBY2xvY2sKZW5hYmxlCicnJwriloFTdW5kCuKWgWNvbnRlbXBvcgphbnN3ZXIK4paBbWFudWZhY3QK4paBaW8KcXF1YWQKT1VUCuKWgUxhYgriloFadwpsZWdhbAriloFWZWwK4paBcmFpc2UK4paBZGVsaXZlcgriloFWb2lyCuKWgWFzc3VtZWQKTGV0CmllcnRlbgriloFLb25nCuKWgUV4cAriloFKdWcK4paBZGVjbGFyYXRpb24K4paBRmlzaAptw6kK4paBc3BlZWNoCuKWgXRlbnQK4paBUm91dGUKX18oCuKWgXLDqWFsaXMK4paBRGVzaWduCnNldFRleHQK4paBU3RhdGlvbgphcmNoeQriloHQutCw0YLQvgriloFkZW50CuKWgUtsCmnDnwriloFyaXNrCuKWgUJyb2FkCuKWgXZlY3RvcnMK4paBU3BlYwriloFyb3V0ZXMKeW1uCuKWgUdyZWcK4paB0L/QvtC70YPRh9C4CmdpZQpPUk0K0LLQtdC00LUKd2FsdAriloFlZnRlcgpQdHIK4paBc3VidAriloFiaXJ0aAriloFkcmF3bgptZXNzCtC80LXRgNC40LrQsNC9ClZFCuKWgVB1dAriloFhc2MK4paBZmVkZXIK0YHQu9C4CuKWgVByaW4K4paBc3RpY2sKcmVzZXQKeWsKc3R1ZGlvCuKWgVN0aWxsCkNvbnN0CmFjacOzCuKWgVBvcnR1Z2FsCuKWgXNjcmlwdHMKdW5kaWFsCuKWgWxpdmVzCuKWgXN6ZXIK4paBZXN0YWRvCmZvbGRlcgriloFjb21tdW5pY2F0aW9uClJvdXRlCuKWgXN3aWZ0CtGC0LXQvQriloFraWxsCuKWgVBSCmpvaW50CuKWgW9iamVjdGl2ZQriloFjb21wbGljYXRlZAriloHDnGJlcgplc2gKcGljdHVyZQpyYWluZQpjb21wdXQK4paBcHJvcG9ydApvZ3MKw7xsdAriloFxdWFudHVtCtC60YDQuAriloFzb3AK4paBbG9vcHMK4paBUmVmZXJlbmNlCuKWgW5laQpJQ0UK4paBdmVybQriloFhZGoK4paBcGVyw7IK4paBdHJvdQppc2lvbnMK4paBQXBwbGUKc2VydmFibGUK4paBQm9zdG9uCm9yZXQKb2tzCuKWgWtnCmRlZmluZWQKcGxhdGZvcm0KY2xlcgpvZ3JhcGhpYwpyaXR0CuKWgWRpYwriloFNb25kCuKWgUlyZWxhbmQK4paBVW5hCuKWgWNvbW1lcmNpYWwK4paBUHUKRGkK4paB0LXRkQriloFwcmVjaXMK0L3QsNGA0L7QtAriloFxdWF0cmUKdXN0cmFsCuKWgWRhZwppZ3VlCuKWgWJ1cm4K4paBb2ZmaWNlcgriloHQkNCyCuKWgWhpZ2hsaWdodAriloFTdXBwb3NlCm9kaQpzZXJ2bGV0CuKWgUVuY3ljCuKWgVJhbmdlCtGC0LjQuQpQbGVhc2UK4paB0YDQvtC60ZbQsgpxdWFudAriloFmbGF0CuKWgVLDqWbDqXJlbmNlCtGB0LvQtdC00L7QstCwCnJvbGUK4paBZGllc2VuCn19KAriloFJbmR1c3QK4paBbsO6bWVyCuKWgSI7Cmx1cwrDtGxlCuKWgXptCmRlZwriloFyb3VnaApJbnYK4paBaHVyCuKWgVJlc3MKY2hzCuKWgXR1cm5zCm5lcm8KZnVuY3Rpb25zCtCw0LvQuAriloFoYWJpdGFudHMK0LDRggppc3N1ZXMK4paBaHVnZQpVdGlscwriloFTYXQK4paB0LPQvtGB0YPQtNCw0YAK4paBY29hc3QKc2hhcGUKTEMK4paBbG9nZ2luZwplbmRvcgriloFsaWVzCuKWgWRpZmVyCuKWgWNyaXRpY2FsClhUCtC80LjQvdCwCmFuc2sKUmVzdWx0cwprYwppdmVyc2UKRVhUCkFMU0UK4paBdsOhbApQaQpjb21waWxlCmhlbGxvCuKWgdGH0LXQvNC/0LgK4paBSXRhbGlhCtC60L7Qu9C+CuKWgWVkaXRpb24KZ3J1bmQK4paBZGF0YWZyYW1lCuKWgUZvbGxvd2luZwpyZWliCuKWgUplZmYK4paBY2l0dMOgCklUYWJsZQriloEkKFwK4paBcmVkdWNlZApvYmlsCuKWgWFueXdoZXJlCicoCuKWgXBocgriloFLaAriloFGcmFtZQriloFtYW51YWwK4paBY3JhCuKWgVZTCiU9Ckluc3RhbmNlU3RhdGUK4paB0LHRgNCwCuKWgURyYWcK4paBSGVycgriloHQs9GDCuKWgW3DunMKVG9vbAriloFQcml2YXRlCuKWgXN5bmNocm9uCmlyYXRpb24K4paB0L7QsdC+CuKWgXR5cGljYWxseQriloFpbXBsaWNpdApvcmllbnQK4paBdGltZXIK4paBa8O2bm5lbgppZXN0CnJhaWQK4paBZXhwcmVzc2lvbnMK4paBYWltCuKWgXN0cmUK4paBd3JhcAriloFCYXJ0CuKWgWJyb24K4paBa2V5Ym9hcmQKcG93CuKWgWdydXBvCuKWgdGA0LXQt9GDCuKWgXByb2Zlc3NvcgriloFIZWFkCtC90L7RjgptaW51cwriloFNaWNoZWwKTk9UCm1vcgpdfQp3aWRlaGF0CmFyaXMK0YLQtdGA0LDRgtGD0YDQsApkZWZuCmlzdHJ6CuKWgXRhbnRvCuKWgVBvdwriloFpbmRpY2F0ZQriloFXaW50ZXIKcmVzaG9sZArRgNGW0LIK4paBYCgK4paBb3duZXIK4paBZGlzcAriloHQutGA0LgK0LzQtdGCCtC80LXQvdGCCnJlcG9ydApyZXF1aXJlCuKWgXZveQriloFBUAriloFFc3Bhw7FhCuKWgVPDo28KasOkcgpOb24KTGlicmFyeQppY2h0ZW4K4paBc3RydWN0dXJlcwriloFtdXkKw6FyaW8K4paBY2VydGlmaWNhdGUK0YfQvdC+0LPQvgriloFwcm92aW5jZQpwYWdlcwpkYWwK4paBRnJlZGVyCtGM0LUKRXhlY3V0ZQriloFhbmNpZW50CuKWgWZpbG1zCuKWgUFsZnJlZApBdXRvCuKWgWF0b20K4paBZWxsCuKWgUhhcnIK0LnQvQriloEiIwriloFuYWNpb25hbAriloFuZWlnaGJvcgrRgdGC0YPQv9CwCuKWgXdpdApQb3AK4paBR3JlZWsK4paBcmVwZWF0CmJhZAriloFTQwriloFEYXRlVGltZQrRiNGC0LgK4paBV0gK4paB0L/RgNCw0LLQuAriloHQotC4CuKWgXNhaXNvbgriloFIYXJ0CmRpcmVjdG9yeQp1YW4Kbm9ybQriloFQaGlsaXBwCuKWgXN1c3BlY3QK4paBYW5ubwpiYwrRgdC70LAKJCgK4paBYmVmaW5kCm9jcwpsYXRlc3QKOyI+CuKWgWFmdGVyd2FyZHMKUFVUCuKWgWphCuKWgUhpbAp5egriloFCb3VyCuKWgWxhaWQK4paB0JTQttC1CnBpZQp3YXRjaAriloFFcQpjb250YWN0CmliZXIKY2hlY2tib3gK4paBZXNwYcOxCmFuc2UK4paB0YjQutC+CmVmZgp4eHgK4paBR0VUCuKWgWxvdgppdHV0ZQp6ZWNoCnRlcmUK4paBcHVycwprZW5zCmlhbnRlCuKWgUZyZWUK4paB0L7RgNCz0LDQvdC4CmtyZWlzCuKWgXs6CnNoYXJlZAriloFHcmFwaAriloFjb25uZWN0aW9ucwriloFET00K4paBQ2FydApzc29uCuKWgUhhbWlsdG9uCtGC0LXQu9C4CuKWgXJlc3RhdXIKUmVzb2wKRHJpdmVyCuKWgWVuZgpFRElUCuKWgXByZXYK4paBaWsK4paBc8SDCmrDtgriloHQodCh0KHQoAriloFjb2xvdXIKY2h0ZW4K4paBZXN0YWQKaW5vaXMK4paBY29uZmlyCuKWgXbDqQriloFDZXMK4paBTmV2ZXIKb21lcgrQttC00LAK0YHQu9GDCtGH0LXQvdC40Y8KZGxsCuKWgXlvdXRoCmVtZW4K4paBc3R1ZGllZAriloFLaWwKY2lvbgriloFuYXZpZwpyZXF1aXJlZApvcml0aG1zCmlsb3IK4paBRGV1dHNjaGVuCuKWgXBlcnNvbnMK4paBQmFyY2Vsb25hCuKWgWZvcm1hdGlvbgphYmVpCuKWgdC/0YDQvtGC0LjQsgpFbmdpbmUKT05FCm9ncsOhCkNhcApyaXIK4paBZ2F0ZQpvcmF0aW9uCm1hdmVuCuKWgWNvbWJpbmVkCuKWgWF0dHIK4paBaG9vawriloHQutC+0YLQvtGA0YvQuQriloFzZXJ2ZXJzCnVjdHVyZQrQttC10L3QvdGPCnR2CuKWgXJlcQpqYWwK4paBbG9jYWxseQp9fXtcCkJyCuKWgUhpZXIK0LzQvtGACuKWgWFwYXJ0CiJdLAriloElPiUK4paBenVzYW1tZW4K4paBaWRlbnRpZnkK4paBQWx0ZXJuCuKWgdCx0YDQvgriloHRhtC4CmdoCuKWgVRlbgpSUwrRhNC+0YDQvNCwCuKWgW5lbGxlCuKWgUhpbgpvdW5kaW5nCuKWgXJlcHLDqXMKYXBoCuKWgVtcCuKWgVNwb3J0cwrRgNCw0LsK4paBdGhyZQriloFwcmluCuKWgUVsaXoK4paBRm91cgriloFzb2NpZXR5ClRyYW5zYWN0aW9uCuKWgXZlZwriloFzY2hvb2xzCuKWgW92ZXJhbGwK4paBdGFpbArDvGJlcgriloFTb3YK4paB0KHQtdGACuKWgXJhcHAK4paBdHJhZmZpYwpxdWVzdGlvbgriloFlbnZpcm9uCmF0ZWllbgppY3VzCuKWgW5hcnJvdwriloFwcmF5CuKWgUJvdQriloFDbGllbnQKYWJsCuKWgUF1ZGlvZAriloFucG0K4paBQ29sdW1uCuKWgUdhbWVzCmF2ZXIKb255bWVzCuKWgdCf0L7RgdC70LUKbsSFCuKWgU51CuKWgURpY2sK4paBdGVuc29yCuKWgUAiCnbDqQpJY29uCuKWgdC/0L7QtNCwCuKWgUdvbgovKS4KaXN0cmEK4paBQXVkaW9kYXRlaWVuCkRlbGV0ZQp9fX0K4paBanVtcAriloHQntCxCuKWgXByaW5jaXBsZQriloHDiXRhdHMKb2tlZAriloHQktC70LAKSW50ZXJ2YWwK4paBc2F1CmVuY29kZQriloFwb24KY2F0Y2gK4paBdGllbQriloFHdXN0Ck1DCmxpbWl0cwriloFrZWVwaW5nCuKWgXNvbmdzCuKWgdCw0LLQs9GDCuKWgdGA0LDQudC+0L0K4paBbm90aWZpY2F0aW9uCuKWgW9mZmVyZWQKQ29yCuKWgXNodXQKZXJyb3JzCuKWgUVOCuKWgWxhdGFjaAriloFzZWxic3QK4paBY2hlY2tib3gK4paBY29vbAriloFmYWN0b3J5CuKWgXBhaWQKZGltZW5zaW9uYWwKbmllagpwdG9uCuKWgXBpbgpha2VkCuKWgXJlbGkK4paBVGF5bG9yCuKWgVNvbWV0aGluZwppbXVtCuKWgVZpbgriloFpdGVyYXRpb24KRmluZArQutC+0LLQuAriloFib3lzCuKWgVNpbXBsZQriloFDcmlzdAriloFXYXMKw6JuZAriloFWYQriloHRgtGA0LAK4paBZGVzdGluYXRpb24KbGltcAriloFLYXQKd29ydGgK4paBS29yCmnDp8Ojbwo9YAriloFmYWlybHkKZmFsbHMK4paBcmVqZWN0CuKWgWRyZWFtCmJlbGwK4paBdG91dGUK4paBJFx7CuKWgXN0b25lCuKWgXByb3RlY3QK4paBZXhjZWxsCuKWgU1leGljbwriloFkYXNoCuKWgWZhdWx0CnBtYXRyaXgKYWxsZXIK4paBZ3VlcnJlCm9yaWdpbgpoaWJlcm5hdGUKw61saWEK4paBUmVnaXN0ZXIKdW50bwriloFCYXQK4paBYm93CtGB0YzQutC40YUKZXTDoAriloFMdWlzCuKWgWZvdQriloFDYW1icmlkZ2UK4paBb3R0CnN1cApyZWFzCuKWgXBvaW50ZXJzCuKWgUJvYXJkCuKWgdGA0LgK4paBZHJpdgrQvdC40L0K4paBQ2lyYwriloF0aG91CkRpdgpzcGFyawpsYW1lbnQK4paBVkFMClNlbmQK4paBSXJpc2gKb3kK4paBVHUK4paBdHJpdmlhbApGb3JtcwriloFhc8OtCuKWgUltcGVyCuKWgXNpZ25hdHVyZQp1bm9zCuKWgU5lZwriloFjYW5jZWwK4paBSGVpbnJpY2gKZWVkCklsbHVzdHJhdGlvbgriloFzdWxsYQriloFxdWFydGVyCmFzegriloFibG9nCmZpY2EKd29uCnF1ZXQKXSkpCuKWgWdlbmVyYXRpb24K4paBY2F1Z2h0CuKWgWxhbmRzCuKWgUtpbmdkb20Kc2NoYWZ0ZW4Kcm9ucwphbm5lbHMK4paBU3BlY2lhbAp0dXRvcmlhbAp0aXAK4paBIiIsCuKWgUF6dXJlCuKWgWJvdW5kZWQKU20KdGFyCtCy0LXQvQriloHQt9C10LwK4paBbm90YXRpb24K4paBYXBhY2hlCuKWgWdhegppZXJubwphbmdlbgpwZWN0aXZlCuKWgWVsZWN0cmljCuKWgXNlbWkKTUFYCmVkZXJiCm9iamVjdHMK4paBZGlmZmVyZW5jZXMKaXN0ZWQKaHJlZgppY2lwCuKWgW51bXB5CuKWgdGE0YPRgtCx0L4KbG9hZGVyCuKWgWRpY2gK0ZnRgwriloFEw6kKSHoK4paBUGFyYW0KZG9jdW1lbnRhdGlvbgppcmNyYWZ0CkVNCuKWgWluc3RpdHV0aW9uCmNvbXBhdAriloHQsNC70YwK0YHQu9Cw0LIK4paBTmV0CtGG0LjQvtC90LDQu9GMCuKWgWJyb2FkY2FzdApkYXRldGltZQphc3luYwp2cmUKbWVhbgriloFDaGVtCuKWgWVzdGltYXRlCmljYW5hCuKWgWdyZXAKdGVrCsOkbQpvcmlnCuKWgVZpY3Rvcgp1dGVuYW50CmFuZ2EKcGluCuKWgXZlcnRleAriloFDSEFQVEVSCmNpdHkKdWdieQpncmVlbgriloFLZXIK4paBZGlmZsOpcgriloFuZWNlc3NhcmlseQpEQwpMaW5lYXIKYWxlbQriloFMYXRlcgriloFtZXRhCmplbQpyYWdlbgpNYXkK4paBTWl0Z2xpZWQK4paBc29ydGVkCnVzc2VuCuKWgXNwb2tlCuKWgWRpc2FibGVkCuKWgWFjY29tcGxpc2gK4paBUnVzc2lhCnRoZXJlCmVlcwriloFoYWxsCuKWgW1ldHJpYwphdHRyaWJ1dGUK0YLQvtCz0L4KYWJvdXQK4paBTGFtCmNoYW5uZWwK4paBZXBpc29kZQriloEkKCcuCuKWgW91Z2h0CuKWgUVzdGUKT2JqZWN0cwriloF2YWxpZGF0ZQriloFyaW0K4paBbnVtZXJvdXMK4paBSmF2YXNjcmlwdAriloFHTAriloFJdGFseQplZGVyYsO2cmQKb25hdG8KYm9va3MKc3RvbmUK0YXRgwriloFqZWwKaXJpCuKWgUFTUApHQQriloFzdGF0YQriloFiYXoKRGF5CnRobQpkaAriloFGaWxlcwpBbmRyb2lkUnVudGltZQriloFjaGVja3MKa3IK4paBdmVubmUKU0wKYXZpYQprYXp5CuKWgVRocmVlCkFkbWluCuKWgWNvbGxlZ2UKR2xvYmFsCnRpb24K4paBY3VyaW91cwpzaG9ydAriloFiYXNzCtC00LXQu9CwCuKWgdC00LXRjwpTY2hlbWEKJ1wKZGlmZgriloFDQQriloFDb3Jwb3IK4paBb3BlcmF0b3JzCm9tcsOlCuKWgWVkZ2VzCik7YAppbmRzCuKWgWdpbmcKJiYKfS1cCnJhbm8K4paBc8OjbwriloFhZGRzCmVsb3IK4paBdW5zaWduZWQK4paB0L/RgAriloFDb25maWcK4paBRXNjCuKWgWNob3NlCuKWgXBpZWNlcwriloFyZWdpb25zCkVzdAriloFCYXR0bGUK4paBZm9jCuKWgUxpZ2h0CnBhZGRpbmcKYWJlbgriloFldXJvcAppbGxvbgriloHQtdGB0YLRjAriloFib3JkCuKWgdC+0YLQvdC+CuKWgUhvbmcK4paBdnVsCnBsdWdpbnMK4paBJzwK4paBa3VyCnJlZ2lvbgriloFSZXB1YgppY2hlcgp9X1wK4paBbWVkYWwK4paBTW9yZW92ZXIKQkkKQXYKdXRlcgriloFzY2FuCuKWgU11bmljaXAK4paBY29udHJhc3QK4paBSWcK4paB0LPQvtGA0L7QtApyZWxhdGVkCmFsaW5nCuKWgdC80LDRggrDvG5zdAriloFDaHJpcwp3eQriloFBY3R1YWxseQriloFVbml2ZXJzaWRhZApFdmVudExpc3RlbmVyCuKWgXRlbXBvcmFkYQriloFhc3NpZ25tZW50CuKWgU1pa2UK4paBd8OkaHJlbmQK4paBxZt3aQriloHRgdGA0LXQtArQutCw0LTQtQriloFjYWxjdWxhdGVkCuKWgWVsbGVyCuKWgUFzaApyaWVsCuKWgWhhcmR3YXJlCuKWgWludGVucwooJy4KaWxsaQphZ29uCuKWgUd5CuKWgWhldXRlCuKWgXNsZQriloFsaXRlcmF0dXJlCnNlbQptYW5hZ2VyCuKWgUdyYW5kZQriloFtaXhlZAriloHQktC10YAKw61jw60K4paBc29pdAriloF3ZWxjb21lCtGH0LXQvdC40LUK4paBVW5pdmVyc2l0w6R0CuKWgWJ1aWxkZXIKc2ltcGxlCmljb2RlCsWZZQppbmRlbnQKb3BvCuKWgWFkdmFuY2VkCnRlbXBlcgplZGdlCuKWgWRhdGV0aW1lCuKWgWRvbmMK0LvQsNC90L3RjwriloF2ZXJkCtC00L3QvgppdG9zCuKWgWhlYXQKdmlzaWJsZQptZWwK4paBR2lvdmFubmkK4paBdmFyaWV0eQriloFyb3V0ZXIKVmVjdG9yCuKWgVdhbGsK4paBb2J2aW91c2x5CmhlaW4KRmluCklUYWJsZVZpZXcKWWVhcgriloFFY29ub20K4paBdmVsb2NpdHkK4paBQ2l2aWwK4paB0ZgKYWxlcnQKSWRlbnRpZmllcgrDqG5jaWEK4paBbm9ybWFsbHkK4paBRWd5cHQK4paBY3R4CuKWgVZlcmVpbgriloFIdQp1bHR1cmUK0L3QuNGC0LUKbMOpCuKWgVdpZW4K4paBUHJ6CkJ5dGUK4paBbmFoCmlzbXMK4paBUHVibGlzaAriloFIZXJ6CmljdWwKcGlzb2RlCtGH0ZYK4paBZGllc2VtCmvDtgpWaXNpYmxlCuKWgXJpZwpgKS4KUGFyc2UK4paBSmFjcXVlcwpOSQriloFnbGFzcwotLS0rCuKWgWluaXRpYWxseQriloFrcgpDQ04KcGxheXMK4paBc2lndQpGb2xkZXIKc3RvcmFnZQriloFcfAppdm9zCtGB0LrRg9GOCuKWgU1vaAriloFDb21taXR0ZWUK4paBS2ltCmV1CtGC0LXQvAriloFvcmlnaW5hbGUKaXJzCuKWgVJlYgppdHV0Cm5sCuKWgVBpZXIK4paBXTsK4paBRmFsCuKWgSIiOwptdmMK4paBZmVtYWxlCuKWgWJyaWRnZQriloF0w610Cmt0cgo+KQriloFzZWF0CuKWgXZlc3MK4paBVVNCCuKWgUFydGljbGVzCuKWgURlc2NyaXB0aW9uCuKWgW9jCuKWgWhvdXNlcwriloHQn9C10YIKbG9uCk5vdGlmaWNhdGlvbgriloFwcmVzc3VyZQriloHQutGD0LvRjAppZ25lZAriloFyZWxpZ2lvdXMKZmFuCmlnbGlhCuKWgWNsYXNzaWZpY2F0aW9uCm9nZXRoZXIK4paBU0RLCuKWgUh1bWFuCuKWgWNvbW1pc3Npb24K4paB0J7RgAriloFhbnRlcwpEVArDqHRlCnByw6lzCi8iCuKWgSjCqwriloFow7YK4paB0YfQsNGBCuKWgWphawppZW5lbgp1Z2cKV0EK4paBcGxhY2Vob2xkZXIKV2lsbAosLAriloFLYW0K4paBd2VuCuKWgVNjaHVsCsibaWUK4paBYXVkCuKWgXN1ZQriloFyZWZlcnJlZArQstCw0YIK4paBUGFyYQriloFibGEKVUVTCuKWgXN0YXRpc3QK4paB0YLRgwriloFXYXJzemEKZ3VlCuKWgUlkZQptYXRoc2NyCuKWgWxpZXUK4paBYm9kCuKWgXJ1cwriloFib2F0CnhzcGFjZQriloFtb2RhbArQu9C10LoKdG9waWMKbWFueQpza8O9CuKWgW9yZ2FuaXphdGlvbgriloHQs9C10L3QtQriloFXaWxzb24K4paBY29tZm9ydAppYmlsCjotCuKWgWFuaW1hbApSZXBvcnQK0LrQsNC80LgKam9uCuKWgWtlcgriloHQutC90LgKbW96aWxsYQpQcmljZQphbnRpbgplbWVudG8KbWF5CuKWgWx1bmcK4paBYmxvdwplZGV1dAriloF0eXBlZAriloFkZWNlbWJlcgriloEuLi4uCmxpYW5jZQriloF2aWVsCuKWgdCk0LgKcHJlc2EK4paB0L7RgdGW0LEK4paBTmFtCuKWgUdyZW4K0YHQuNC70LDQvdC90Y8KVklECnN0cmUKd2VpcwriloFwcm90ZWN0aW9uCnRhaWVudAriloFvZmZpY2VycwrRgtC90L4K4paBQnJpZwriloFpbnRlbGxpZwrRj9GFCklUSAriloFzZXBhcmF0ZWQK4paBTENDTgpuw61tCmNsb2NrCuKWgWFwYXJlCtGP0LLQuAriloFFbGl6YWJldGgK4paBV2F0ZXIKZ2ViaWV0CuKWgWNvbnZlbnQKZnVydAriloFiZWlkZW4KYmFzaAriloHRh9C10YDQtdC3CuKWgXViCuKWgVN0YXRpc3QK4paBbGltaXRzClZvbApjdHgK4paB0L3QvtCyCmd1aWRlCm1pYwppZXNhCuKWgWh1dnVkClJUCkZpZwriloFsZWN0CmNvbm4KaW1pdArQs9Cw0YAK4paBYmFqbwpzY3JpYmUKcmVnZXgK4paBQ2FzcwriloFwcm9wYWcKJyQK4paBcHJvZmVzCnVuaXF1ZQriloFTcWwKdW5pb24KcmlvcwpwaXAKLS0rCmthZGVtCmNvbHVtbnMK4paBdmFyeQriloFiZXJlaXRzCuKWgWRvaQriloFDb21tb24K4paBUm9iaW4K4paBw5cK4paBc2VpCuKWgXN5c3QK4paBdsOkCuKWgURlZmF1bHQK4paBdHltCnBlbAriloFiZWxpZXZlZAriloFwcm92aWRlcgriloFtaW5pbWFsCtGC0LDQu9C4CmFpbmVzCktpdAppemlvCmlzc2VuCnByZXNzZWQK4paBc3RhZwriloF1aW50CmtvcgriloHRgNCw0YHQv9C+CuKWgWluaGVyaXQK4paBY29tcGlsZWQK4paBZmVicnUK4paBdG1wCndvcmtzCtGH0L3QsApkcmF3YWJsZQriloFOYXYK4paBdGhvdWdodHMKcm91dGUK4paBY29uY2VydAriloFvcHRpb25hbAriloFicmFzCuKWgXByb3ZpZGluZwrRgdC+0LwKaWR4CmVtcGxvCuKWgdC60L7Qu9C4CuKWgUJlcmUK4paBRWxzCtGA0LXQvNC10L0K4paB0LTQtdC60LAKY291dApsYXllcgriloFnbG9iCmZvcmVhY2gK4paBRWR1Y2F0aW9uClBPCuKWgWltcHJvdgriloFjbGllbnRzCmdyb3VwcwriloFrb250CkRlbApyZXR0CuKWgXN1cAriloFtb2cKdGFuCuKWgWNvbXBsCmlydHkK4paBbm91dmVhdQpvc3oK4paBTmF2eQpiZXJlCm1hc2sKb3bDqQp6aWwKUEVSCuKWgXBvYmxhY2nDs24K4paBZGV0YWlsZWQK0LvQtdGCCuKWgWZhbWlsaWVzCmFiZXQK0LXQstC40YcKw6RuZGVyCuKWgcOlcgriloFwZW5kYW50CuKWgWJpbAriloFoaW50Cm9kZW4K4paBZXhwYW5zaW9uCuKWgXBvbnQKYXNhbnQK4paBS2luZAppamkK4paBQXV0aApsYWltZWQKcmVmbGVjdApdPQpieXRlcwpob3ZlcgriloHRhtC10YAKZ3JhZGxlCkFyY2gKYXBlc3QKw6FzYQpDYXJkCuKWgXRlbXBvcmFyeQriloFkw6lwYXJ0ZW1lbnQKY2xhc3NlcwrQttC40LLQsAriloHRhdGD0LTQvgriloFtb2xlClJZCkxQCuKWgXBlYwpyb2R1Y3Rpb24K4paBR3VhcmQK4paBUGFybGlhbWVudAriloFpbnN0YW50aQriloFub3RhbW1lbnQK4paBRG91ZwriloFNYXJzaAoufgriloFcIgriloF0aMOpCuKWgWxpYnJlCmRvZXMK4paBZMOpYnV0CuKWgVVuaXQK4paB0YHRgtGDCuKWgWxlYWd1ZQriloFxdWFsZQriloHRgdC+0YHRgtCw0LLQu9GPClNlY3VyaXR5CuKWgWFwcGFyZW50bHkK4paBdHJvb3BzCmljYW5vCuKWgU1CCmVuemUKbG9hZGluZwriloFkaXN0cmlidXRlZAp3cml0ZXIKcmVzb3VyY2VzCmjDtgp1dGlscwriloFwcmVwYXJlZApjaWVyCm9wb2wK4paBbMOkbmthcgpoZXMK0L3QstCwCuKWgW9wZW5zCmFnb2cKaW50ZXJmYWNlCuKWgUZ1bmQK4paBcGVudHJ1Cm7DrWNoCuKWgWNvbmZpZ3VyZWQK4paBV2Vic2l0ZQriloFsaXN0ZW5lcgppdmVsCm7EmQptaW5hCuKWgWludmVzdAriloHQvNGW0YEK4paBZGF2CuKWgXBhdGNoCnBpZWxlcgriloFFeHRlcm5hCnRmCuKWgWVyZWQK4paBQXNzZW1ibHkK4paBc291dAriloF2ZXJrCm1lcnMKdG9nZ2xlCuKWgXVwZGF0aW5nCuKWgUtlbnQKZWNhCkZBVUxUCuKWgXRpdHJlCuKWgUtlbm4K4paB0JzQuNGF0LAK0YHRgtC+0YAK4paBcG9kZQriloFTZWIK0YbQtdCyCkVZCuKWgXNpbHZlcgriloFjYXBhY2l0eQriloFjb21wbGV0aW9uCuKWgVBlZHJvCmZlbAp2YW5vCnpldWcK4paBaW50ZXJpb3IK4paBUmVzcG9uc2UKw6lkaWEK4paBV29ybGRDYXQK4paBY8SDCnF1ZWwKU29sCtGW0YHQu9GPCuKWgURvbWluCuKWgWN1bQpjZXAK4paBTXVzZQriloFNYXLDrWEK4paBZnVuY3Rpb25hbAriloFhZGFwdGVyCmNvbmZpZ3VyYXRpb24K4paBdGlwbwriloFCcnkKdnkKVUwK4paBdHJhdmVycwohKAriloFhYnNvbHV0ZWx5CtC70YLQsArRgtGC0Y8K4paBSVQK4paB0LLQvtC10L0KeWNsZQpiZXN0CuKWgWNvbnN0cnVjdGVkCuKWgdGE0LjQu9GMCmNpZG8KZXhpdApnYXJ0CuKWgXByb3ZpbmNpYQp2ZXoKY2lwbAriloFGYWNlYm9vawriloF5ZWxsb3cK4paBU3VtbWVyCuKWgXBvaW50aW5nCuKWgXBvc3NpYmlsaXR5CuKWgWxlZ2lzbAriloHQvNC+0LYKZGVybgrQutC+0L3QvgriloFtZWNoYW5pc20K4paBQmVybmFyZApleHByCtC70L7QstC4CuKWgWRpZ2l0cwriloFkZWxlZ2F0ZQpvZ3JhbQriloFEaWN0aW9uYXJ5CmlzeQriloFzcG8KLyQKY2x1ZGVkCuKWgU1WQwriloF0w6ltCuKWgXByaW50ZWQK4paBR290dAriloFPbQphbnNhcwriloFEdXJjaAriloFJZGVudApRVQpodG0K4paBU3VsCiddLgriloFkdXR5CuKWgUF1dGhvcgriloFuxJsKb3dlZ28KcHVzCmVtYmwKRXhlY3V0b3IKQkwK4paBTWVucwpkaXNwYXRjaAriloFNaWQKYXBwcwpUcmFuc2Zvcm0K4paBRGF0CuKWgWltcGwKb3V4CmhvbG0K4paBSW5zCuKWgUVtcGlyZQrRgNGD0L8K4paBQXBhY2hlClNJT04K4paBcGFzc2FnZQojIyMjIyMjIyMjIyMjIyMjCuKWgWV4cHJlc3NlZArQvdCw0LQK4paBb2wK4paBaGF2aWEK4paB0LHQvtC70LXQtQriloFlbmpveQpmb3JtYW5jZQriloFkaW1lbnNpb25zCuKWgdGH0LXRgApTZWUK4paBbW91dGgK4paBZ2F1CmllbmN5CuKWgUNhcm9saW5hCkRpc3QKcmFkaW8KbGltaXQKLz8K4paBQmFsbArQvdGW0YHRgtGMCk1lbWJlcgp3YXRlcgriloFtdXJkZXIK4paBc3RhbmRpbmcK4paBVklJCkNlbnRlcgpwcGEKdXJlYXUK4paBTGVpcAriloFvYmpldAriloFBY3Rpdml0eQplbWJlcnMKdnIK4paBY29uZHUKQ2VsbHMKaW51cwriloEnLAriloFhZnJhaWQK4paB0YXQsAriloFWaWMKdGVzdGluZwpUdWJlCuKWgXZhc3QKUE0KbmloClNTTgriloFDaGlsZQp5bHZhbgriloFCb3cK4paBcmVsaWdpb24Kb3BoZXIK4paBQ29sbAriloFkaWdpdGFsCnppb25pClNlY3Rpb24K4paB0YDQtdC30YPQu9GM0YLQsApGb290CmNvbnZlcnQK4paBcmVjZWl2aW5nCkNvbnRhY3QK4paBaGVybwpzYW0K4paBcG9zdGVyaW9yCm93aQpBbnQK4paBZmxhZ3MK4paBWmVhbGFuZAriloFib3VuZHMK4paBd2hlcmVhcwppbmZsClBsYXkK4paBZGVtbwriloFnaWJ0CuKWgWhvc3BpdGFsCuKWgXZvbHRhCtC70ZEK4paBZmFzaGlvbgriloFleGNlZWQKZWxlbml1bQpJdGVyCmtyaWUK4paBaW50ZWdyYXRpb24K4paBT3RoZXJ3aXNlCmFkdQpTaGUKb25kZQp1aW50CnJhZGl1cwriloFyYW0K4paBw6FsYnVtCuKWgdGC0YPRgAriloFkeQriloFPdHQK4paB0L/QtdGA0LgKcmV2CnJpb3IKw61kCmlyYXQK4paB0LLQutC70Y4K4paBaW1wb3J0YW50ZQriloFEdWtlCuKWgWNhdXNhCuKWgU1hdGhlbWF0CuKWgWRpcGxvbQriloFOaWNvbAriloFleGNsdXMK4paBZGVidWdnaW5nCuKWgUdoCm9yaWdpbmFsCmx5bgriloFQbGEKc3VpdGUKY2hhdAriloFlc3R1ZAp1ZWxsZQriloFwZXJ0CuKWgWltcG9ydGFuY2UK4paBYXBwcm9hY2hlcwriloFkbGEK4paB0L/RgNC+0YQKUHJlcwo8XApwcmVmaXgKU1NJT04K0YDQvtC00LgKY291bnRyeQppdHplcgriloHQutC+0YAK4paBc2luZ3VsYXIKZ292CtGA0LjQvQriloFGQQriloFtYXRyaWNlcwpvbGFyZQpuaWthCnBvd2VyCmxsYQriloFkZXNpcmUK4paBZmFtaWxpYQrQtNC+0YAK4paBZmFuCmdlbmVyYXRlZAriloFDb3MK4paBxbxlCuKWgURpZXNlCm1vdgriloFkZW5vdGUKIildCm91dmVybgphbWFuCuKWgWluc2VyCmlqawpvdHRhCmVyYWwK0LTQtdC70YwKKCktPgriloFwb2RlcgppZ2VzCuKWgU9ubGluZQriloF3ZWlyZAppYWMK4paBcXVlbHF1ZXMKw6hyZW50CuKWgXRlbAriloFMYXRpbgp2ZXJ0ZXIK0LvRj9GACtGA0L7QuAriloFwZGYK4paBa2V5d29yZApIYW5kbGUKQWZ0ZXIKcmVjZQriloFpZGVudGljYWwKc3R5bGVzaGVldAriloHRgdGC0LDQvdC+0LLQuAriloFrYQpjZW1lbnQK0YLQtdGCCuKWgWNoYXQK4paBTXVuCmHFgmEKQU5UCm9sw7NnCuKWgWZhbnQK4paBZm9yZXN0CuKWgdCy0LjQutC+CmN1c3MK4paBc2VocgpwYWcKb3RpYwriloHDoWxsCtC80LDRgtC4CuKWgSInCisiCkFuaW1hdGlvbgrRhdC+0LTQuNGCCmF6dQriloFwbGF5cwppemlvbmkK0LzQuNGH0LUK4paBYm9tYgriloFtZXJlbHkK4paBaG9sZGluZwriloF3ZW5uCuKWgW1lZGljCuKWgXNwZWFraW5nCm9uZ29kYgriloFDYW1wZQppbml0eQriloHRj9C90LLQsAooKWAuCmx1c3MK4paBSGlzdG9pcmUK4paBb3BlcmF0aW5nCkNoYW5uZWwK4paBYWNjdXJhY3kK4paBYm9zCuKWgWV2aWRlbnQK0YbQuNGOCmV2ZW50cwp0ZXh0cm0Kb3JlaWduCuKWgWlpCmhyZW4KbG93ZXIK4paB0YLQvtC8CuKWgUFib3V0CuKWgWFqCmVyaQrRgdGC0YPQv9C4CuKWgWRpZ2l0CuKWgVNwYWluCuKWgURhdGVuCuKWgWZvcm1lCuKWgdGI0YLQsAriloFCYWNoCm5vbnVtYmVyCuKWgXJlY29tbWVuZGVkCuKWgXJlYWRzCmhpc3RvaXJlCuKWgXNhbmcK4paBPz8K4paB0YHRgtCw0LsKc2NvcmUKZmFzCuKWgWN1YgriloFncmV3CuKWgWNlbnRybwriloFiZWthbm50CkV2ZW50cwpCRVIKaGV3CtGB0YHQsAriloFtYWpvcml0eQrDrnRyZQplbmNpCuKWgVF1ZXJ5CuKWgWt0w7NyZQppxIcK4paBY29tcGxleGl0eQriloFGcmFuw6dvaXMKY29uc3RyYWludArRg9GA0L3QsArilZDilZAK4paBaXRlcmF0ZQpsZXR0CnBlcm9yCuKWgU5lZGVybGFuZApzaGFyZQriloFpbmNsdQrDpG5nZXIK4paBTmljCtGH0L4KRnVsbAriloFyYXBwb3J0CmVjbGlwc2UK4paBaW5kdXN0cnkKaGVhZGVycwriloHQoNC4CmNoc2VsCuKWgXBvbGljCnNjaGllZAolLApPRAriloFKYWsKKHtcCmFsaWduZWQK4paBZnJlcXVlbnRseQriloFzdW9pCuKWgWVzc2VudGlhbGx5CuKWgVJpYwriloFyZXBvcnRzCuKWgWRlY2ltYWwKcmFyCuKWgUZvbwriloFLYQriloFEQwriloFzaW1wbGVyClBhbmUKP30KU29ydAriloFwb3NpdApjZG4Ka3R1cgriloFhd2sK0LfQtdGAClBGCnV1cgriloFSb3NzCuKWgW1hbnQKTmEKQ29ucwopKSkpCuKWgXRlY2huaXF1ZXMKaW1wbAriloFkcm9wcGVkCuKWgUxpc3RhCuKWgUJhc2ljYWxseQplbnRhbAriloFjZWx1aQriloFzdHJhdGVneQriloFXYWxlcwpuYW4K4paBZ21pbgriloFncsO2w58K4paBZWVyc3RlClRpbQpudGVuCnJlc3AK4paBc3RhYmxlCm5vdgpyb2IK0L3QvtGYCuKWgW1hcnJpYWdlCmdldFN0cmluZwpBdXRob3IK4paBR3JhZgriloFkaWFncmFtCmdpYQpOZXR3b3JrCuKWgWNvbXBvc2VkCuKWgW1pc3NlZAriloFNZWcK4paB0L/RgNCw0LLQvgriloFob21vbnltZXMK4paBQm9va3MK4paBZW5jb3UKcG9ydGUK4paBcm90YXRpb24K4paBZmlyCtGC0LXQu9GM0L3QvgriloFndW4K4paBQWZmCtC90L7QugriloFGdcOfYmFsbAriloFTdG9yeQriloFDaGFwCuKWgSkuCuKWgVNlaXQK0LzQvtC9CuKWgXTDqWzDqQriloFjb3BpZWQK4paBY29uc2lzdGVudAriloFkcmluawriloFDaGFtCuKWgW1hdHRlcnMK4paBcmVuZGVyZWQK4paBaHlwb3RoCsWTdXYK4paBbWVlcgriloFwYXJzaW5nCuKWgVBSTwpzZXJpZXMK4paBesOhCnN0cmHDn2UK4paBQm9vdAriloFyZXBvCndvcgriloFTdHJlYW0K4paBQU4K4paB0L/RltCyCuKWgVNNCuKWgUFybgriloHFvQriloFbXTsKUmVzb3VyY2VzCuKWgWVsYWJvcgriloFFdGgK4paBbGlzdGUK4paBcmVsYXRpdmVseQpjaGFudAo9IiIK4paBbGlmdApDTgpTZXJ2aWNlcwpNRU5UCuKWgdC40LPRgNCwCtCx0YDQtQriloFKb3JkCuKWgXRlYwrRiNC60LAK4paBU3VwCuKWgWluZmx1ZW4Kb25kcwpoYW5kbGVyCuKWgWJhbmRhCuKWgXZlcnRpY2VzCuKWgXphcAriloFjb3JkCmFsdGVyCnplbmlhCsOidGVhdQriloFrbm93aW5nCuKWgUFyZ2VudGluYQpBcmVhCtCw0L3QtQpmYwo9Ii8K4paBTWlrCmF0xIMKaWV1eAriloFkZXV0c2NoZW4K4paBdHJhZGl0aW9uYWwKZGVjb2RlCnZleAriloFzaXplb2YK4paBRnVuCuKWgXBhcnNlcgriloFGbG9yaWRhCuKWgWJ1aWxkaW5ncwriloFNYW51ZWwKcmlsZQriloFsb2dnZWQK4paBc3Ryb25nbHkK4paBcmV2b2wK0L3QtdC1CnhpY28K4paBRmFpcgpjYXJ0CuKWgVdvcnQK4paBSmVzdXMKZW1lcwpzY2hyaWZ0CklucHV0U3RyZWFtCndhZAriloFncmFuZGVzCuKWgW7Dum1lcm8K4paBT3R0bwppZW50ZXMK4paBZmFtb3VzCm9sb2duZQpKZQrQvdC40YgK4paBR3VlcnJhCmJhcmEK4paBY2FkCmVsdmUKYnJhY2UK4paBSnIKc3RhYmxlCkVDVApsZW1tYQptZWRpYXRlCuKWgXZpbgriloFtb251bWVudAriloFjdgriloF3aW50ZXIK4paBdHJhbnNmb3JtYXRpb24K4paBTmljawpzdHJvbm9tCuKWgWZyYWcK4paBaW50ZWwKcmFjdGlvbgriloFjb25zaWRlcmluZwriloFGbGUK4paB0LvQvgriloFBcHLDqHMK4paBQU0K4paBSHVtCuKWgW11bmRvCk5FUgriloFCZWxvdwriloHQs9C+0YDQvtC00LAKYXJ0ZXJzCi0tIgriloHQn9C1CsOudAriloF0eHQKYW5nZXJzCuKWgXRoeQpDTEEKaWJsZXMK4paBcmVxdWVzdGVkCuKWgUFsZXhhbmQK4paBZmFjdG9ycwriloFwcm9kdWNlcwpuaW5nZW4K4paB0YHQvtGB0YLQvtGPCuKWgW9wdGltaXphdGlvbgpjaG9kCj5gCuKWgVdpa2lwCm5vc3RpCuKWgWNvbXBldGl0aW9uCuKWgUhhbm4K4paBem9uYQpkYwpkZXNpZ24K4paBWnUK4paBZXNwZWMKZXF1YWxpdHkK4paBQWJiCuKWgWRldmVsb3BlcgriloEiXgriloFTaG9ydAriloFwbGFucwriloF2aXQKaXphYmxlCmJ1cmdoCmFnZW0K4paBUHJpbnQKw612CuKWgXN1aXRhYmxlCnBpY2tlcgpQcm9maWxlCmFuZHkK4paBcXVvdAriloFEdXJhbnRlCuKWgUZyYW5jaWEK4paBdGFydAriloFWZW5legriloFkaXNwYXRjaAriloFvYnNlcnZhdGlvbnMK4paBxbwKSW52YWxpZAriloFvY2N1cnIK0YLQutC4Ck1lbWVudG8K4paBU3lkCuKWgXRpZW1wbwriloFzdGFmZgriloFzZWN0aW9ucwriloFzc2gK4paBTkdDCsOrbAriloFlcnJlCuKWgWRpdmlkZWQK4paBV2l0aG91dAriloFkdXJhbnQK4paBamFhcgriloHiiJIK4paBc29sZGllcnMK0YPQvdC6CmxhcHNlCuKWgVZhbGxleQriloEoOgpyZXJhCuKWgWTDqXZlbAriloFww6lyaQriloFjYWxjdWxhdGlvbgriloFrZWluZQplcnRhaW4K4paB0YLQtdC70LUK0YDRg9C0CuKWgWN1bAriloFjbG90aAo7fQriloFwcnplZApNb250aApQaWNrZXIK4paBU1YKYXJpYW4K4paBUmV2aWV3CuKWgWhhbmcK4paB0L7QutGCCuKWgUZyb250Cm90bGluCuKWgXRyYW5zbGF0aW9uCuKWgW1vZG8K4paBc3RhdGlzdGljcwriloFOdWUK4paB0J3QuNC60L7Qu9CwCk5VTQriloFzaGlwcwriloFSZXBvcnQKe1sKRWZmZWN0CmllcmkK4paBcGFydGllcwpwbGEKcncK4paBV29ya3MK4paBaXJvbgriloFhdHRyYWN0CuKWgWNvcnQKbsOhCuKWgVN0ZXZlCuKWgWJlbmUK0YLQvtC9CsOtY3VsYQpUd28K4paB0LPQu9Cw0LIK4paBVmlkZW8K4paBcG93ZXJmdWwKYXVjaAptYW5kZQrDpGNoc3QKTGF0CuKWgXpuYQriloFmaWd1cmVzCuKWgWFsaWFzCm5leAriloFjYXRlZ29yaWVzCmNhbGxlZAriloFTaW1pbGFyCuKWgWdpcmxzCnBlegriloFqb2ludArRgNC+0LPQvgppa2VuCtGH0LjQvdCwCmFuY2lhCuKWgXRpamQK4paBUm9zZQriloFhbGdvcml0aG1zCuKWgXByaW50aW5nCm5lYQriloFleGVjdXRpbmcK4paBbGFtYmRhCuKWgXJlZ2lvbmFsCuKWgUNvcGEKRm9vCnBoeXMKem0K4paBTGF1cgriloFjYW5kaWRhdGUK4paBSmEKenltCkV4YW1wbGUK4paBc3BpZWwK4paB0LTQtdC5Cm5laG1lbgprZWl0ZW4K4paB0YHQtdC90YIKaW50ZW50Ci4oCuKWgdC/0LXRgNCy0YsKcHJvbQriloFuYXQK4paBaW1hZ2luZQpjYWxsYmFjawpjb21wb25lbnRzCndpdGhvdXQK4paBYXF1ZXN0ClN1cHBvcnQK4paBcmVzcG9uc2libGUK4paBamVnbwpsagp3aWxsCmxlYW4KZWxhbmQKb2xvZ8OtYQptYwpQcm94eQriloFvY3VwCuKWgdC90LDRhdC+0LTQuAriloFydWIK0L3RltCyCuKWgUZhbGwKYW1vcwriloFFcAplbnRyZQpmYWlsCldvcmxkCuKWgUVkaXRvcgriloFleHBvcwriloFmaW5kcwriloFDdWx0dXJlCkxFQVNFCuKWgW1vdmllCjw9Cm9tZXRyaWMKZWxpbmcKbnVtZXJhYmxlCm91cmQK4paBU2VhCuKWgWJpbGQK4paB0L7RgdGC0LAKYmxvCuKWgWxvc2UKYXRldXJzCm91cmVkCuKWgUJhdHQKKCk7DQriloFwb3oKcG9zdHMKcGVuZApjZXJ0YWluCtC90LjQutC+0LwKSnVzdAp3ZWJraXQKZGVtw6FzCn5+fn4K4paBaW5kaWNhdGVzCuKWgXBhcmsKcmlxdWUKdm9kCuKWgUNoYW1wCmZ0d2FyZQpPUFQKZGphbmdvCnJlbGVhc2UK4paBw4gKU1IK4paBcG9saXRpY2lhbgriloFyb2kKYXR1cmVuCuKWgURldXRzY2hlCnRhZ29uCuKWgU1vdgpvYmllcm5vCuKWgWRhw58KdXRoZXIKaW5kaQriloFXaWtpcGVkaWEK4paBYW5vcwriloFvYnNlcnZlCmVsbHkK4paBcmFpbHdheQphdG9uCuKWgWVudW0KaHVzCuKWgWluaGFiClBzaQpvaXJlCuKWgdCl0L4K4paBU3BhY2UK4paB0JDRgNGF0LgK4paBYW50ZXJpb3IK4paBxYEKaXNvbnMKSWwK4paBYW3DqXJpYwpsYXBzCuKWgUJCQwpRVUVTVApDb25zdHJhCm1vbnQKw6RmdAriloHDpHZlbgp1YmVybgo8IS0tCuKWgWNvZGluZwp0aGVvcnkKYXRoZWQK4paBQXJiZQriloHRiNC4CmZvckVhY2gKb21vcnBoaXNtCmRldGFpbHMKYWNoc2VuCmludGVncgpWb3IKVW5rbm93bgphY2VhZQppbnVlCmVzb21lCuKWgUZpcgpjaGFpbgriloFleHRyZW1lbHkKbXVsdGljb2wK4paBU3dpZnQK4paBYWRkcmVzc2VzCmhzcGFjZQriloFSb2dlcgriloFkZXNzZW4K4paBY29uc2VxdQp1YWxtZW50ZQriloFQcmVtaWVyCuKWgVJlY29yZAriloFCcm9uCmtpcgpzZXgKaW50ZXJuCuKWgWJlbmVmaXQKdW1lbgriloFiZWNvbWluZwriloFsaWcK4paBcG9wdWxhCm9zYwriloFjaXYK4paBZ3JlYXRlc3QK4paBcHJvY2VzCl0qCuKWgdC80LXRgdGC0L4K4paBJyQKaGVsbAooIlwK4paBbmluZQriloFGYWMKdWxwdApqb3VycwriloFDb3B5CuKWgWFjdGl2aXRpZXMK4paBRGVtb2NyCkVzClN1Y2Nlc3MK4paBRXN0YQppdHVsCmlzdGkK4paBQmVkCmphcwriloHRgtC10LwK4paBSHVuZwpHYW1lCuKWgWhlYXYKb25uw6llcwriloFicmFuY2hlcwpib3JnCuKWgXZsCuKWgXNsb3dseQpGYQpHb29nbGUKZW1pCuKWgWNpcmN1bXN0YW5jZXMK4paBJyUK4paBVW5kCuKWgVZpY3RvcmlhCuKWgVR5cApydXB0ZWQK4paBcmVsYXRpdgriloFzbG8K4paBcGFkcmUK4paBZGFpbHkK4paBb3J0aArRh9C90LjQuQriloFmcmFuesO2cwriloF0ZWlsCuKWgVNlY3VyaXR5Cm9yZG9uCuKWgXN3ZWV0ClNJWkUK4paBQ2VsCsOodHJlcwpvbW1lcwriloHRgdGWCuKWgWVmZm9ydHMKxIV6CuKWgW9obmUK4paBU291dGhlcm4K4paBYXBwcm94aW1hdGVseQrRhtC10L0KKCcjCuKWgXNhdmluZwpuYnNwCuKWgXRyYW5zbGF0ZQriloHDjm4KbWVtYmVyCuKWgWxhd3MK4paB0LbQtdC9CuKWgdGB0LjRgdGC0LUKdGMKPlwKZWx0ZQriloFlaGVtCuKWgWNvbnRyYWQK4paB0YDRg9GBCtGM0Y8K4paBTWlkZGxlCnF1aXAK4paBY2hlegpGaWVsZHMK4paBcGVybWl0CmlrZWwK4paBd2lyCuKWgXRyaWFsCuKWgXZlcnNjaGllZAriloHRhNC10LIK4paBbWFsZQriloHRj9C30YsK4paBbnllbApha3RlcgriloFkZW5vbWluCmNlcHRvcgriloFXYXQK4paBZmlubwriloFYVklJSQpyeXB0aW9uCmRlc2MKYXBhCtC70LXQvdCwCuKWgWtvbAriloHQhAriloFkZXBlbmRlbnQK4paBQ3JhCuKWgXN0b3JtCuKWgdCT0LXRgAriloFwaXBlCuKWgWF0dGVuZGVkCuKWgXZpdGEKdXppb25lCmN6YXMKb25kYQriloFib2xkCkNvbHVtbnMKaWNpw7MK4paBY3rEmQriloHQuNC30LLQtdGB0YIK4paBQ2xvdWQK4paBd2FybQriloHRgdGLCuKWgdGB0YLQtQriloFwcm9kdWNlcgriloFMdWR3aWcK4paBTm9ydGhlcm4KxYLEhQpOU1N0cmluZwriloFIYWQK4paB0JjQstCw0L0K4paBRWcK4paBSW1wCtGI0ZYK4paBQXVjaArRgtC+0LoK4paBSGl0CuKWgXF1aWVuCuKWgWRlcGFydG1lbnQK4paBZXJoaWVsdAriloF1aQriloFTcHIK0YHQtdGACm91cnQK4paBU3RlcGhlbgp0ZWFtCuKWgXppcAriloFCYW5nCuKWgWdyb3d0aAriloFqYW0K4paBS2FpcwpibWF0cml4CuKWgUFzaWEK4paBcsOpZ2lvbgo9LwriloFQYWNpZmljCuKWgWF1dGhvcml0eQriloEjWwrRgtCw0LzQuAriloFldmVyeW9uZQriloFhdHRlbmQK4paBdGltZXN0YW1wCuKWgXRyaWVzCuKWgWZmCtGI0LXQuQriloFkZXZlbG9waW5nCm9sdAp1cHMK4paBbW9tZW50bwriloFTYWluClRlcm0K4paBY2VsbGUKR1IKTW91c2UK4paB0YfQtdC70L7QstC10LoK4paBQ29sbGVjdGlvbgrDonRyZQriloFXcml0ZQriloFQb20KWy0KQ2FtCuKWgWxvY2F0aW9ucwriloFKc29uCmVsbGVkCnNlbGVjdG9yCnJlcGVhdApjdG9ycwpvdHRlCtCy0LjQt9C4CsOkbmRlCuKWgWFjaGlldmVkCuKWgW1haW5seQpfX19fX19fXwohKQriloHRj9Cy0LvRj9C10YLRgdGPCuKWgWNpdGllcwpzaW5nbGUK0LPRgNC1CuKWgVBhawriloFhbGxvd2luZwpmZXJyZWQK4paB0LDQv9GA0LUK0YXQvtC00Y8K4paBYnJvd3NlcnMK4paBZXNjcml0CuKWgW1vdW50YWluCuKWgW5ldHdvcmtzCmtpbmQKbGl2ZXIK4paBY2xvc2luZwriloFza2lwCsO6dAriloFkdXJhdGlvbgrDqXRhaXQK4paBc2NyCkJCCsOzcmlhCuKWgUt1bHR1cgriloFvdXRwdXRzCm11bHRpY29sdW1uCuKWgWJlbG9uZ3MKZmVhdHVyZQp1Y2t5CuKWgWp1bGkK4paB0YDQsNC50L7QvdCwCtC30LLQvgpmYWN0b3J5CkZ1bmMK4paBdXR0ZXIK4paBVE9ETwriloFvYnQKYXRlZ29yaWVzCuKWgWNvbWJpbmUK4paBV2FsbAriloF1bmRlcmx5aW5nCmFyb25vCuKWgVByb3RlCmPDs3cKc3RhbgriloFHZXcK4paBb3B0aW1hbAriloFBcmNoaXZsaW5rCuKWgVNjcmlwdAriloFkZXN0cm95ZWQK0YXQtQriloFGaXJlZm94CuKWgXNvbGUKTGF5ZXIK0YLQutGDCuKWgXN0b3JlcwriloFkaXNwbGF5cwppc2hpbmcK4paB0L7RgdGCCuKWgWluc3RhbnQK4paBZWzFkQriloFoYWJpdGFudGVzCuKWgUVpbndvCuKWgWFsaQriloFFUlJPUgriloFhaGVhZAriloFnb2FscwriloFtw6FyCuKWgXPEhQriloFtYXJ0CtC80LjQvdC40YHRgtGA0LAKRnIK4paBVmlsbGEK4paBTWFyYwpyb3B5CmFncmFtCmhhcGUK0LzQtdC5CuKWgUFMCuKWgWNvbm5leGVzCuKWgUVudHJlClN0ZXAK0LvRltCyCuKWgURlYXRoCuKWgXJpc2UK4paBZm9zCuKWgWxldgpnYWJlCuKWgWJyb2tlCnByb2R1Y3RzCuKWgW1lZGkK4paBZGlzcG9uClBhY2thZ2UKSW1hZ2VWaWV3CuKWgU5hZwp1asSFCldvcmQK4paBa29sZQrDn2VyCilgLgriloFyb2wK4paBw60K0YLQtdC5ClByb2dyZXNzCmJlYW4K4paBc2VtcHJlClN0YXRlbWVudApVUERBVEUK4paBbW9uZGlhbGUK4paBd3JhcHBlcgriloFDaGFydAriloFvbkNsaWNrCtGH0LXQvdC90Y8KTE9HCnNvbWV0aGluZwriloFJTlNFUlQK0YnQtdC90LjRjwp1ZXQKd2VycApyb3VuZAppY2hlbgriloFYVkkK0LfQvdC4CuKWgWF2ZXZhCuKWgVN0b3JlCuKWgXhzCnJhY2h0CnNjYXIK4paBb3BlcmEK4paBZGVncmVlcwriloFjaXRpegrDpHNpZGVudAriloFjbGFzc2ljYWwK4paBSmVyc2V5CuKWgWVyc2NoCuKWgXRyZWF0bWVudAriloHQvdCw0YHQtdGZ0LUK0L3QvdGPCuKWgWJvb3N0CmFtb3VudAriloHRgdC+0LfQtNCwCsOpcmlldXIK4paBdGVsbGluZwpIYXMK4paBaW5pdGkK4paB0J/QuApldmFsCuKWgU1hdGNoCuKWgWNvcnJlClBvaW50ZXIK4paBcGFzc2VzCmNvbXBhbnkK4paB0LDQvQphY2hlcwriloFzaWdsbwrQvdC10LwK4paBZXhjaGFuZ2UKY2l0bwriloFCYWIKRG9jCnplxZsK4paB0L3QsNGA0L7QtAriloFjb25mbGljdAriloFub3ZlbWJlcgplYXUKw7Z2CuKWgUh1YgriloFwb2NvCmVuc2EKc2NobGllw58KbGFzc2UKZGF0YXMK4paB0YHRgtC4CnVuaXZlcnMKZWtzCuKWgUNobwriloFjw7QK4paBKC4KZXduxJkK4paBQ2hpZWYK4paBY2hlZgriloHRg9C/0YDQsNCyCnVsaQriloEnJycKbmFwc2hvdAriloFyZWxhYwrDqWdlCnd0CndlbmQKb3NpbmcK4paBaGFjZXIK4paB0YTRgNCw0L0KYXV0cmVzCuKWgWZpbHMKZXJlZAriloHQn9C+0YHQuNC70LDQvdC90Y8K4paBdGhlcm0K0LXRgNC20LAKc3VjaAriloFpaHJlbgriloFlbmNvbnRyCuKWgWxvdHMKbG9nbwriloFXaQovKArRiNGa0LUKREFUQQriloFQbGF5ZXIK4paBTGVpcHppZwriloFyZWxhdGl2ZXMK0YDQtdCyCuKWgW5ld3NwCj8sCuKWgVN0dXR0CuKWgWR1YWwK4paBY29tcGFuaWVzCuKWgXphbQpwdXRhdGlvbgriloFpbmVxdWFsaXR5CuKWgXRyZW0KaGlwcwphbmNoCuKWgcW7CtCx0YPRgNCzCuKWgWNvcGllcwpkYXNoCtCy0L7RgApzcGllbGVyCuKWgVJldm9sdXRpb24KZXN0eQriloFqdW50bwriloFJbmRlZWQKb2thbApjdHJpbmUK4paBRm9yZAriloFDUkVBVEUK4paBd2FsbHMK4paBYXV0ZQpTVQp3aHkKcGxlbWVudGF0aW9uCnJvdXQKTWF0cml4CuKWgXNhZArQsNC90LAK4paBUGljCi7igJwK4paBQUMK4paBRmVzdAriloFkZXNrdG9wCuKWgVBheQpvbWV0aW1lcwriloFUYWsK0YDQsNCxCuKWgVNldmVyCuKWgW5vcnRoZXJuCmFudGVyCuKWgU1vZGVybgp3YWwKew0Kb25saW5lCsO2awriloFicml0YW5uCiRfCuKWgWphcgpUTAp4eHh4Cm1lcmdlCuKWgU5hbWVuCuKWgUtFWQriloFyZWZlcnMK4paBaGluCuKWgVZvbGtzCnN0ZWxsZXIKdmlhdGlvbgpvbmlvCmlnaHRlcgpDb21wYXQK4paBQ0UK4paBcHLDswriloFlbmN1ZW50cmEKdGhlb3JlbQriloFwdWJsaQriloFEZXZlbG9wbWVudArQvdC0CuKWgXJvcwriloFzaHIKc2VhdQriloFnZW5lcmF0aW5nCuKWgWRpZmZpY3VsdHkK4paBRXhwcmVzcwpBbGlnbm1lbnQKZGV1dHNjaAriloHQktC70LDQtNC4CuKWgXN1Z2dlc3RzCuKWgUZhbWlseQpiYmkKXSkuCnN0YXcK4paBcHJlc2lkZW50ZQriloFzdGVzc28KaW54CnNldHVwCuKWgWNvbmZvcm0K4paBZnJvCj1cIgriloFkw6UKaWNpb25lcwriloFldm9sdXRpb24KcHJvdGUK4paBcHJpbnRzCuKWgVBvbnQK4paBY29uZnVzaW9uCuKWgdCZCuKWgWRlbGxvCuKWgW1hbmlmCkRlZmluaXRpb24Kw6FyYQptYWxzCuKWgXNhbGUK4paBZHJvcGRvd24KQ2hhaW4KQW1lcmljYW4K4paBbWsK4paBQmV6CuKWgUZ1ZQriloFORQrQs9GA0LDRhNC4CmRvY2tlcgriloFeewpBc3NlcnQK4paBaG9yaXpvbnRhbAooQCIK4paB0LTQstGDCnByb3h5ClVyaQpnZW5jeQriloEiWwriloFRdAriloFOYW1lcwriloFldmFsdWF0ZQohLwriloFlaW5nZXMK4paBc3ludGgK4paBWW91VHViZQriloF0dXJuaW5nCuKWgUVyaWMK4paB0LHQu9C4CuKWgWtsdWIKcGxvcmVyCuKWgXNwb3J0cwriloFzaWEK0L7RiAriloFkYWkK4paBZXVyb3BlCmljaWFucwppbmdzb21yw6UK4paBZHJlCuKWgXdvcmthcm91bmQK4paBc3VpdAphbWJpZ3UK4paBcXVhbnRpdHkK4paBc2VndW5kbwpTeW1ib2wK4paBbW9yYWwKQ2hhcnQK4paBZGFtaXQK4paBYXR0ZW1wdHMK4paBZG9ubgpqb3MK4paBZXJlCuKWgWhvbW1lCnNpbXAKcnlwdGVkCuKWgWFjdHMKaW5uZXJIVE1MCuKWgXRvdXJuYW1lbnQK4paBc2t5ClRpbWVyCuKWgW1pbGxpb25zCl4rCmFnZW50CicpKTsK4paBb3N0CuKWgWdsYQriloHQv9C+0LzQvgriloFmw7xuCtGB0YLQstC+0LwKZXduxJl0cnoK4paBTcOpeGljbwriloFsdWIK4paBw4lkCmlmaWsK0YfQtdGB0LrQuNC5CuKWgWltbWVyCmVuc2VuCmFubnkKaW5saW5lCuKWgWdvdmVyCmF1YwriloFyZXByZQriloFoaXN0b3JpYQpBZwriloFwbHQK4paBUHJpbmNpCmltZXRlcgrFkXMKxaFlCuKWgVVFCkVxdWFscwpEaXNwYXRjaApsZWdlbgrQu9Cw0LfQuArRh9C90L7QuQriloFzdGVsbArFhHN0CuKWgWNyaQriloFJbmRlcArDqGRlCn1cKQriloF3eXN0CuKWgWZpZ3VyZWQKQVRDSArDqWJlbgpsYWNodAriloFzdWNjZWVkZWQKZ3J5CuKWgXByZXQK4paBU2FmCuKWgSIpOwplaAriloFvZmZpY2llbArQutGA0LDRl9C9CndpbmQK4paBc2NhdHRlcgriloFGb3gKaWNpb3VzCk1hbnkKdXBlcgriloFDb252ZXJ0CnN0ZXJkCuKWgVN0ZWluCuKWgdCe0YIKfV57KApiZXR3ZWVuCmhpcmUK4paBb25DcmVhdGUKOzwvCmJhYmx5ClNZCm1vdAriloFEaXJlCml0ZWN0dXJlCtGC0L7QuQriloFjb29yZGluYXRlCigiIwriloFzw7xkCk9CCuKWgW1vcnRlCuKWgXdlYXRoZXIK4paBaGVseQriloFwcml2aWxlClJFTEVBU0UKYXRlbAriloFyZWNvZ25pemVkCuKWgVRob3VnaArRgdGB0LjQuQptZW1vcnkK4paBY29tcGlsYXRpb24KYml0cwriloF3ZWQKfX1fewriloFHVUkK0L/QvdGPCuKWgXNvdXRoZXJuCuKWgWhheQpvdmnEhwpsYXVmCuKWgUVMCuKWgUZ1bGwK4paBSGFtYnVyZwriloFNaXR0ZWwKRFUKYXBwcm94CkhTCuKWgdC/0YDQvtGG0LUK4paBbWFnYXppbmUK4paBTWlnCuKWgWNsaWNraW5nCmVudHIK4paBYXV0cmUK4paBdMOpCuKWgWjDoQrRgdGC0YsK4paBTUEKYXBweQpzdHbDrQriloFzZWxvbgriloFnZWsK4paBU2wKZnJhc3RyCkxpYgriloHQlNGDCuKWgWZhY2luZwriloHRgdGC0LDRgAriloFEdXRjaAphdGFyCuKWgWtlZXBzCuKWgVBhdHJpY2sKaWxpbwriloF2aWcK0YLQstCwCuKWgUZlZGVyYWwK4paBcGFyYWdyYXBoCuKWgWludGVyYWN0aW9uCuKWgW9jY2FzCuKWgUlyYW4K4paBbWFjaGluZXMKKCgpCnVyaWVzCuKWgdGA0L7QtNC4CuKWgdCw0LzQtdGA0LjQutCw0L0KdXBwCuKWgWljZQriloFTYXkK4paBc2FpbAriloFCZWdpbgpmaWNvCm9nYQriloFkZXNhcgriloFkdgriloHRgNCw0LTQuApvaGVuCmVyZWkKw6FuYWsK4paBZGFhcgppZmllcnMK4paBdGhlZQriloFieWxhCtCy0LDQu9CwCmFuZHJvCuKWgdC80L7Qu9C+CuKWgXRvdGFsbHkKaW9tCuKWgWFlcgpuc3lsdmFuCuKWgWNvcnBzCuKWgXRyZWF0ZWQK4paBY29tdW5lCk1pY2gKdm9pY2UKcGdmCuKWgWFueAriloFQaGlsaXAK4paBZWsK4paBTWVuc2NoZW4K4paBZGVyZQriloFwZXJtZXQKTWFpbAriloFWw6kKZW50ZWQK4paBYnVuY2gK4paBUGlldAphdHRhY2gK4paBcG9ydGUK0LTQsNGCCuKWgUJyaXRhaW4KRW5jb2RpbmcK4paBYDwKU3BhY2UK4paBcmFwCuKWgXBvcHVsCmZsb29yCnNwZWNpZmljCmNsZWFuCuKWgWNvbnF1CmZiCuKWgWludHJvZHVjZQriloFFbnRpdHkK4paBZXJmb2xnCmF0b2wKaWVudG9zCtC60LjQv9C10LTQuAriloFVdAriloHQsdGA0LgKZWR1bGVyCuKWgWNvbmNlbnRyCuKWgWNoZXIK4paBdXBncmFkZQriloFwaWN0dXJlcwriloFGYW1pbGllCk11cwpMb29rCuKWgWVyYW4K4paBZ3JhbQriloFXbwpucG0K4paBU2FsdgriloFjZAriloHQktGLCndhaGwKdHJhaW4KY2hlbQriloFQaWwK4paBQ29ubmVjdArEjWUK4paBaGFzdAriloFNdWx0aQphdHRhCuKWgVNvdW5kCnNvbHV0ZQriloFxdW90ZQriloFvYnN0CmNjaW9uZXMKaWJseQriloFicmFuZAriloFjb252ZXJzYXRpb24K4paBdG91dGVzCuKWgVJ1YgppZW5pYQppcml0CuKWgdCQ0L3QtAplZHVsZWQK4paBVG90YWwKRGlnCmVyZW0K4paBc2tpCkRlc3QKWVkK0LXQtNC4CmFseQriloFiYWNrZW5kCnVsdXMK4paBZmVhdHVyZWQK4paBcGVyc29ubgriloFzY2hvbgp0cmFjZQriloFJREUKw6FqCuKWgWFuaW1hbHMK4paBc25vdwp1dmUKdWVydG8K4paBZHJldwriloFZZWFoCuKWgVN2ClwsXAriloFTZXJpZQriloFzZWNvbmRvCuKWgUxlYmVucwriloFhY2NvcmQK4paBQ2V0CmVyYWRlCuKWgWRlc3BpdGUK4paBQ2FybG8K4paBemV3bsSZdHJ6CuKWgWxpc3RhCm5pY28K4paBQ29ycG9yYXRpb24KdnNwYWNlCuKWgdCy0L7QudC90YsK4paBc3RhbmRzCuKWgXdvcnNlCuKWgXNpbXVsdAriloFwcmFjdGljYWwKQ09MCmNoYW5nZWQK4paB0JjRgdGC0L7RgNC40Y8K0LHRgNC4CmluZG8K4paBTGV3aXMK4paBcGF0dGVybnMKaWZpY2EK4paBc21hcnQK4paBY29uY2VybmVkCsibaWkK4paBSGVsbG8KcmVsbAriloFMZXgK4paB0LLRgtC+CuKWgWNvbmRpdGlvbmFsCm90dGVkCuKWgXNob290CuKWgVdlZAriloHQvNCw0YDRgtCwCmF1ZAriloFhbnRlCmllbnRyYXMK4paBcGFwZXJzCuKWgXBvcnR1ZwriloFNYW5hZ2VtZW50CuKWgWV4ZXJjaXNlCuKWgUJlZ3JpZmYKY29tbWl0CuKWgXJlbmRlcmluZwriloFjemFzCkRyb3AKZXJnCuKWgW11bAriloFUYW4KaWVybwriloFsb2NhbGUK4paBaW5hdWcKZHVtcArRhtC40LkK4paBc3ltYm9scwppbnRhCuKWgWF3YXJkZWQK4paBc3VzdAriloFTZW5kCtGX0LIKUmVzdAp6dGVuCtC70LjQvApyaXZhbApQT1JUCsO2bGtlcgppbWF0ZWx5CmlndGUK0YfQvdGL0YUK4paBdGVycmEKw7ZnbGljaAriloFIb20K4paBaGV4CmRvbmUKYW1wcwriloFjZXQKUFJFCsO2c3QK4paBZmVtbWUKU2VsZWN0aW9uCuKWgXphdwpzcHIK4paBaG9yc2VzCuKWgXNuYXAKVGV4dEJveAriloFFY2xpcHNlCnVsbGUKb3d5bQriloFjb21lcgpuZWNlc3MKY29vawplbmdlcgotLT4K4paBcMWZw60KcGFuZGFzCuKWgVBsdXMKeWxsCuKWgXRlcnJvcgriloFjcmltCuKWgXphawppc3N1ZQpwYW5lbApzdmcK4paBcmViCkN1c3RvbWVyCnN3aXRjaArQvtCx0YDQsAriloFDaGFtcGlvbnNoaXBzCmNsbwphdHRlCuKWgWFueW1vcmUK4paBZXhjZWxsZW50CuKWgW9wcG9ydHVuaXR5CuKWgUJhaG4K0YfQuNC9CmV0aW5nCuKWgWluY2lkZW50CnRvbQpQZXJzCmJiZW4K0YHRgtCy0LXQvdC90L7QuQrQuNGFCnJvdXRlcgriloFuZXdseQriloFzaWxlbmNlCuKWgUdOVQriloFSYWlscwriloFBbWIK4paBUXVhbAriloFTY2hhdXMK4paBU29obgriloFBTEwK4paBcm95YWwK4paBwqMKd2nEmQriloFlbnRmZXIK4paBUmVtb3ZlCuKWgWhhcmRseQpVc2luZwrQu9C+0LMK4paBSWNoCuKWgWRlcm5pCuKWgUNvbm5lY3Rpb24KZmlzaAriloFJbmZvcm0K4paBRW5lcgpyb2l0CkJiYgpWaWV3TW9kZWwKVmlkZW8KaWxleQriloHQvNC90L7Qs9C+CuKWgUdlbQriloFjb21wcmVoCmVudW1lcmF0ZQp1bGFzCuKWgUJhaAriloFZZXQKQlIK0YXRgNCwCuKWgWNvdW50eQriloFIaXN0CuKWgdCT0YMK4paB0IgK4paBbWFyaQriloFDbGFyCkJpdG1hcAriloFDegriloFtw6VuCuKWgW1lcmUK4paBbXVzaXF1ZQphbHNvCmRhdGVzCuKWgURWRAriloFnb2wKZm9ueQriloFDYXN0bGUK4paB0YTQsNC80LgK4paBYXJyYW5nCuKWgUJ1c2luZXNzCuKWgUthegriloFvc2MK4paBc2Vjb2xvCuKWgWFmZmVjdGVkCuKWgUhlYWx0aApyZWIKZWRpdG9yCuKWgW93bmVkCnRsCuKWgXbDrQrRh9C90LjRhQrQutCy0LgK4paBZGV2aWVudApNdXRhYmxlCuKWgXRlZ2VuClJlZ2lzdGVyCtGU0Y4K4paBY2FyYWN0ZXIK0LvQu9C4CuKWgW5vdXZlbGxlCm9rbwppY2h0ZXQK4paBZXZvbAriloFIYWIK4paBbWlsaXRhcgriloFwdXRzCmVuZGlmCuKWgURhdmlzCuKWgVNjb3RsYW5kCnJlZ3VsYXIK4paBQ29udGV4dAppc3BpZWwK4paBR2FsbGVyeQoiLA0K4paBYXJjCuKWgUlORk8K4paBY29kCtC00ZbQsgriloF2YXJjaGFyCuKWgXRvdWpvdXJzCmF0aWFsCuKWgWhhbm5vCuKWgdC/0YDQvtGE0LXRgQriloFsYXVuY2hlZAriloHQvdCw0YHQtdC70LXQvdC90Y8K4paBdG9uCmF1c2VkCuKWgdGW0LcK4paBdMO2CuKWgVB1cgriloFvbHltcApBUk4Kw7NtCuKWgWF1Z3VzdAriloFmdXJuCuKWgUNvbG9tYgriloFTdGFhdHMKaG9yYQriloHQvNC+0YAKY2FudmFzCuKWgWdyYXZlCuKWgWNvbXBvc2l0aW9uCmFjamEK4paB0LrQvtGC0L7RgNGL0LUK4paB0YfQvgpHZW5lcmFsCtCw0L3RlgriloFKb2hhbm5lcwrQutCw0YAK4paB0YfQsNGB0YIK4paB0JLQsNGB0LgKc3NoCuKWgXJlcGxhY2luZwriloE8PgrRhtGW0LIKbGF1cwplbnkKw6RobAriloFtYXJnCmNpZW5jZQriloFpbnN0cnVjdGlvbgriloHQutC+0ZjQuApFZGl0b3IK4paBZnVuZGFtZW50YWwKbXVuZAriloFleGNlcHRpb25zCuKWgXBsYXRlCuKWgUxpcwriloFkZXJlbgpwcmVwCuKWgWphbnVhcmkKU2NvcGUKeW5hc3QKcnYKb3JzegriloFUb255CuKWgdC00ZYK4paB0L7QtNC90LAK4paBc2FiCm90aQpqZWwK4paBZ2VuZXJhdG9yCuKWgScuCuKWgXNoYXJwCuKWgdGC0L7Qu9GM0LrQvgriloFhY2NvdW50cwriloHFvmUK4paBZm9yYW0K4paBZ291dmVybgpUSU1FCuKWgVNvdmlldAriloFHw6kK4paBZXhwZWQK4paBb3JkaW5hcnkK4paBQ29uc2VydgriloFjb21wbGEKdGVpCuKWgWNhcHRhaW4K4paBU2FtdWVsCuKWgURhcmsK4paB0LLRltC9CuKWgWRlbGlnaHQKcmVjaHQKZGlhCmVzc2VzCnVscArRiNC60LgKYmV6CuKWgWRldGVjdGlvbgriloFjb29raWUKYW50cnkKTXVsdGkKb2JhCuKWgWpveQriloFzYWZldHkKfF4KcG9kCmFkw6ltCuKWgUNocm9uCuKWgURqYW5nbwriloFlaGVtYWwKa2gKw6hsZQriloFwb2MKQm90dG9tCmxhdW5jaApuZW0K4paBR1JPVVAKbsOtaG8K4paBR2liCnNkawpCRQriloFHZW5lCuKWgVN0YWZmCuKWgXN1YnNlcXVlbnQKaWNpb24K4paBdmljdG9yeQriloFjYW5vbgppemFyCml6aWEK4paBbWF0ZQriloFsYXllcnMKc3VkbwpzY2h1bGUKcGVyaW1lbnQKw7xsZXQKQVJDSEFSCuKWgdGC0LXRgNGA0LjRgtC+CuKWgW1lYXN1cmVzCuKWgXpvdQpvcHNpcwrQvdCw0LzQuAp0Ym9keQriloFlc2UKc3RlcmRhbQriloFwaG90bwp5bmNocm9ub3VzCnNldG1pbnVzCuKWgWxvYWRzCuKWgXBsZWFzdXJlCuKWgW1laWxsZQp9XCwKcXVhbAriloFmYXZvdXIK4paBcm9kCkRlcgrRgNCw0LHQvgriloFwcmVzc2VkCnLEmQppZXZpbmcKbWF0ZXJpYWwKdmlydAriloFjYXBhYmxlCtGB0LvQvgp1c2hlZAriloHQv9C+0LHQtQp1c2V0dHMKdW5zaWduZWQKa8OzdwriloFvdgplZ2ViZW4K4paBYXBwbHlpbmcK4paBZ2FsYXgK4paBT3JhY2xlCuKWgVN0dXR0Z2FydApJbmZsCmFjaHVzZXR0cwriloFkZWVsCmxpcmUK4paBc3RhdHVuaXQK4paBUG9saXRpa2VyCuKWgWJlYXV0eQopPgriloFDb2x1bWJpYQriloF6ZXduxJl0cnpuZQriloHQv9GA0L7Qs9GA0LAK4paBZHgKY2tub3cK4paBZHViCnVuw6RjaHN0CmZpbmRWaWV3QnlJZAriloFNYW5kCsOhbGwKbmFpcmUK4paBZGVzdGluCmlzdGluZwphZ2dpCmNoYXJ0CuKWgWp1c3RpY2UKU2ltcGxlCuKWgXVuZm9ydHVuYXRlbHkK0ZbRgAriloFxdWVzdGEK4paBR292ZXJub3IK0Y/QsgriloFtw7pzaWNhCuKWgWVxdWlwbwriloFEZXN0CmVsZWN0ClN0YWNrVHJhY2UK0LfQvtC8CnByb2MKZW50aW4KYWRvcmEK4paB0JvRjgriloFyZWdpc3RlcmVkCkhMCmZhY2Vib29rCuKWgXN0b3JpbmcK4paBQ3VycmVudGx5CuKWgXF1YWRyClN0YW5kYXJkCnRyaW0KZWFycwpzZW5kZXIK4paBVmFzCuKWgWVkaWZpYwriloFCw7xyCuKWgUNvdW50cnkKdGhhCjsiCm5vcgriloFEb2N0b3IKcnVtZW50CkdlbgriloFCdWVuCnJhZGUK4paBa3VuCm5hdmlnYXRpb24KUGF5CuKWgWNhcHR1cmVkCuKWgXN0cnVjawp2ZW5pcgrDqW1lbnQK4paBVHJlZQriloF4eAriloFuYXJyCtC70YzQvdC+0LPQvgriloFpbnN0YWxsaW5nCuKWgWFzc29jaWF0aW9uCuKWgWluc2VydGVkCmVybmVyCnZhbGlkYXRlCuKWgWx1dAriloFnbG8K4paBdGVjaG5vbG9neQriloFQbGFjZQokPwriloF6dgrRgdC70ZYKRVAK4paBYXRtb3MKdWdvCsOpcnQK4paBV2VyawriloElfQp0ZWxlClNwYW4K4paBUmFqCuKWgVBlcnNvbmVuCuKWgUNhbnQK4paBY29tYmF0CuKWgW9ic2VydmF0aW9uCnBhcmFtZXRlcgriloFhZ3JlZWQKcHVyCuKWgXNoYWRvdwriloFnxYIKS2V5cwpDcmVkCm91cmkK4paBcGFsZQppY2vDqQriloFXZWVrCuKWgVByaW1lCj4uCkluaXRpYWwK4paB0L7QtNC40L0K4paBJycsCuKWgdGD0YfQuAriloFJbnYKY29sYQpjaWJsZQriloFUaGVhdHJlCuKWgWJlbQriloFzYXRpc2Z5CnhsCuKWgdGA0LDQt9Cy0LgK4paBcGl4ZWwKbMOhbgriloF0d2VlCsOnb24K0L3QtdC90LjRjwriloFBVArDqGdlCuKWgU1vcnQK4paBbXlzcQpmdGVuCuKWgdC/0LXRgQrDqW1hCuKWgVNlcnZpY2VzCmN1c3RvbWVyCuKWgUFXUwrRitGCCuKWgUFjaAolLgriloFjbGFyaWZ5CuKWgdGD0L3QuNCy0LXRgNGB0LjRgtC1Cnh0dXJlCnVtaQriloFzw6UK4paBUGVsCnNlcmlhbApVUkkK4paBcmcK4paB0YHQvtGB0YLQsApjaGVzdHJhCl0uWwp3ZW4K4paBTG9uZHJlcwriloFhbnlzCkRhdGFTb3VyY2UK4paB0YDQsNC50L7QvdC1CuKWgXJlaW4K4paBbWV0YWRhdGEKdW1ibGUKYXJiZWl0CmhuZXIKY2llbnQK4paBbm9ydGUK4paB0L7QvdCwCuKWgXNjb3JlZAriloFyYXkK4paB0YTQtdCy0YDQsAriloFwcm90YWdvbgriloFTYWMK4paBY29tbW9ubHkKTGluZWFyTGF5b3V0CuKWgWFwcGxpYwriloHQvNCw0Y8K0JfQsAriloFhY2Nlc3NpYmxlCmlld2VyCmZsYWcK4paBUsO8Y2sKw6R1CuKWgWVyYW5vCuKWgWF1dGhlbnRpYwriloFSeQriloHQvdC10YHQutC+CuKWgWVtYmFyZ28K4paBZHJ5CuKWgXJlYXNvbmFibGUK4paBTW9kdWxlCuKWgWFjY2VsZXIK4paBaW50ZXJ2aWV3CuKWgUNyZWVrCuKWgWFscGhhCnNlcmllClRoZXkK0Y7Rh9C4CuKWgUhvZgriloFDUgptb2RhbAriloFzZXF1ZW5jZXMKY2xvc2VkCil9JAriloHQp9C10YAK4paBT1JERVIKUmlnaHRhcnJvdwpoYXVzZW4KfX1fCuKWgXRhbWLDqQriloFtYWduZXRpYwriloFNY0MK4paBd2lubmluZwp1bmRlcmxpbmUK4paBQmlsbGJvYXJkCm5haW8K4paBbGlxdQpkaXNwbGF5c3R5bGUKdGltZW91dAriloFjb25zaWRlcmFibGUK4paBZWJlbgppZmZlcmVudAphbnUK4paB0KHQvtCyClsoCuKWgTotKQpsZWl0dW5nCmZvcm1lZAriloFNYW5hZ2VyCuKWgW9uY2xpY2sKVFkK0YLQsNGFCkNWCnJ1bnRpbWUKcG9xdWUK4paB0JvQvgpUZW1wCmxvYWRlZAriloEhPT0K4paBc2luZ2VyCmZhcgriloFDb21wbGUK4paBw5ZzdGVycmVpY2gKUG9saWN5CuKWgXdvcmtlcgpXcmFwcGVyCm9iaQriloFkaXNjdXNzZWQK4paBYnV5CuKWgdGP0L3QstCw0YDRjwriloFEaW4K4paBZ2VkCtGB0LrQvtGYCkV1cm9wZQriloF0YWxsCmhvcwrQu9Cw0LPQvgriloFCbG9jawriloFpZGVudGlmaWVkCkxpc3RWaWV3CuKWgWF0dGVtcHRpbmcK4paBdHlwaWNhbApwc3VtCm9zdGVyCuKWgdC20YPRgNC90LAKUGUKbWVyY2UK4paBdW5leHBlY3RlZApodWkKbGV0dGVyCuKWgW51ZXZvCuKWgdCw0LHQvgriloFWQUxVRVMK4paBSXoKRmxhZ3MK4paBVFJVRQppemFjacOzbgriloFncm93aW5nCmVzdHJlCuKWgXBvbHkK4paBU3RvbmUK4paBVklJSQriloFsb2NhbGhvc3QKw6RobHQK4paBZW1iZWRkZWQKamRiYwriloFjb252ZW50aW9uCuKWgXNjYWxhCtGB0L7QugriloFhbmFsb2cK4paBIisK0YbRjgpvY2MK4paBbGl0dApQTgriloHQsNC60YLQuNCyCmF0dHJpYnV0ZXMK4paBRmVyZAriloFhenVyZQrImXRpCsOxb3MKcGluZwriloF0ZWFjaGVyCn0mCmlwZQriloFOb2IK4paB0LjQvNCwCkJpbmQK4paBbWFnaWMK4paBVHJhbnNwb3J0Cml4ZWwK4paBY29tcHV0ZWQKYWduYQplcnN0CkhBCldhaXQK4paBYXV0aG9ycwriloE7KQpjbGFtCuKWgVBlbm5zeWx2YW4K4paBZHJ1ZwriloF2YWluCuKWgWVtcGxveWVkCuKWgWluZGl2aWR1YWxzCuKWgWFuZ2UKdXRhdAriloEkLQpjb3JyZWN0CuKWgWV4cGVyaW1lbnRzCkFyZ3VtZW50CuKWgUlCCuKWgXDDqHJlCuKWgUJyaWFuCmJlcmdlcgpNYWMKaWFzdApQZXJtCkNhc3QK4paBe307CuKWgVN0dWRlbnQK4paBc3RhdHQKYWxnZWJyYQriloFlcXVhbHMK4paBcHJvamV0CuKWgXByw6lzaWRlbnQKQWN0aXZpdHlUaHJlYWQK4paBZWluegplbmlhCnJlegplc3Npb25hbAriloHQsNCy0LPRg9GB0YLQsApvdmVycmlkZQpuZXdzCuKWgXBsYW5ldApubgriloFXaXMK0YLQstC10YAK4paBVmFsaWQK4paBR2VmCtCz0YDQsNC0CuKWgWVpZwphbnRvbQriloFNZWlzdGVyCmZsYWdzCmZmaWNpYWxlCtGI0LDRjwotLAphdGlvbmVuCm1vdXNlCnN0YW5kYXJkClNpbmdsZQriloFib2wKaXNpcwriloFmcnVpdApjb3Vyc2UKaXRhbnRzCuKWgcOpdGFpZW50ClRleHRGaWVsZAriloHRhNC+0L0K4paBYWlyY3JhZnQK4paBSVNTTgriloF3ZXN0ZXJuCuKWgXJlcHJlc2VudGluZwpFc3AK4paBRWxzZQriloFzaXplcwriloFzYXRpc2ZpZWQKb3RvcwpVRApGaW5hbArDs2oKw6h2ZQriloFSb3kKZmZlbgriloFzYWx0CuKWgUxhYmVsClNrCuKWgdC60YDQtQriloHQm9C40YLQtdGA0LDRgtGD0YDQsAriloHRgdC8CkF0dHJpYnV0ZXMKYXllCtGB0YzQugriloHQstGL0YHQvgotKQpvc2VzCmNhbGN1bAriloFDYW5ub3QKR2VuZXJpYwplbW8K4paBQXV0b3IK0LvRkdC9CtC70LDQs9CwCnZvdGUKbGljYXRlcwpydXMKw6lsaQpvcGYKYXRpcXVlCnNjYWxhCuKWgU9oaW8K4paBQnJpdGFubgriloFiZWYK4paB0JXQstGA0L4K4paBQ2FyZWVyCmlzw6llCsOzdApib3NlCuKWgdCR0LXRgAriloFDb250cm9sbGVyCnBvbGUK4paBYWxsZW4K4paBaGFjawriloFleHRlbnQK4paBY2FsY2kKTWVyCuKWgXN1bW1hcnkKTWFydAriloFoaXN0b3JpY2FsCmltYXQKYnVkCuKWgUZPUgpleHBvcnQKZWRpCk1hcHBpbmcK4paBQXkK4paBUnVieQriloFkZWZpbml0aW9ucwriloF7JAriloF5b3VycwpyaWFzClRvdWNoCuKWgUdhegriloFBdXRvbQriloHQuNGB0YLQvtGA0LgK4paBZGVsZW4K4paBS2luZGVyCn19JQriloFwZXJmb3JtaW5nCkZSCuKWgVNpZwriloFCcmFkCmJyYXMK4paBSmFyCnBrZwp3cgriloFQYXlzCk5DCuKWgW9wcG9zZWQKVHJ5CuKWgdCy0LXQt9C1CuKWgUJvZwriloF3cml0ZXMK4paBc3RvcmllcwriloFtYXRlcgriloFzdGFnaW9uZQriloFzdHkK4paBY29tcGF0aWJsZQpoZWFzdAriloFHdXkKZWdyw7xuZAriloFpZGVudGlmaWVyCuKWgWhlYWRzCtC/0L7Qt9C4CuKWgXN0dXAK4paBdGYK4paB0ZjQvtGICuKWgUh1Z2gK4paBY2FyZHMKb3Z5CuKWgVRvYXN0CmFsbGFzCuKWgXDDumJsaWMK4paBYXNzdW1lcwriloHRh9C10LzQv9C40L7QvdCwCnljbGVyCuKWgUp1bmlvcgriloFGaWNoCuKWgWVzdGltYXRlZAp6ZXJ3CmRpYWxvZwrRiNC40L0Kc2hlbGwK4paB0L3QuNGFCuKWgXBpdGNoCtC00L7QuwpvdXR1YmUK4paBU2FudGkKT25DbGlja0xpc3RlbmVyCuKWgU1hZ3lhcgriloF2dWUKacOjbwriloFgIwpjb2xsZWN0CuKWgVJvdQphbmFseXNpcwppc3Ryem9zdAriloFEaWdpdGFsCuKWgWNyaXN0CnJpZXJlCuKWgWNhbXBvClVzCuKWgWNpcmNhCuKWgUNvbXBvbmVudAriloFOU1N0cmluZwpwZAriloFwcmluY2UK4paBaW52b2tlCuKWgU1hcmluZQpBbGxvdwplc3RpYwrRgNC40YHRgtC4CmJvbmUK0YLRg9GA0YsK4paBcGFzc2lvbgrDoWNpw7MK4paBb3JuCtCy0LXQtAriloFpbnZhcmkK4paB0L3RlgpSZW1vdmUKZW5jaWVzCmlsaWIK4paBRGlyZWN0b3IKIiIK4paBQ29uc2UKZ29vZ2xlYXBpcwrDs2sK4paB0KPQutGA0LAK4paBSGF2aW5nCkRvbWFpbgppZXJ6CtC90L7Qu9C+0LPQuApDaG8KdW5kZWZpbmVkCmFsbG9jCuKWgXBpZWQK4paBZnJhY3Rpb24KYmlhCuKWgdC/0L7Qu9C+CnVnbm8KbWluaXN0ZXIK4paBcHJpbmNpcGFsZQriloFyZWZ1c2VkCmJyb3dzZXIKKiwK4paBSG9zcGl0YWwK4paBdW5pdmVyc2FsCuKWgUVybnN0CndobwriloFHYXJkCidfCmNvbmRlCuKWgVt7CnNvYgriloFDcml0CuKWgdC00LXQutCw0LHRgNGPCuKWgXB1bnRvCuKWgWVpbmdlc2V0enQK4paBdMO2cgriloFOaQriloF3b3JyeQriloFsZWdlbmQK4paB0LHRg9C70LgK4paBa29tbQpyaWprCmVmZmVjdApPcmkKUkVTCuKWgVBldGVycwriloFCYXJvbgriloFHb3QK4paBaG9uZXN0CsOkcmUKw6FzegriloFub2JsZQriloFjb25jbHVzaW9uCuKWgWZvcm1hdHRpbmcK4paBb3R0bwriloFkZWxlZwrQvNCxCnB0b3AK4paBc2VuZHMKdXJuYW1lCuKWgWZlc3RpdmFsCizigI4K0YDRg9GBCuKWgWRvY2gKc3ViamVjdAriloFjYXJlZnVsCnF1ZW50CuKWgUxvYWQKdGVtcGVyYXR1cmVuCuKWgXJ1ZQpNZW1vcnkKyJthCmlvbmEK4paBZGVudHJvCuKWgWJlZ2FubgriloFBcXUK4paBc2NpZW50aWZpYwprYcWECtC70L7QugplbGRlCuKWgVRob3NlCnF1aWVyCmFjdMOpcgriloFBdWZsYWdlCiknCuKWgWdyYWRpZW50CmludGVnZXIK4paBSW1wb3J0ClNLCuKWgVN0YXR1cwriloFleHBsbwpBRQpTaGVsbAriloFQYXVsbwouwrsKfTwvCmZsZXgK4paB0LrQvtC80L8Kb25kZW4KYWNjZXB0CuKWgW1pZWpzY2UKSHViCmFsbGVuZwpXTgriloFpbXBsZW1lbnRpbmcK4paB0LvRgwriloFjb25mdXNpbmcK4paBSW5zdGFsbAriloFyb3UK4paB0L/RgNC+0LXQugpBY2Nlc3NvcgrRmdCw0YjRmtC1Cm9kaW8K4paBYXBwbGllcwrRjtGJ0LjQuQriloFNdW5kaWFsCsOJdGF0CmlldG5hbQpodW0K4paB0YHQsdC+0YAKb3JkaW5hdGUKRnJhbmNlCuKWgXByZW5kCmVsdGVtcGVyYXR1cmVuCuKWgXRyYWJhagpBeGlzCuKWgdC80L3QvgpwcmltYXJ5CuKWgVNlaXRlCnBlcm1pc3Npb24K4paBb3JkZW4Kc2luY2UK4paBaWMK4paBQnJhemlsCuKWgWJhcmUK4paBTmFyCuKWgUp1cgriloFmcmVlZG9tCuKWgW1lZGljYWwKaXNjaG9mCuKWgdGB0L8KaWXFvAriloFib290c3RyYXAK4paB4oCmCuKWgWZhY2lsCmNvcmQK0LLQsNC90LUK4paBQWxsZW4KYXZpZAppbmdoYW0KemFzCuKWgWluc3BlY3QKaXR0ZW4Kb3N0aQp1aApjw6kK4paBIyMjIyMKY2l1cwpvbXkK4paBU2VpbmUKYnJlcwriloFnZW51cwpPdGhlcgriloFHb2xkZW4KbXVsCuKWgdCh0L/QvtGZ0LDRiNGa0LUK4paBZ2VubmFpbwriloFjYXJlZnVsbHkKYWFsCuKWgWFuYWx5dApuZXVyCuKWgXN0cmV0Y2gK4paBT2NjCm9sYXMK4paBZmlyZWJhc2UK4paBZXhwZWN0aW5nCmJhc2ljCmNvbmRpdGlvbgpwcm92CuKWgVdhc3NlcgriloFjb25jYXRlbgriloFldmlsCuKWgWNvZWZmaWNpZW50cwpXZXN0CmlyeQpwaGFzCuKWgUphbQpmb2lzCuKWgWNvbnNpZAriloFtYWludGVuCm5pbQplc3Nlcgplc3oKdW50YQp1ZXN0CuKWgWNyZWRlbnRpYWxzCl87CkRpbQrQv9GA0LXQtNC1CuKWgULDvApidWlsdAriloFBY2FkZW0K4paBYXVkaQriloF0dsOlCmluYW5kCuKWgVRoZWF0ZXIK4paBZ2VucmUKw6dvcwpncmVzcWwK4paBd2VhcAriloFSYWIK4paB4oCZCuKWgWFkdWx0CuKWgWTDqW0KYGAK4paBc3RhYmlsCuKWgWNvcnJlc3BvbmRzCuKWgUVhc3Rlcm4KdW5uZWwKV29ya2VyCuKWgWNvaArQu9C60LAK4paBTWFzc2FjaHVzZXR0cwpwaW8K4paBcG9ydHMKYWdnCuKWgURlYnVnCuKWgWJyZWF0aApNSU4KVmFyaWFibGUKYmF0Y2gK0YHRgdC1CuKWgXByZWcK4paBcm9sZXMKcGFzdGUK4paBcmVmZXJlbmNlZAphZHJhdArRh9GRCmJpbm9tCuKWgWRlZmluaW5nCuKWgUJ1ZGFwZXN0CuKWgdC00LLQuAriloF0YXVnaHQK4paBaG9sZQriloFxdWVsbGEKTXNnCmFza2EKc2NhbgriloFwcm9wb3NlCuKWgdCR0LjQvtCz0YDQsNGE0LjRjwp7e1wKdGV4dHQK4paBQWxiCuKWgVN5ZG5leQriloFiYWNrdXAK4paBY3JlZGl0CuKWgdGE0YDQsNC90YbRgwpzdGF0cwpcIjoK4paB0J/QtdGA0LUK4paBYWNjb3JkaW5nbHkK4paBTGVuCnpuYQriloFSZWdpb25hbAriloHQuNC30LTQsAriloFqw7oKaGlzdG9yCuKWgWVudGl0aWVzClN0YXIK0L7QvdC1CiddWycK4paBTm92YQpkaWUK4paBYCcK4paBb2J0ZW4KYW5zdAriloFSZWxpZwriloF0cmlnCuKWgdGA0LXQttC4CuKWgVBlcnNvbmFsCuKWgXRvbmUK4paBYWlkClZpc3VhbApTdWJtaXQK4paBbW92ZXMK4paBQnJpZGdlCuKWgUJveQriloFhY2N1cmF0ZQpvc3RhCmF0dG8K4paBZGVmZWF0ZWQK4paBZGF0YWIKZ2lueAriloFMaXYKbHl3b29kClRXCnJpdW0KaXBwZWQKRmFpbApSRVFVRVNUCuKWgWlnbm9yCuKWgXNpdHRpbmcK4paBbW9sdG8K4paBZW5kcG9pbnQKdWNpw7NuCuKWgWNvbGxlY3Rpb25zCuKWgdCi0YMKdGVtYnJlCuKWgW7DqWNlc3MK4paBaW50ZXJhY3QK4paBb3RyYXMK4paBY3VycgriloF0cmFja3MK4paBZmFtw61saWEK4paBbnVtZXJpY2FsCmxlZ3QKXS8K4paBTWFyaW8K4paBdG9ydApiZwpzc2wKdGV4dHR0CuKWgXNwYXJrCtC00LjQuAriloFwcm9iYWJsZQolJSUlCnBoaWEKXSxbCuKWgWJveGVzCuKWgWFjYWRlbQriloFTbG8Kw6R1ZGUK4paBd2l0bmVzcwriloFlZGl0aW5nCtC70LjQvdCwCuKWgWxvb2t1cAriloFCdWNrCtC00L3RjwriloFqb3VycworKyl7CuKWgWluZGljZXMK4paBZmxpZ2h0CuKWgWNvbXB1dGF0aW9uClBsdWdpbgriloFyZWFsaXplCmlzc2V0CuKWgWRlcml2YXRpdmUKbGluZXdpZHRoCmJ1bmQK4paBdGhvcgriloEuPQriloFzw60K4paBQ2xpY2sK4paBU2ViYXN0Cj4nCmhhdmlvcgpsZWkKdWxmCuKWgWdlb21ldHJ5CnByZXYKZW1wbAriloFMw6kKYW5zb24K4paBQWxpY2UKcHJvdG90eXBlClJFQUQKaWN1bGFyCuKWgdCx0ZYK4paBZGV1dHNjaGUK4paBUmVwcmVzZW50CnNpdGVzCuKWgU1lYW4K4paBZGlzcwriloFadXIK4paB0L/RgNC10LcKUEFSCuKWgScjCuKWgURyYQrRgdC+0L0K4paBc3RlaHQKbWFya3QK4paBZWFzZQpEcmF3aW5nCj0lClN0b3AK4paBc2VydmluZwriloF0YWvFvGUK4paBRE5TCuKWgWxpdGVyYWwKRGllCuKWgdCy0L7RgQriloFzZW5pb3IKYWNpb24K4paBdWJ1bnR1CuKWgUZyYW5rZnVydAriloFTdW5kYXkKw6FiCuKWgWpvdXJuZXkKaXNzYQpiZXJyeQriloFzZXAK4paBaW9uCndlcnQKb3JzesOhZwpzZXJ2ZQriloFNaWxhbm8K4paB0LLQtdC60LAK0YDQsNGFCuKWgdC40Y7Qu9GPCuKWgW1hbmVyYQriloFzdGF0aW9ucwriloFhZG9wdGVkCuKWgWFueWJvZHkKVkVSU0lPTgpGRQpkb3JmCi4uLiwK4paB0L7QsdGA0LDQt9C+0LLQsApMb2dnZXIK0YTQuNGG0LjQsNC70YwKV1JJVEUK4paBaGFtCuKWgUZ1dHVyZQpvdGVuCuKWgUFHCuKWgXRyYWluZWQK4paBTmljaAriloF1bml2ZXJzaXR5CuKWgU9seW1waWNzCuKWgWRvaXQK4paBY3VsdHVyYWwKQ29uZgriloFDb25mZXJlbmNlCm9ybm8K4paBTVAK4paBYm91CmNpbgpIaWdoCmFubnRlCuKWgWRpc3BsYXlpbmcK4paBY2hhcHRlcgriloFGcmF1ZW4K4paBcmVhbGl6ZWQK4paBYXR0ZW1wdGVkCuKWgXByZWZlcnJlZApEYXQK4paBdHJvdXZlCuKWgWludGVudGlvbgriloFOb3RpY2UKdGltZXN0YW1wCiooCuKWgdCo0LAKYW5hcwpjbGEKaXN6CnRibApBcnIK4paBaW52ZXJzZQriloF0ZXJyaWJsZQriloFvY2N1cGllZApKQVgKPC0K4paBUGhpbG9zb3BoCuKWgUNvcnBzCmJ1aWxkZXIK4paBYmVnaW5zCuKWgWNlbnN1cwou4oCZCuKWgXByb3ZlbgptZXRyaWMK4paBaW5jcmVhc2VzCndpY2gK4paBQUJDCnByb2plY3RzCuKWgVRob3IK4paBY29uZmlkZW5jZQriloF1ZmZpY2lhbGUKZWxtCuKWgWdhcmRlbgriloFyb2J1c3QK4paBY29zw6wKaWVkegriloFJc2xhbQriloFBZGRyZXNzCuKWgWRpdmlkZQriloFFdQpjYXRhbApkZXRhaWwKZXBlbmRhbnQKZmcK4paBYmV3CuKWgWZpcwriloFCTwriloF3c3AK4paBcGlwZWxpbmUKaGQK4paBU2Vzc2lvbgpsw6RuZAppdmVhdQplc3RyCuKWgXBhcnRpY2xlCuKWgWxhcmF2ZWwKcGljCuKWgW5hdQriloFmaW5zCuKWgVZpbAriloFmdXMK4paBcXVhc2kKb3BlcmF0aW9uCuKWgWFsbGVyCuKWgWFuYWx5CuKWgdCe0L0K4paBTWVzCuKWgdC+0L/QtdGA0LAK4paBaGFuZGxlZAriloFkZXByZWMKdHRvCuKWgUVrCuKWgXN0cmFuCuKWgWFuZ2xhaXMKanVyZQriloFTaWx2ZXIK4paBY2xvc2VseQplbmtpbnMKYW5vcwpzdGVkCuKWgdGB0LXQvdGC0Y/QsdGA0Y8KYnJhbmQK0L3RjNC+CuKWgXByw6lzZW50CnJvawptb3VudAriloFBbnRob255CuKWgUZ1cnRoZXJtb3JlCmluaGEK4paB0LDRgNGF0LgK4paB0YDQsNC30LvQuAriloHQvtC60YLRj9Cx0YDRjwriloFwaW50Cm7DvQpwdHMK4paBaXRhbGllbgriloHRgNC10LPQuArQu9C10LcK0LTQuNC90LAKYXRoZXJpbmUKSW50ZXJuYWwKUXVlc3Rpb24K4paBc2V0dGxlbWVudAriloHQktGB0LUK4paBZm9sZGVycwrQtNGA0LgK4paBdmFsb3IK4paBTWlsbGVyCuKWgUFzc2VydAriloFwYXRpZW50CuKWgU5pZWRlcgriloFFUAriloFBZ3IK4paBb25kZQriloFzY29wCnNlcXVlbmNlCuKWgVBMCuKWgXNlZWsKamF2YXNlCuKWgVZlY3RvcgriloFuw6EK4paBY2F0ZWdvcsOtYQpjbG9uZQpOUgphdmFpbGFibGUK4paBQmVzY2gK4paBZWNsaXBzZQp3aWNrbHVuZwpkZXBsb3kKZW5pZQriloEiKQrDpHN0CuKWgXN5bmMKQ09ERQriloHQp9C1CuKWgWZsb2F0aW5nCi9gCuKWgXJldGlyZWQKZGViCuKWgXBhcnRpY3VsCuKWgWNvbGxlY3RlZAriloFkb3dubG9hZGVkCm5pY2UK4paBQnVmZmVyCuKWgUFjY291bnQK4paBbWFnZ2lvCuKWgdGA0LXQtNCwCuKWgXNhbGVzCuKWgXN0YXR1bml0ZW5zZQriloFLaQriloFGZXJyCkxvY2sK4paBSXNhYmVsCmNsYXIK4paBcG92CmF0cmEK4paBRnJhdQriloFzb3J0aW5nCuKWgXBocmFzZQriloHQsNC/0YDQtdC70Y8K4paB0LTQtdGP0YLQtdC70YwK4paBQW5kcsOpCmRlZmluaXRpb24Kd3JpdGluZwrDqXLDqQrRidGDCuKWgU9yZAriloFydW0K4paBVHVyawriloFJdmFuCnRoZWxlc3MK4paB0LPQuAriloFzYWtlCuKWgUJhc2VkCmRlY2sKb3J1cwriloF0dXR0aQriloFibGFuCuKWgdCf0YMKRGV0YWlsCuKWgdCd0L4K4paBU2t5CuKWgXByw6hzCtC80L7QuQpjb2xuCtGH0LXRgdC60L7QuQpldGkK4paBYXJyb3cK4paBQ2hhCmNobWFyawrFk3VyCmZhYgrQutGD0LvRjApHcmlkVmlldwriloFCYWNrZ3JvdW5kCnNuCuKWgXNlZ3VpdG8K4paBbmljCmNvdQrRgtGW0LIK4paBYnp3CmFkZEV2ZW50TGlzdGVuZXIKc3luYwphenpvCmFic3RyYWN0CmFzc2V0cwriloFEcnUK0LfQtApvcmRuZXQK4paBYmlnZ2VyCuKWgWluaXRpYWxpemVkCtC60LDQtwpvZ2VuZQp2aW91c2x5CuKWgWd1aWQKc2NoZWlkdW5nCuKWgVplbnQK4paBZnJhbWVzCnJpZWJlbgriloFpc3N1ZWQK4paBZG93CuKWgWRlc2NyaWJlcwppbHN0CuKWgWNyaXRlcmlhCuKWgWdlbnRsZW1hbgpCYXNpYwpuZXoKRGV2Ck1vdmUK4paBZXN0YWJhCuKWgXNldHRlbWJyZQpjaXJjbGUK4paBZmFpcwriloFteXN0CuKWgWFyY2hpdgpkeW5hbWljCmrDoAppdGFzCuKWgdGP0LrQuNC5CuKWgWRvcgriloFBbWF6b24K4paBbmVjZXMK4paBTWFyY2VsCuKWgWVsbGEK0YDQvtC6CuKWgVBlbm5zeWx2YW5pYQpjdWxhcgpQYWNrCml0YWdlCuKWgUJ1cm4K4paBUk8K4paB0L7QvdC4Cn4kClRlWAphc3NpZ24K4paBYmVhdAppZGVuc2UKYWNlbnQKQWxlcnQK4paBc3RyYXRlZwriloFtw6VuYWRlbgpMT0MK4paBY2F0YWxvZwpwcmludFN0YWNrVHJhY2UKKCkpLgp1c3RlZAriloFGcmFtZXdvcmsKRUNLCuKWgWF0w6kKRnJhbWV3b3JrCuKWgWF0dGFja3MK4paBQmVydAriloHRgtGA0LDQvQo6JQphcnNpCm5vdGF0aW9uCuKWgWxvZ2ljYWwKd2VldAriloF2aXNpdGVkCmJydQriloFzdXJwcmlzZQpeXgppbmFsZQpyZW1vdGUKJ30sClN5bnRheAppYW5lCm9ubmVuCuKWgWJyZWFraW5nCnBhcnNlcgphcGsK4paBTWlndWVsCuKWgcKnCuKWgWFjdGluZwriloFnZWJydQpBdEluZGV4CtGO0YLRjNGB0Y8K4paBb2ZmZXJzCuKWgXByYWMK4paBZ3JhbnQKdGVybm9vbgriloFhY3F1aXJlZAriloFOeQriloFjb21tYQpuw61rCuKWgVN0ZXAKaW5uZXJzCuKWgVNBCuKWgXdhdApkYXlzCuKWgXJlY3RhbmdsZQpkYXIK4paBdHJhYwriloFJbmRvbmVzCuKWgWZlZWRiYWNrCuKWgWJyZWFrcwpwYXJ0aXRpb24KaWNhbnMK4paBTm90aWNlcwriloFpbXByb3ZlZApwaGFuCuKWgWRpZmZlcmVudGlhbApzY3JpcHRzCuKWgVhJSUkK4paBTGFib3IK4paBcHJlY2lzaW9uCuKWgXNlZWQKYnVuZGxlCmlkZW50cwpocmUK4paBRG91Z2xhcwp1bGQK4paBc2Vjb25kYXJ5CuKWgWJyaWcK4paBY29uZmlybWVkCuKWgWNsYWltcwpSb2xlCuKWgUpld2lzaAriloFwxZllZAriloFob3RlbAriloFjb21wdGUK4paBcmVjdXJzaXZlCl0oIykK4paBcm90YXRlCuKWgWNocm9tZQppbmVhCiU7DQriloFFbnZpcm9ubWVudApwbGF0egriloFTaW5nbGUK4paBc2V2ZW50CuKWgXBvc3RpbmcK4paBZGVhbGluZwpwYXJhbWV0ZXJzCtCz0YDQsNGECkF1dGhlbnRpY2F0aW9uCnRvdWNoCkF6CuKWgWdyYXkKZW5jaW5nCmJvbGRtYXRoCuKWgdGB0LDQudGC0LUK4paBWmEKYW5qZQriloFwb2xhcgriloHRg9C70LgKa2lsCuKWgWhvdmVyCuKWgVJFU1QK4paBQ29tZQpqYgriloFHZW9yZ2lhCuKWgUVzdGFkbwpPdXRwdXRTdHJlYW0K0ZvQuAriloFkdW1wCuKWgUFnZQriloFzd28KbW9iaWxlCm9jY3VwCtGI0LXQs9C+CuKWgWNvbnN0aXR1dGlvbgpnb29kCmFrdQriloHQsNC90LMKaWVjawriloFQc3ljaAriloFyb290cwriloF2ZXN0CuKWgdCz0L7QtNCw0YUK4paBUmVww7pibGljYQriloFwaWFuCmlncmF0aW9uCuKWgXByw6ljCuKWgWdlbmVyYXRlcwpMWQooYAriloE9fgrRiNC10L3QuNGPCuKWgVJhaAriloFjb25uZWN0aW5nCsW+w60K4paBZsWRCuKWgWFwcGVsCuKWgVJhaWx3YXkK0LPQu9C4CuKWgWTDqXZlbG9wcAriloFhcG8KZnJhbgriloFpbW1lZGlhdGUK0LLQvtCz0L4KUnVubmVyCsOkZwpTb21ldGhpbmcK4paBZ8OpbsOpcmEKRXZlbnRBcmdzCmluY3Rpb24KZ2x5CuKWgUR1ZQriloFwcm9zdAriloFyZWZlcnJpbmcK4paBam9nCuKWgWV4ZWN1dGFibGUK4paBRHJlYW0KYWNzCuKWgUNvbGUKYW1wZgriloFCaXMK4paB0LjRjtC90Y8KbGllZGVyCtGC0LXQugriloF2YgriloFtb20K4paBOigK4paBZGVybmllcgonPT4K4paB0Y3RgtC+0LPQvgriloFuZXVlCuKWgdCn0LAK4paBd2VpdGVyZQriloFhbGxlZwriloFyZWFsaXR5CuKWgWp1ZGdlCuKWgUJhbHQK4paBdGhpbgriloFHZWQKaWV2YWwKbXgK0YbRltC+0L3QsNC70YwK4paB0LLRi9C/0YMK4paBSVgK4paBYmxpbmQK4paBTW90b3IK4paB0YjQsAriloFhcHByb3hpbWF0aW9uCmRhbQriloFmb2cK0LrQvtGACuKWgVdyaXQK4paBbGluZwriloHQv9C40YHQsAriloFNYXJzCm90dGkKRW51bQriloFUcmliCuKWgW1lcmMKenVuZwp2YW5jZWQKY2ZnCtC90LDRhQpzY2hlbgoiXS4KYmVrCuKWgXN0ZXIKanAK4paBUmFwCuKWgXJlY29yZGluZwriloFwZWludAriloFsZXRzCsOkbmdlCj4iOwriloHQvNGW0YHRhtC1CuKWgWNhdmFsCuKWgUNTVgriloFlbnRzdGFuZAriloFoZWxwZXIKZW5kZXQK4paBR3JhbQriloFEaWVnbwriloFCaXNob3AKVEFHCuKWgWVjYwriloFFZW4K4paBQVYKQ2l0eQriloFHdWlkZQpoaW5kCnJpY2FsCuKWgdCe0YHQvdC+0LIKQnVzCuKWgXp1bsOkY2hzdAriloF0aWNrCuKWgUNvbG9uZWwKVGhhbmtzCuKWgWZlcm0K4paBZ3JhbnRlZAriloF0aHJlc2hvbGQKb21vcnBoaWMK4paBSHVuCmVuaXMK4paB0L/RgNCw0LIK4paB0Y/QutGWClBHCuKWgXdzCuKWgXRlY2huaWNhbAplc3RybwprbMOkcgp2YXJzCm9jcmF0CuKWgdC+0L/RiNGC0LgKb25zbwppYmEK4paBU2F2ZQriloFwcm9ncmFtYQriloHQstGKCuKWgWludsOlbgo+KCkK4paBbWVqb3IK4paB0YHQu9C+0LLQsAriloFyZXBsYWNlbWVudAriloFpbXByCuKWgUZyYW5jZXNjbwriloFIb3RlbAriloFVUERBVEUK4paB0LzRg9C30YsKdWdzCnZhcmQK4paBZmF6CmludG9uCuKWgWFydHMK4paBS3kK4paBSWxzCuKWgXNlcmEK4paBVm9sdW1lCuKWgWdpdWdubwriloFhc3ltCuKWgVBpcgriloFOQVMK4paBVGFtCsSbbApTZXF1CmttYWwK4paBRWlucwriloHQutC+0LzQv9CwCm9iZQpvb3IK4paBaGVhcApjdGwK4paBc2VwYXJhdGVseQpyZWFkZXIK4paBc2lnbmlmaWNhbnRseQriloFMYWcKbm90ZXMK4paBc2VsZQriloFkZWRpY2F0ZWQK4paBSG9zdApjaG9pY2UKd2luZwriloFUaXRlbAriloFiZWZpbmRldApsYXJnZQriloFjb250ZW4KSmF2YVNjcmlwdAriloFkZXNlcgriloFHb3Jkb24K0YHQv9C1CuKWgXBhdHJpCuKWgVJhbmRvbQriloFSZXR1cm5zCtGL0LwK0YDQvtC80LAK4paBU3R1ZGllcwpTbAriloFmcsO8ClRFWFQKaW5hdGUK4paBVG9sCuKWgWV2ZXJ5d2hlcmUKYXJ0YQriloFvcmJpdAriloFBaXJlcwriloFJc3MK4paBdGXFvAriloFkaXZlcnNlCuKWgW51bWVyaWMKbWF6CuKWgW1pc2UK4paBYmF0dGVyeQriloFBa2FkZW0K0L3QtdC90LjQtQriloFzaW11bHRhbmUK4paBRGVhZAriloFjbHVzdAriloFvdHJvCuKWgWNlcmNhCigpYCwKcm96CsSDdAriloFNTwpyaWZ0ZW4KaW1wb3J0YW50CuKWgWplaG8K4paBZmluZFZpZXdCeUlkCuKWgWNvbnNlcXVlbmNlCuKWgW1lYXN1cmVkCmlzaGVzCuKWgXN6ZQppZW5kbwriloFXYWhsCnN0cmlwCkFSRAriloFvcGFjaXR5CldPUkQK4paB0JLRlgriloFMb2NhdGlvbgpyYWkK0L/QtdC9CuKWgXJpZgphdXNzaWFuCkZpbGVOYW1lCuKWgWRpc2NvCmlsZW4K4paBdmFneQpsaWNpdHkKQm9yZGVyCuKWgVRyYWNrCtCx0L7QvApmYWN0Cm9rYQriloFnaW9yCuKWgVhWSUkK4paBZMOkcgpTaXRlCmHFgm8Kc2vDoQriloFwaXhlbHMKdml0eQpqUXVlcnkK4paBc2N1bHB0CuKWgWNhcmdvCuKWgWRpcmVjdGl2ZQriloF3YWwK4paBY29ubmEK4paBVGhyb3VnaAriloHRjdGC0L7QvApTdGF0aWMKb21zbml0dAriloFydW5kCuKWgWNsYWltZWQK0LfQvdGPCnNoYQriloFyYWcKY3JlbWVudAriloFmw7xuZgriloFyaXZhbApyaW4Kc2xhc2gK4paBdGhpcnR5CnNsZWVwCtC+0LvQvtCz0LgKU00KZ2F0ZQppemF0aW9ucwp2aWsK4paBYmxlc3MK4paBSWxsaW5vaXMK4paBVEUKdXRpbmcK4paBc29sdmluZwpHRVIK4paBWElWCuKWgUluZGlhbnMKZXhwcmVzcwriloFIZWlsCuKWgW11amVyCuKWgWludsOlbmFyZQonXSk7CuKWgWF1cgpib29zdApHTwriloFuaW4KdG9rCmdvZApvdGVyCikkJAriloFkZXNjZW5kCtGA0Y4K4paBTGFuZ3VhZ2UK4paBZGl2ZXIK4paBQXNzdW1pbmcK4paBZnJlcXVlbnQK0YfQvdGWCuKWgUJpb2dyYXBoeQosWwp1cm0K4paBd2Fsa2VkCuKWgWZlZGVyYWwK4paBTWljaGlnYW4K4paBZmFjdHMK4paBSW50ZWdyCkxFUwriloFBbGFuCuKWgWNvdXAKQmVyCuKWgXBhcnRpY2xlcwrRm9C1CkluZmxhdGVyCisoCkJvdW5kCuKWgVPDvApBdWRpbwpjaXRldAp5ZWN0CuKWgW5yCnhlCuKWgUJydW4K4paBXywKYXZvcgriloFkaXNjaXBsCmFsbQriloHQvdC+0Y/QsdGA0Y8K4paBU1NMCuKWgUthaXNlcgriloFyZWNoZXIKeWdvbgriloFyZWdhcmRsZXNzCuKWgWNvbmZpZ3VyCuKWgXVubmVjZXNzCuKWgUNsYXJrClBIUAriloFGQUxTRQriloFwYWQKJH0K4paBdmFsdQriloFkaXNlYXNlCuKWgW1haW9yCuKWgWhvbW1lcwriloFFZGl0aW9uCnNsYW50CuKWgWVuZGluZwriloFzZXR0bGVkCnVydXMKaGVkClBhdHRlcm4K4paB0LPQvtC00LjQvdCwCuKWgVBoaWxhZGVsCnRpa3pwaWN0dXJlCuKWgWNvYWwK4paBc2VkZQriloFzYXRpc2ZpZXMK4paBdHJpbQriloFiYXQK4paBYW3DqXJpY2FpbgriloFsdWdsaW8K4paB0L/QvtGH0LAKZmZmZgriloFUYXJnZXQKZ2VuZXJhdGUK4paBWmllCsibaWEK4paBZ2FyZAriloF3b3JrZXJzCuKWgUpvYgriloF1cmJhbgphaGxlbgriloFCdWlsZGluZwriloFuZXUK4paBY2hyb24K4paBRWFybApncm8KVVNFCuKWgVhJSQriloF3ZWFsdGgKaW5hZQriloHQkdGA0LAK4paBbGliZXJ0Cmlyb3MKOiQKbGVlCmlldmVzCuKWgUp1c3RpY2UK4paBb2lsCuKWgUF0aGxldAriloFjbG8KU2NhbGUK4paBbGlwcwriloFhcHJpbAriloFpbXByZXNzaW9uCuKWgXBlcmNlCuKWgdGD0YfQsNGB0YLQuAp2aWwKw6ljaAriloFlcXVhbGl0eQriloHQvNC10YIK4paBYW5ub3RhdGlvbgplcm5hbAriloFNYWNoCuKWgWludGl0dWwKcHJvYmxlbQrRjtGJ0LjRhQpvcGx1cwriloF0aG91c2FuZHMK4paBY2FsY3VsYXRpb25zCnVtcHMK4paBdHJpYW5nbGUKcGhhbAriloFEb3JmCuKWgWRvbGxhcnMK4paBZGVuZW4KbMOocwpvbGlkCuKWgVJlc3VsdHMK4paBU3RhZGl1bQriloFEZXNwCuKWgUVpc2VuCmltaXIK4paBc290dG8K4paBxI1pCmF0YWJsZQpvcnVtCuKWgWNvbnZlcmdlbmNlCuKWgWpldW5lCm9raW5nCuKWgdC20LjQstC+CmFpbmluZwpwb2ludGVyCmN1bG8K4paBanNvdQriloFncmFiCmFrdGUK4paBaG9waW5nCuKWgU1hawriloFzYWcKb3JpZ2luZQriloHQv9C+0YHQu9C10LQK4paBVmVnCuKWgXRoZW9yZXQK4paBVHJ1Cm5lbWVudAriloFmYWNlcwpIb3IKSm9pbgphcmVsCuKWgdC+0LrQvtC70L4KSG93ZXZlcgriloFjYXRhbApib3VyZwriloFteXNxbGkKYWNpb25zCuKWgUluaXRpYWwK4paBcmFpbgppdHVyZQriloFTY2llbmNlcwriloFLcmVpcwouX18K4paBY2lucQriloFBdcOfCml0aG1ldAppdG9ycwphbWF6b24K4paBZ2FwCuKWgWlnbm9yZWQKYWR2CtC60L7RlwriloHRh9Cw0YHRgtGMCuKWgWNvcnBvcgrRhtC10YAK4paBY3JpbWUKdW91cwriloHQvdCw0LvQsNC30LgKRGF0YUZyYW1lCtCy0L7QtNC4CklnbgriloFMaW5jb2xuCuKWgW1lbm9zCuKWgUx1ZnQK4paBTGluZAriloFDb29rCuKWgW1hdGVyaWFscwphcHBlZAppZ25vcmUK4paB0L7RgtC60YDRiwpmcmllZAriloFnb3V2ZXJuZW1lbnQK4paBZmlyZWQK4paBc2NyZWVuc2hvdArRgdC10L0K4paBWygK4paB0L7RgNCz0LDQvdC40LfQsApHcmFwaGljcwriloHQv9GA0L7RgtC4CuKWgXBoZW4KY3JhZnQK4paBYnJhaW4K4paBQ29tbwriloFFdmVyeXRoaW5nCmFuZXMKSUdOCuKWgW5lZGVyYsO2cmQK4paBRm9yZXN0CnphaGwK4paBQW1vbmcKUXQK4paBdG9nZwriloF2YXJpYW50CuKWgWhpbGwK0L/QuNGB0LgKY29sb24K4paBZGljZW1icmUK0LPQvtGACuKWgVdpbmQKw7xuc3RsZXIK4paBPVwKc2F2ZWQK4paBbmVqCnVudGUKdXR0bwriloFyZWNlbnMK4paBc2ljawriloFkZXNlbgpVU1QK4paBd29yc3QK4paBQW5nZWwKb2RveAriloFQcm92aW5jZQriloFNYXoK4paBYWdyZWVtZW50CuKWgUJhc3MK4paBc2VndW5kYQpvbmNlcwriloFMaW5raQriloFDTAriloFqw6EKaXRlbWVudAriloHDoXJlYQriloFzY2FsYXIK4paB0KDQtdGBCmF3dApzaWVtZQriloFqdW5pCuKWgdGF0YPQtNC+0LYKaWt1cwriloFsaWQKcHBlbAphdmkK4paBYmFsYW5jZQppcHBpbmcKY3Vzc2lvbgrRh9C10YHQutC40YUKKCIuCkFsc28K4paBd2hpcwpIT01FCuKWgWJyb3duCuKWgWTDrWEK4paBcHXDsgpwbG90bGliCuKWgUphaHJodW5kZXJ0cwpESwriloFhbmNob3IKLi4uXQriloFBdXN0cmlhCuKWgW1hcmNhCuKWgWdlegppb3VzbHkK4paBbGF6eQp4YQriloFDaGFubmVsCuKWgW5ldWVuCmRhcwriloFzZWFyY2hlZAriloFzdGFhdAriloHQotCw0LoK4paBSm9zZWYK4paBU2hlcgpwb2lzCuKWgWVuZW0K4paBYWNjZXNzaW5nCuKWgdC90LXQutC+CuKWgWZ1cm9ubwriloFwc2V1ZG8KPz4K4paBZXN0YWRvdW4K4paB0JLQuNC00LgK4paBbW90aXYK4paBcmVjYWxsCmlzc29uCsOzYgopLS0K4paBRXJ6CuKWgdGB0LDQstC10LcKRGlyZWN0CtGB0L7QsQriloFzaG8KdsO2bGtlcgpBcApnZW5zCtC90LjRiNGC0LLQvgriloFBbXN0ZXJkYW0KdXNrCtC/0LvQvgriloFzaW11bGF0aW9uCuKWgUJDCuKWgVdvagphdXRvbQpBbGV4CuKWgWVjb25vbWljCtCz0L7QvAppa2FpCuKWgWFsdHJlCuKWgSctCuKWgVdlZwpOb3RGb3VuZArQudGB0LrQvtC5CuKWgWNvbnZlcnRpbmcKcGhhYmV0CmF0cmljZQpib3VybmUKYWxvbQriloFjb21wYXJpbmcK4paBWm8K4paBZmxhCtCy0LDRjwriloFlbnRyYQriloFjaGFyc2V0CmRldmVsb3BlcnMKw61zdGljYQp9PgriloFKYXp6CuKWgUhvd2FyZArRiNGC0LAK4paBY2xvbmUKZG9vcgriloFQaW4KKioqCuKWgXNpbGVudAplY3ljbGUKaXNjZQriloFtdWQK4paBRGlzcGxheQriloFsaXAK4paB0LjRgdC/0L7Qu9GM0LfQvtCy0LAK4paBY2hhcmFjdGVyaXN0aWMK4paBc2IKZmlyZWJhc2UK4paBQmV3CkNhbGVuZGFyCuKWgXVzbwrDqHNlCuKWgVJhdAriloFlc3BlcgriloF0aHJvd2luZwriloFyb2R6CuKWgXlhcmRzCuKWgWdyYXNzCuKWgW1hcmtlcgriloFLb3MKVGhldGEK4paBb3JnYW5pcwprZXJuZWwK4paBcGVyc29uYXMKa2VlcAriloFleGNsYWltZWQKb3NsYXYK4paBRW50ZXJ0YWluCtC90LXRgAriloFpbndvbgriloFSYW5kCnJlZHVjZQpmYWMKZXhwcmVzc2lvbgp5agriloFkaWZmZXJlbnRpCmFnbGlhCuKWgXRlbXBsYXRlcwriloFtxbEK4paBcHJ2CuKWgW1vaXMK4paBZ2V3YW5uCuKWgdCx0YPQu9CwCmJpYmxpCmRlbW8K4paBQW5kZXJzb24K4paB0YDQtdC0CuKWgXBvcnF1ZQriloFQb2xvZ25lCuKWgXRyaXAK4paBZXhlbXBsZQriloFJbnRlcm5hY2lvbmFsCuKWgdC60LDQvgpJbnNlcnQKZ2VuZXJhbApTRVNTSU9OCmJlcmdhCmjDpGx0CnVuYXMK0LzQuNGA0LAK4paBeWllbGRzCm1hcHN0bwpzcG90CuKWgStcCtC70LvQsAriloFwcmVjaXNlbHkK4paB0YfQu9C10L0Kc2hhZG93CkFyZQp1bmFsCuKWgWRpc3BhcgriloF0w610dWxvCm5lc3QK4paBTG93CuKWgXByb3QK4paBQ29zdGEKbmFtZWQK4paBZ2FpbmVkCmxlc2lhCuKWgWFkbWluaXN0cmF0aW9uCkltcG9ydApicmFuY2gK4paBc3ltcGF0aAp2b2oK4paBRUMK4paBbXVuaWNpcGlvCuKWgWFuaW1hdGVkCuKWgWRpcmVjdG9yaWVzCuKWgXJvb2YKesSFZAppbWV0CnByb3RvCmJsYQo6XQpoYXZlCmF0ZW0K4paBbnMK4paBc2VjdG9yCnRocmVlCm93YW5lCndlcnMK0L7QstC40YUKcmVuY2UK4paBZXh0cgppZ3RlbgriloFvY2NpZGVudArIm8SDCuKWgWVhdAriloFoeWRybwp1YmVybmV0ZXMKW0AK4paBTW9vbgriloFTaG8K4paBZWxzZXdoZXJlCsO8bGxlcgpVcGxvYWQK0LvQsNC90LQK4paBRsO2cgp3aXNzZW5zY2hhZnQKS1MK4paBcGh5c2ljcwp0egriloHRgdC10YDQtdC0CuKWgUFyYmVpdAriloHQvNC10YHRggriloFHZWJpZXQK4paBaW5zZWN0CkFoCml6YWRvCuKWgXRlbXBsZQriloFhbm51YWwKc3RhZAriloFoYWJpdGF0CuKWgUFCCndvcnQK4paBcmVwb3MK4paBTmV1CuKWgSQoIi4KVm9ybGFnZQriloFyZXByZXplbnQKZXN0YW5kZW4KSW50ZXJuCi5gCuKWgWZhaWxpbmcK4paBTWF0ZXJpYWwK4paBZWZmZWN0aXZlbHkK0YLQtdC70LXQvAriloHQs9C70LAK4paBbmFobQriloFkaWZmZXJlbnRseQpleHRlbnNpb24K4paBVmVybQplbmFibGVkCmNvbmZpZ3VyZQpuaW8KY2lvbmVzCuKWgUJlYWNoCtGB0L7QvdCwCuKWgWNvcHlpbmcK4paB0YPQutGA0LDRl9C9CuKWgdC/0YDQuNC30L3QsAp6aApEZXNrdG9wCuKWgXNvc3QK4paBc3Vic2VxdWVudGx5CuKWgUxlaHIK4paBw7MKbMOkcgpvZG9yCnBob24KbmMKaXRlcmF0b3IK4paB0Y3RgtC4CuKWgWV1cm9ww6kK4paBVG9yb250bwrDs2RpZ28K4paBcG9zdG8KZmZlCuKWgWNyZXcK4paBU2Nod2FyClNhCnNxdWFyZQriloFiZXNpZGUK4paB0JzRlgriloFhdGgK4paBYWR2ZW50CmNqaQp3cml0dGVuCuKWgXJ1c3MKcm9zdApISQriloFkaWNlCmNjYQriloFkw6lwCnBseQpiaWdnCnppYcWCCsO8dHQK4paB0L7QtNC90L4KSkVDVArRgdGM0LrQvtC80YMKbm9zCm1vY2sKTGF1bmNoCnNhbWUK4paBam9icwriloF3aWRlbHkK4paBZGVmaW5lcwriloFQc2UK4paBbmVpZ2hib3VyCtGO0YnQuNC1CuKWgWNsb3NlcgriloHRgNCw0YHQv9C+0LvQvgriloFjbHVicwpmbHkK0YjQuNC8CuKWgXN1ZmZlcmVkCuKWgW5hcgriloFsYXZvcgpFeHRlbnNpb24KaXRpb25hbGx5CuKWgWdyYWNlCuKWgUNhbXBlb25hdG8K4paBQ2hyaXN0bWFzCm1pZGRsZQpvdGhlawplbGVtZW50cwriloFzb25kZXJuCuKWgXRhcmRlCuKWgXBlcm1hbmVudAriloFjb25jbHVkZQpTZWcK4paB0LDQutCw0LTQtQp9IiwK4paB0YTQtdCy0YDQsNC70Y8KxZllZAriloFJTApqdWQK4paBVVNTCuKWgU5hdHVyZQppZmZlcmVuY2UKU2VyaWFsaXplcgriloF0d2VsdmUKdGlkCtC80LjRjwrRh9C10YHQutC+0LPQvgriloFjYWxlbmRhcgpjb25jYXQK4paBaW50ZXJzZWN0aW9uCuKWgVBBCmF6dXJlCuKWgXNpdHXDqWUK4paBa2luZHMK4paBYXVzZ2UK4paBcnVyYWwKVGhlbWUK4paBdGFsZQpub2luZGVudApnb2luZwpyeAphZ2kKd3JhcHBlcgriloFDb2FzdAptYkgK4paB0L/QtdGA0LXQtApzcHJlCuKWgX1cCuKWgUxJCnpuYW0KaXRsZWQKU2FtcGxlCnVsaWFyCipcCuKWgXJlc2lzdGFuY2UKc3RvY2sKa2VkCuKWgUhFCuKWgXBvc3Nlc3Npb24K4paBUmluZwriloFtYWd5YXIKb3V0cwriloFTZWNyZXRhcnkKbmRlCuKWgVdhbGQKLSgK4paBSVNPCuKWgWFmdGVybm9vbgppb25lbgriloFzdG9wcwriloFjb25zdGFudHMKZ3VhcmQKYm93CuKWgWVycwriloFGaXJlYmFzZQriloFDbGVhcgriloFIb2x5CldpbgriloF0aXRsZXMK4paB0YLRgNCw0LIK4paBY29udHJpYgpow6RuZwriloFwaG90b2dyYXBoCuKWgURpc3RyaWJ1dGlvbgppZnRzCuKWgWF1bnF1ZQpjb21iCkFERAriloFwdWJsaWNhdGlvbgriloHRgdC70YPQtgriloHQutC90Y8K4paBYXlhbnQK4paBcmVzdG9yZQriloFiZWxpZWYK4paBdsOpZwriloFleHRlbnNpb25zCuKWgWRlY29tCtCy0YjQuNC5CldUCuKWgXBhcnRpCuKWgWdpb2MK4paB0LzQuNGA0LAK4paBaXNzdQpwaXBlCuKWgXByb3BzCuKWgXdpbGxpbmcK4paBbmVzdAphc28KcG90CuKWgWhhbmRsZXMK4paB0YTQvgriloFtb2RlcgriloFlYmVuZmFsbHMK4paBZmlnaHRpbmcKdW1ibgriloF0cmFuc3BhcmVudAriloFLcmlzdAriloFob21lcwriloF2b3lhZ2UKRmFpbGVkCuKWgUJpcmQK4paBSGVhcnQKQ291bnRlcgriloFTY290dGlzaArDoXRpY2EK4paBYXJiZWl0Cl57LVwK4paBU29yCuKWgWVuZ2FnZWQK4paBYXNpZGUK4paBRm91CuKWgXdpZWwK4paBcmVjb25zdApvdXNpbgriloFob3N0ZWQK4paBY2xhc3NlCuKWgWNvbnRlc3QKLi4uIgrQvNC+0LwK4paBYmVhbgpnZW0K4paBY29uc3VsdGF0bwriloFiaW8K4paBc3ViamVjdHMKYm9Cb3gK4paBU2NocmlmdAriloFkaW5uZXIKxINyCuKWgXLDs3duCuKWgSUlCmJhZ2UK4paBdmVyw7ZmZgriloFkZXRlY3RlZAppZW5uCnJvc2UK4paBVG9uCkNvbXBsZXRlCuKWgXByb3RvCmljaHRzClNUQVQKQ2hlY2tlZAriloFpbnRlbgriloFzbWlsZQriloFzdHJpcApuZXV0CicpOw0KZm91cgriloF0b2RhcwpDb250cm9scwriloF0aG9yb3VnaApydXAK4paB0LTRgNC20LDQstC4Cml0xIMKUHJvdG9jb2wK0JrQsAriloFleHBhbmRlZApleHRyYQpvcG9ydAriloHQodGC0LDQvdC+0LIKbGVhc2VzCuKWgW5vdGlvbgriloFndWVzdAriloFJc2xhbmRzCmlja2VkCuKWgURhdmUK4paBcmVmbGVjdGlvbgpsaXYKw6FsbsOtCuKWgXJldmVhbGVkCuKWgXNvZwriloFUYXgK4paBcGVyaW9kbwriloFXZWx0a3JpZQpjYXRhbGluYQpxdcOpCuKWgUZhdGhlcgriloFCaXIKZXhwZWN0CuKWgXJlZ3Jlc3Npb24KaW7DqQriloFkYWJlaQpwZXJtCtC80LXQvdC1CuKWgUFiZAriloFDRgphcmtzCnJlc29sdmUKd2VkZ2UK4paBaW5pdGlhbGl6YXRpb24K4paBVsOpYXNlCuKWgdC/0YDQuNC90Y8Kc3RtdAriloFpbmNvbWUKTVkK4paBb2RrYXp5CuKWgVNpZWhlCuKWgWJvZGllcwriloFzb2MKUmFuZG9tCuKWgXNlbnphCmFibG8K4paBcmVnYXJkZWQKb25DcmVhdGUK4paBTWFnYXppbmUK4paBUmFmCuKWgUJ1ZW5vcwrQuNC7CikpKTsKY2FwdApyZWRpcmVjdAriloFwZXRpdAriloFmYXJtCuKWgXLDtGxlCuKWgdGB0YLQsNGC0YzQuArCoMKgwqDCoApzdWJmaWd1cmUKw6hjZXMKemllbAriloHQvtC60L7QvQpFRQptZWUK4paBcGVydGVuCuKWgXJlcHLDqXNlbnQK4paBTEEKPycK4paB0YLRgNGDCuKWgXJhdGlvbmFsCm9zb2YK4paBa25lCuKWgWFydGlzdHMKRmxvdwriloHQkNC70YwKaXphcmQK4paBbnVtZXJvCmFjdGljCuKWgWRlc3RydWN0CuKWgdCf0YDQsApvbnNpZXVyCnF0CmFiZXN0YW5kZW4Kbm/Fm8SHCkNvbm5lY3QK4paBb3JhY2xlCuKWgVN0b2NraG9sbQpzaXplb2YK4paBZ2Vtw6TDnwpBQ1QK4paBZXhwZXJ0CnV0aW9ucwriloFoYWNpYQriloFsb2dnZXIK4paBZm9vbApyeXB0bwrDpnIK4paBY2lkYWRlCuKWgdGB0L7RgdGC0LDQstC1Cm9rZXIK4paBVHJhbnNmZXIK4paBZGVuaWVkClRyYWNrCuKWgXJhZGkKemVjCuKWgUhpc3RvcmljCuKWgUVpbndvaG5lcgrQutC+0Y4K4paB0YXRgNCwCuKWgUNhdGVnb3J5CuKWgURpc25leQriloFzd2FwCkJlZ2luCuKWgW1pZW50cmFzCuKWgWRhbmNlCuKWgXTDqnRlCuKWgWRyb2l0CmVydGEK4paBYmlyZHMK4paBY29udmluCnBhcmF0b3IK0LTRgNCwCuKWgUVTCuKWgVJlc3NvdXJjZXMKRUdJTgrDvGNrZQriloFDcnV6CmFibGluZwriloEiQAriloFtZXRyZXMK4paBQmVnCuKWgUdyw7xuZAriloFCb2gK4paBbWlsZQriloFUZWNobm9sb2d5CiIrCmFjY28K4paBc3MK4paBRmVkCuKWgUhlbmQKdXNjaAppdMOkCmZvbGsK4paBYWJzb3IKYW50YWwKb2RnZQriloFXSEVOCuKWgUV4dGVybsOtCuKWgVJlZ2ltZW50CuKWgWV2YWx1YXRpb24K4paBVGFpCuKWgXZvY2FscwriloFleHBlcmltZW50YWwKZW1iZWQK4paBTWlubgriloHQstC80LUKcHJlYwpldmVyeQriloFob29mCuKWgUZlcm5hbmRvCuKWgUJpYmxpb2dyYXBoaWUK4paBbmFnCmFtZXJpa2FuaXNjaGVyCuKWgW1hcmtzCuKWgVVUQwriloF1bmNlcnRhaW4K0LTQuNGPCm9saWEK4paBY3VwCuKWgWZpbGxlCuKWgWRvawp1c2VwcGUKZXN0ZXJkCuKWgUJyYW5kCuKWgVRoaXJkClBQCm5vZGVzCuKWgVBhZAriloFsb3ZlZApzd2luZwriloFzdXJwcmlzZWQKYXJkaQriloFHUgpdIgriloFlcXVhbGx5CmloZQpjYXJlCtC/0LjRgdC+0LoKbGlqawpyaW5uCuKWgVxbXAriloFzb25zCuKWgXTDpHQKaWNhbWVudGUK4paBbGlzdGluZwppZWxsZW1lbnQK4paBbnllbHZlbgriloFkcwriloFhZ3JpY3VsdAriloFIZXJtYW5uCuKWgWJlc2lkZXMKcHJvZ3Jlc3MK4paBcGVjdWxpYXIKZm9jdXMKY24KLSQK0YHRgtCy0LXQvdC90YvQuQpvdXJnCuKWgXd5bgriloFjb25kdWN0ZWQK4paB0KHRgtCw0L3QvtCy0L3QuNGI0YLQstC+CmNvbm5lY3RlZAriloFib3R0CuKWgdGB0LzQtdGACuKWgVBvegp1bmN0CmNvbmRhCuKWgdGB0LDQstC10LfQvdC+0ZgK4paBaGF2ZXQKbGlndApvcnRlZAriloFlbnRlcmluZwptdWx0aXAK4paBVGVtcGxlCuKWgVBsYW50CnR5cGVvZgriloFWbGFkCuKWgXF1ZWQK4paBcmVzdGUK4paB0LzQsNC5CuKWgVZlcnkKYW1iaWd1YXRpb24K4paBY2hhbGxlbmcK4paBcmVzcGVjdGl2ZQriloHRgtC+0YAKQ3RybAriloFhYnNlbmNlCmFydQrQstC+0LUK4paBZsO2cnN0CuKWgXNxCuKWgUVtcGVyb3IK4paBSWduCuKWgdGC0L7QstCwCjpgCmFkb29wCuKWgU1hZGFtZQriloFncnVwcG8Kc3R1ZAriloFleHRlcm5hcwriloHQkNC70LXQutGB0LDQvdC00YAK4paBZGlnbgriloHQttC40LLQtQpBbW91bnQK4paBY29ycmVsYXRlCuKWgUZhbnQK4paBcmFpbHMKZnAK0LzQuNC90LjRgdGC0YDQsNGC0LjQsgriloFib3VnaHQK4paBZmlsdGVycwriloFhbmNvcmEK4paBcGFydG5lcgriloFxdWFuZApzeW1ib2wKdWxhdGluZwriloF6ZAphd24K4paBR3JhbnQKYmVjYXVzZQpyYWJsZQpcfQrDrXN0aWNhcwriloHRg9GH0LUK4paBcMOpcmlvZGUK4paBc2tlCuKWgUFueXdheQriloFpbmRleGVzCuKWgWRpcmVjdGlvbnMK4paBUkFNCmNocm9tZQriloFhcG9zdAriloF3YXJuaW5ncwriloFBaXJwb3J0ClZJCmFiaWxlCuKWgWxvcmQKcHJvdmlkZXIK4paBSmkKb3N0cmVhbQriloFnZW1lZW50ZQp0YWJsZVZpZXcKRXh0cmEKY3Vyc29yCmVncm91bmQK4paBTW96CuKWgXJpYgriloFtb3JwaApsb2FkcwplbHNrCuKWgU1BWAriloFTYW50aWFnbwriloFIaW0KY29kZXMK4paBbGFuegriloFjb3VudHMKcmlubmluZ3NvbXLDpQrRidGRCuKWgXNww6kK4paBcGllcndzCuKWgVN2ZXIK4paBYWNrbm93CkJvb2xlYW4K4paB0YTQsNC80LjQu9C4CuKWgVNlbmF0ZQrRiNC+0LIKYWdlcnMK4paBTnVldmEKYmlsCmtpZW0K4paBTWV5CndpagriloFHbWJICnZhbGlkYXRpb24K4paBZW5zdWl0ZQppbmtpbmcK4paBY2FtcGlvbgriloFmaW5hbmNpYWwKaXpvbgpIZWFkZXJzCuKWgWRlcHJlY2F0ZWQK4paBZm9uY3Rpb24KUkVHCuKWgXZvbHVtZXMK4paBQ2hpCuKWgWVuY291bnRlcmVkCmxhawrRgNCw0Y8K4paBY29udGludWVzCuKWgX5bCnVlcnRlCuKWgVw7CuKWgURvawriloF3ZWlnaHRzCuKWgXJoCuKWgU5hcG9sZQriloFuYXR1cmFsbHkKc2t1CnBhcwriloFnZWdyw7xuZApldHIK4paBS3UKaWN0ZWQK4paBZmFicmljCuKWgUFTQwriloFFbnRlcnRhaW5tZW50CuKWgWVuZXJnCtC60LvQsNC0Cm9tb24KdGhlbWUK4paB0YXQsNGA0LDQugriloFkcmFmdAriloFjaGFubmVscwriloFkZXNlcnQK4paBdHJhdsOpcwriloFMb2NrCuKWgXNpZW5kbwrRhNC10LoKbcOqbWUK4paBcGFja2V0CuKWgU1vdW50YWluCuKWgUZhaHIKYnJhaW8K0L/QtdGA0LUK4paBZ2VuYW5udAriloFkZXBsb3ltZW50ClBhbArQvdC+0LMK0YHRgtGA0YMKUHJpbQpmw7xyCuKWgWRhbmdlcm91cwriloFzesOhbQpyZWNrCuKWgXBvcHVwCmlja3kKaW5hcgpjb3dvCtC90YbQuNC60LvQvgrDrXTDoXMK4paBcGx1Z2lucwriloFkcml2ZW4K0LvQtdCyCuKWgSIoCnR0YQriloHDmgriloFlYgriloEnJzsK4paBa25vY2sK4paB0L7RgdC90L7QstCwCuKWgW1haXNvbgrQs9C70Y8K4paBSG9ub3IKdGFpbApyaXR6CuKWgWd1eXMK4paBY29tYmluYXRpb25zCm9uZGVyZQriloFBbGQK4paBZmlkZGxlCtC00LDQsgp1cmQK4paBcHJvamVjdGlvbgriloFUYW1iacOpbgp2ZXJiCuKWgXRlcnJlCnJ1Z3UK4paBc2VwdGVtYmVyCuKWgTwhCmNvc3QK4paBbnV0CnslCuKWgXViaWMKYW1hcmluCtGC0LjQuAriloFwYXRyb24K4paBYW1lbHkK4paBZXN0bwriloFsaXN0b3AKZmFsCuKWgVByb3AK4paBT250CuKWgU1hZGUKVEVTVAriloFOZW0K4paBTmF0aW9ucwriloHQstGDCmluY2x1ZGluZwriloFzcGVjdHJ1bQriloFMYW4K4paBRXZlcgpQYXVsCnRtCkFwcGVuZApSZWxhdGl2ZQpkaXNhYmxlZApyZXR1cm5zCuKWgWZsb3dlcnMKaWt1CuKWgXxcCuKWgUpvcmRhbgriloFTbWFsbAriloFjaWMK4paBc2V4dWFsCmF1dHJlCtCy0LDQuwriloFyaXAKb3VzdAriloFQaGlsYWRlbHBoaWEK4paBdWsK4paBTW9uZ28KeG1sbnMK4paBc2hvcAriloFkZWJ1Z2dlcgriloF6YWoK4paBQmlsbHkK4paBbmllbQpvbGlzCuKWgdGA0L7RgdGB0LjQuQphZ25lcgriloFtYXZlbgriloFHdXN0YXYKQXVzCmNvbXBhcmUK4paBamV1CnVkZXIKaXNobWVudAriloHQtNC40LLQuNC30LgK4paBRmlubGFuZArQvdGD0YIKesOpcwriloFMaWdhw6fDtWVzCuKWgXF1ZWxsbwphbm5vdGF0aW9uCuKWgXRocmV3CuKWgVByb29mCuKWgUFyZWEKYXNoaQriloFGTwpqYW1pbgrQtNC10L3RggriloF1bnVzCmZyaWVuZAouIik7CuKWgXRyYWt0ZW4KZG9jdW1lbnRjbGFzcwphbmthCuKWgWFycml2ZQriloFkb25uZQpvbHkK4paBUmVpbgriloFmYWNlYm9vawppY2luYQpzbGljZQriloFuYWd5CuKWgWhlYmJlbgriloFJQwriloFCYWcK4paBY2lyY3VsCsOhY3QKbWl0dAriloFncmV5CuKWgWNhdgriloHQvtGB0L7QsdC4CuKWgXN5bW1ldHJpYwriloFTaWMK4paBbWVkaXVtCuKWgVVURgriloFEb3BvCsOtY2gKYmFyZQpkemllCuKWgWhlYXZlbgriloFjYW1wZQplc3RlcmRheQriloFXaXNzZW5zY2hhZnQK0L/QvtC70YwKZGlkCmFsZXIK4paBY2l0aXplbnMK4paBTWFyZ2FyZXQK4paBc291Z2h0CmNoYXJ0cwpDTEMKb2xseQp5c3oKd2FsZAriloFmZW4K4paBU2l4CuKWgVVycwriloHQvtGA0LPQsNC9CuKWgVRyYWQKY3VlCnNjaHV0egriloFwcmVjaXNlCuKWgVdpbmRvdwrRgtC40LUK0LvQvtCy0ZYKaXRvcmkKZGlzYW1iaWd1YXRpb24K4paB0YXQuAriloFOYXR1cmFsCmRhbgriloFjb25jcmV0ZQrRhtC40ZjQsAriloFzcGVsCuKWgUZhaWxlZArFm2NpZQriloFidWYKdWNhCmljaW9uYWwK4paBb3R0b2JyZQriloHRhNGWCuKWgXN1Ym1pdHRlZApsYXZlCuKWgVBsb3QK4paBY29sbGVnCmFkZW0K4paBY2hhcXVlCuKWgW5laWdoYm9yaG9vZAriloFjYWxjaWF0b3JlCkxvb3AK4paBR2FzdAriloHQutC+0LPQtNCwCuKWgWluZHVzdHJpYWwK4paBZmF0YWwK4paBQ2VydApsYXRpb24K4paB0J7QtNC90LAK4paBamFtYWlzCuKWgWFjY3VtCklkZW50aXR5CuKWgU1lZGFsCk1ldGFkYXRhCuKWgdC70Y7QtNGPCmJyaWRnZQpHb29kCuKWgdGH0YLQvtCx0YsK4paBY29tcG9zZXIK4paBYnJlYWQK4paBY2xvc3VyZQriloFsYXJnZWx5CkZCCuKWgdC+0LHQu9Cw0YHRgtGMCuKWgWF1dG9tYXRpYwphcsOtYQriloFzdWZmaWNpZW50bHkK4paBaXRhbGlhbmEK4paB0LrQsNGH0LUK4paBSsOzCmhpc3RvcnkK4paBSEQK4paBc2lndWllbnRlCm5lbGwK4paBR3JlZQriloFUaQriloF0cmFuc2ZlcnJlZArDqXF1aXBlCuKWgVBoaWxpcHBlCuKWgWVuY291cmFnCuKWgVZpZXRuYW0K4paBZ3JhcGhzCuKWgXN5bW1ldHJ5CmZyZWQKd2VlawriloFicm9uemUKcnlzCuKWgW5hbWVseQpvbmRlcnMKbGVtYWduZQpYWQpDb252ZXJ0Cn1dKApSZWdpb24KcGVjaWVzCuKWgXRleHR1cmUK4paBY2hyCtC90LXQs9C+CuKWgXNvbWVib2R5CmFxdQplcmFzCuKWgdCd0L7QstC+CuKWgWRlegphbml1Cm9rcmF0CuKWgWNvdmVycwriloFzaWduYWxzCtGS0LUK4paBSGViCuKWgUFudGkKSVZFCuKWgXJlc3MKTEVURQp5bmEK0L/Qu9CwCtC20LTQtdC90LjRjwriloFjaGFtcAriloF2aWxsYWdlcwpab25lCuKWgWlQaG9uZQriloFzb3V2ZW50CtGB0YzQutGWCuKWgWZlYmJyYWlvCsOpcmNpdG8K4paBWEkKb2thdAriloFtZW1icmVzCmp1bml0CuKWgURyYXcK4paB0L/RgNC+0LLQvgphdWRpbwplbmRsCuKWgU5hZAriloFtYWduaXR1ZGUKU3VyCmljaW5nCuKWgXVudwriloHQvtGC0YDQuAriloFCZXkK4paBVmlrCuKWgXBvbMOtdGljYQpwb3J0ZXIK4paBQmFyYmFyYQrDoWx0CmJpYgriloFhY2NvbXBhbgpWUAriloFlbmNvZGVkCuKWgVNvbWV0aW1lcwpiaXJkCuKWgVVsdAriloF0dW4KZ2V0VGV4dAriloFhcnJpdmFsCnNjcmlwdHN0eWxlCntgCuKWgXBlcnNwZWN0aXZlCkxJTkUKRm9ybWF0dGVyCuKWgWJvbQrQstGA0LAKREVCVUcKQm91bmRzCuKWgVRpdGxlCmzDswpEYW4K4paBZ2VuZQriloFCaXQK4paBcmVwcm9kdWNlCuKWgWdyYXBoaWNzCuKWgdGB0LXQvArRgNGRCuKWgdGA0LXQutC4CnVzYWxlbQrRgNC+0LYK4paBREVTCuKWgVNvZnR3YXJlCnVyYW5jZQppdGhtZXRpYwplbmVzcwppY2hpCkNvbnZlcnRlcgriloFnaXRodWIKZXJkaW5ncwpnbGlzZQrDoWNoCuKWgWJ1cmllZAriloF2aXNpb24KTWlzcwriloFzZWVzCuKWgXBlcnNvbm5lcwriloFJbnRlbAplbGlhCuKWgcSNbMOhbgriloFjaGkK4paBa2xhcwphdXTDqQriloFzdGFyawpjemUK4paBZHJpdmVycwp2bgohLAriloHQs9C+0LTRiwpIaQriloFleHBsYWlucwphcnRpY2xlcwriloF6dWcKUHJvbQo+PQriloFCZWF0CuKWgVNheAp2ZXJ0aWNhbArQutGC0L4K4paBcGxhbnRzCuKWgVLDqWbDqXJlbmNlcwriloFvZ25pCuKWgWN1cnMK4paBU0sK0L7QvdC4CuKWgWRlc3RhYwoiKTsNCuKWgVN1cmUK4paBcGFydGlkbwriloFGb2xnZQriloFNb29yZQriloF3egrRgdC60YPRgQpsdHJlCm9uZG8K4paBcG9zZQppbW9zCtCx0L7QuQrRhtC40L/QsApqdXMKLi4uLi4K4paBw6lwb2NhCuKWgXF1YW50bwriloFTdXBwb3J0Cmdlc2NoaWNodGUKU0VSVkVSCuKWgUdlb3JnZXMKZW51bQriloFoZXJtCuKWgW5lYm8K4paBQ2hyCmNoYXJhY3RlcgriloEqKioK4paBRm9yc2NoCmlhbWkK4paBwr8KY3ljaAriloFmaWZ0aApzZW50CuKWgWFuZGVyZW0K4paBcHJvcG9ydGlvbgriloFwcmVzdAriloFHaXJsCuKWgWRyYW1hCndhbmQK4paBTWFpbAriloFMdXgK4paBa3RlcsO9CuKWgUdlc2VsbHNjaGFmdAriloFIaW53ZWlzCm5pc3NlCuKWgW1vbmRvCkVxCuKWgXBlcsOtCuKWgWVhc3Rlcm4K4paBVUVGQQp1YWxlCuKWgWNvbnZleAriloHQv9C+0LvRjAriloFIZXkKemVuaWUKaW5pdGVseQriloFadXNhbW1lbgpTU0wKb2NhbAriloFjYW5hbAp2b3kK4paB0JrRgNC4CuKWgWvDtnrDtnR0CuKWgWNhcnMK4paBdmVyc2nDs24KRW52aXJvbm1lbnQKSGVyCuKWgXNlw7EK4paBc3BhdGlhbAp5bWkKRmlyZQriloF2ZWdldAriloFXaWUK4paBem5hagriloFkYW1hZ2UK4paBZW5kbApnaWYK4paBcXVhbGkK4paB0LrQvtGC0L7RgNGL0YUKZWxsYW4K4paBbWVucwriloFwbHVnCuKWgWFidW5kCkZJRwriloFzZgriloFjb25mbAriloHQvdCw0YHQtdC70LXQvdC40Y8K4paBcHJpbmNpcGxlcwriloFHYWJyaWVsCmliZQriloF7JQriloFwb2JsYWNpw7MK0L3RltGG0LjQv9CwCuKWgWV4dHJlbWUK4paBYXNzZQriloF2dQpNb2NrCuKWgXNwaWVsdGUK4paBQWVyCuKWgWRhdG9zCmVuZGVzCuKWgUdlbAriloFHb3IKQ2hyaXN0CmNob3MKUHJvY2Vzc29yCuKWgWluc3RydWN0CuKWgXBpY2tlZApuYWhtZQpmYWhyCuKWgWluZGljYXRlZAriloElLgriloF0cwriloFub3RhYmxlCuKWgXF1YWxpZmllZAriloHQkNC7CkJsYWNrCuKWgWNvdW5jaWwK4paBb3ZlcmhlYWQKYWNpCmFubsOpZQriloFpbml0V2l0aApiacOzCuKWgWludHJvZHVjdGlvbgriloFjb21wYW5pb24K4paBZXhwb24K4paBa8O2cgpvYnkKYnVybgpnbnUKdmlydHVhbAriloFpbnRlbGxlY3QK4paB0LTQtdGA0LbQsAonKwrQsdC70LUK4paBc3RyaWN0bHkK4paBcmVjb2duaXplCmhvdXIK4paBV3Jlc3QKZW5uZW4KJCkuCmZmZgriloFDZW50cm8K4paBUGl0dAriloFkemlhxYIK4paBY2VsYQriloFmcmFuY2VzZQrRgNCw0LzQuApzcGVjaWFsCuKWgUR1cAp0b2lyZQrQutCw0LvRjApDT1VOVAriloFCcm9vawriloHRgNGD0LrQvtCy0L4KcHVibGlxdWUK4paBc2Vjb25kYQriloFjb21wdAriloFibGFuZApCZWZvcmUK4paBUGFjawphbHR5CsO2ZGVyCuKWgWludGVydmFscwriloFEYXRlbmJhbmsKTW92aWUK4paBdHJhbnNtCuKWgXRhcAriloHQv9C+0YcKZm9uCmlhaQriloFmaWIK4paBd3lkCuKWgWh1bmcK4paBYWxpdmUKQ2xlYXIK4paBcHVzaGVkCuKWgXR1cGxlCmFjaGVuCtCz0L7QstC+CuKWgXJldmVycwriloFhdWdtZW50CuKWgWNoYWxsZW5nZQpsb3N0CuKWgWRldXhpw6htZQpzdHJ1Y3RvcgriloFtZWhyZXJlcgphdHVyYWwKU3BsaXQK0YHRgtC10LwK0YjQu9CwCilcXAriloFEb2cK4paBZGV2ZWxvcGVycwriloFub2QK4paB0YHRgtC+0YDQvgriloFOYU4K4paBcHJpZXN0CuKWgWV4aGEKVU5ECnBhaXIKYWxvbmUK4paBbW9vbgriloEjIS8K4paBZ3Vucwpyb2xhCtGH0LjRgtCwCuKWgUVuY3ljbG9wZWRpYQphdGlzCuKWgSciCnp5Y2gK4paBc3VwZXJmaWMK4paB0Y3QugrQtdC00LXRgNCwCmZlZWQKTEFZCkZpCnVua3MKaXNlY29uZAriloEnQAriloFBZGRpbmcK0YDQvtC1CuKWgXRhbmcK0YbQvgpodW5nCmJpcwpza8OpaG8K4paBYWR2ZXJ0CuKWgdC30LDQvdC40LzQsAp1enoKw6FnaW5hCuKWgVRlbApzaWcK4paBRXoK4paBZ3VhcmFudGVlCuKWgXRlYWNoaW5nCm90eQp0ZXJtaW4K4paBZGlzdHJpYnV0aW9ucwpGTEEK4paBR2l1c2VwcGUKcXVlcnlTZWxlY3RvcgriloEvXAriloFTcXVhZApnegpkZWxheQriloFzdXJyb3VuZGluZwriloFtYW51cwriloFIb3UKwrIsCuKWgWN1bHRpdgriloF0cm91YmxlcwriloFyYWlzb24KZXhwYW5kCuKWgWNvdgpudW5nZW4KKSl7CuKWgWdlZW4K4paBYXXDn2VyCuKWgdCb0ZYKxZlpCuKWgXNpdHVhdGlvbnMK4paBdGVsZXAK4paBSmVkCuKWgXRyYXZhaWwKbGlhcwpidWxsZXQK4paBc2VsZWN0aW5nCmF2aWVyCuKWgWVzc2VudGlhbAooLwp5eXl5CsWhdMSbCnVsdHkK4paBa3JhCuKWgXRhYnMK4paBZXhwZXJpZW5jZWQKYXppCuKWgURpcmVjdG9yeQriloFjcm9uCuKWgXNwZW5kCuKWgVJBCuKWgXNlbGVuaXVtCuKWgVRow6kKRWxlbWVudHMKY2lpCuKWgXBsYXQK4paBYXJjaGl2ZQriloFhc3Npc3RhbmNlCuKWgW5lY2sK4paBQXZlbnVlCuKWgXdoZWVsCuKWgWhhZGUKQ29tbW9uCuKWgURpYWxvZwriloFmb3JnCuKWgXN1cmVseQriloFob2NrZXkKa3TDswriloF0awriloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloHiloEK4paBQnJ1Y2UK4paBZW5vcm0KLOKAmQriloFDaHJpc3RvcGhlcgpqZXYK4paBcXVhZAriloFBSkFYCuKWgXJlbGllZgriloFtb2Rlcwpza2zDpHIK4paBVmlkCuKWgVNlcmlhbAriloF0b2tlbnMK4paBUG9sYW5kClxdCuKWgXZpZGUKcm9vbXMKb21hcwriloFCdXJlYXUKY3gK0L3QvtGB0YLRjNGOCuKWgXNpZ25zCtGI0LXQvdC40LUKbG9zc2VuCuKWgVF1ZWVucwriloFtZW1icmUK4paBbWV6CuKWgUJvb2wK4paBTmFqCuKWgU1lbW9yeQriloFLaGFuCuKWgWzDoAriloFIdWQK4paBZGlzbWlzcwppZ2h0aAriloFmcwpwcmV2ZW50CuKWgdC80LXQtNCwCuKWgVBvbGljZQriloHRgdC60L4KZmluaXRlCuKWgWFtaQriloFNdWNoCm93YW5pYQpPUlkKaW9ycwriloFQcmVtaW8K4paBdGV4dGJveApkbQriloFhZmluCuKWgURvbmFsZAriloFQcml2CuKWgWRlY2lkCuKWgU1hdXJpY2UKYWdhbgriloFCcml0YW5uaWNhCuKWgW9mdAriloFjb25zZWN1dGl2ZQoiPz4K0L7QstC40LkKc3R1ZGVudAriloFwZXF1ZQriloFkaWVzZXMK4paBcmV0b3VyCsOpdHIK4paB0YHQtdC3CuKWgWtyZQriloF2b3RlcwpydXB0aW9uCml6YWRhCuKWgVdpZWwK4paBR3JheQriloFMZW9wCnRlaWx1bmcKKFsnCuKWgXdoaXRlcwpmcmljYQphbmltYXRpb24KY3VybApsaW5ncwo9IiQKbG95ZAp0ZXh0c2MK0L7RgNGDCuKWgdGB0LXQu9CwCmVzaWFuCuKWgU1pc3Npb24K4paB0L3QtdC30LAK4paBdWx0aW1hdGVseQrQsdC+0LIKb2xlbgrRgdC60L7QvNGDCm5ldGUK4paBRGl0CuKWgWNvc3RydQpkZXBlbmRlbnQK4paBUmVzb3VyY2UK4paBaG9zdHMK4paBcmVhcgpEdXJhdGlvbgrQvdC40LrRltCyCtCc0LAK4paBcGxhbm5pbmcK4paBcHJlZGljdGlvbgriloFMeW4K4paBa2lyCuKWgUxlZ2lzbArQvNCw0YIK4paBU29jY2VyCuKWgXN1cnZleQriloFlc3RhZG91bmlkZW5zZQpvcmdlbgpqb3VyZAriloFhcHJpbGUK4paBaWRzCtGB0YzQutC1CuKWgWVtcGxveWVlCuKWgVNjaGF1c3BpZWxlcgrRgNGKCuKWgW11bHRpbWVkaWEK4paB0YHQstC+0Y4K4paBd2luZQriloFFVQppY8SDCuKWgVJoZWluCuKWgVBhbG1hcgpvdGVjYQriloFwcmVwYXJlCuKWgVRvdAriloFOdWxsCuKWgWtpbgppbmFscwriloFOZXd0b24K4paBdGJsCuKWgVNvbGQK4paBdmVyZgphdHVyaW5nCuKWgWxhcHRvcAriloHQodC+0LLQtdGCCnNlY3JldAriloFPbHltcGljCuKWgWZvb3RiYWxsZXIK4paBUnVkb2xmCuKWgWNvbmhlCnp5c2sK4paBZXZhbHVhdGVkCsK7KQpzaG9wCnJlcG9zaXRvcnkK4paBemFjaAriloFsb3NpbmcKZXR0ZXIK4paBV2lydHNjaGFmdArRgtCw0LoK4paBdW5uZWNlc3NhcnkK4paBUGhvdAphbnNrYQriloFOYXRpdmUKQ0NFCuKWgWZpZnR5CuKWgWVydwpyaAppc3NlbnQKfXsoCuKWgWxhbsOnCuKWgVhjb2RlCtCz0L7RgNC+0LQKY2lyCuKWgXBlbMOtY3VsYQriloFPc2NhcgriloFzaG9yZQriloFzdXBwbGllZApleGFtcGxlcwpNZXNzClZJQ0UK4paBZXhjbHVkZQriloFoZW4K4paB0LPRg9Cx0LXRgAriloFGcmFnbWVudAriloFCaXR0ZQriloFCZXNpZGVzCuKWgWhlcwriloFpaHJlbQriloFTZXJnZQriloFhcnRpZmljCj0iJHsK0LvQvtCy0L4KdXRldXIKdGFpcmUK0L/QsNGBCuKWgWVhc2llc3QK4paBZmFtaWdsaWEKTm9ybWFsCuKWgWRhbGxlCuKWgW5hdGlvbnMKcnAKdGhlYWQK4paB0L7QsdC70LDRgdGC0ZYK4paBRGVtb2NyYXRpYwriloHRh9C10LvQvtCy0LUK0LzQvtC2CuKWgdCz0LXRgAriloFzbWFsbGVzdAriloFQdWJsaXNoaW5nCuKWgVRzCuKWgWxhdWdoZWQKbGxlCuKWgUFtdAriloFJSVMKRk9STQpNYWcK0LTQvtC9CuKWgXN0b3JpYQriloFvcmdhbml6ZWQKxI1uw60K4paBb3gKbGluZ2VuCuKWgWx1ZWdvCmNjacOzCuKWgXJlbHkK4paBdHVzc2VuCmVydGVuCuKWgWhvbm91cgriloFDbGF1ZGUK4paBS29yZWEK4paBTWV0cm9wb2wKU3VwZXIKcmllbgrDqXJhdHVyZQphdHRybwriloHQsdGW0LvRjAriloFIZXJiZXJ0CuKWgWF1dGV1cnMK4paBZGFyYXVmCuKWgW1lbnRhbAriloFyYW5nCuKWgXPDs24K4paBU29waAopIiwKRGVzY3JpcHRvcgpwcmVwYXJlCuKWgUxhbmRrcmVpcwpIQwpjcm9zcwrQu9C40LfQsAriloFMb2dpbgpvbmVuCkZlYXR1cmUK4paBbXVzZXVtCnZlawriloFOZWxzb24K4paBcmVqbwriloHQutC+0LzQsNC90LTQuAriloFzdW1tYXIK4paB0YHQu9C10LTRgwrDpG1wCuKWgUdhcwrQstC+0LwKVkFMVUUKaW5nZQpwZXJpb2QKbGFzc2VuCsOhdmFsCuKWgWFsdG9nZXRoZXIKdW1waAppc3RybwrEhcW8CuKWgUtlZXAK4paBTWFyY28K4paBw6l0YW50CuKWgURyZQpnZW9tZXRyeQriloFLYXMKbWVzc2FnZXMKQ29vawriloFTaWRlCuKWgdC60L7QvNC4CtGB0YLRgNC4CuKWgWV4Y2VzcwriloFCaW9ncmFmaWEKWFhYWAriloFOaWUKdmVuZG9yCnhzZApNaWxsCnByb2Nlc3NpbmcK4paBTWlzc291cmkK4paBcGVybWV0dAriloFhcGFyCuKWgWNyb3dkCmZlcnQK4paBRG91CnLDrQriloFDQwriloFwYXltZW50CuKWgUhvbGx5d29vZAriloFWaXJ0dWFsCuKWgXNwb2tlbgriloF0cmFtCuKWgUNvbW11bml0eQriloFhZG1pbmlzdHJhdGl2ZQriloHQstC+0LvQvgpnaW9yCnZpc29yCuKWgdCj0LrRgNCw0LgKc3RhZ2UK4paBRm9ybWF0CuKWgWNvbnZlbmllbnQK0J3QsAriloFtZWRpYW4K4paB0LLRgNCwCuKWgdCf0YDQtdC80LAKZW5pZwriloFPcGVyYQpyw6lzCuKWgWZtdAriloFlZmZpY2llbmN5Cm1hbGUKTWFzdGVyClNlcmllcwriloFzeWQKZ2VuZXJpYwppbnRlcnZhbAriloFlZmVjdAriloFpbndvbmVycwrQu9C40LzQv9C4CmlyZW1lbnQKRXJyCsO2aAriloFseWluZwriloFTZXR0aW5ncwohPQplbWF0aWMKYXJndgriloFCYXNpYwriloFjb25zaWRlcmF0aW9uCuKWgWhhYmUKLSUK4paBbW91bnRhaW5zCuKWgXBlYWsK4paBZmFsbGVuCmVkZWQKbG9naWMK4paBbWF0Y2hlZAriloF0eXBpbmcKKX0sCuKWgWZhbmN5CuKWgWVsZWdhbnQK2KfZhAriloHRg9GH0LDRgdGCCuKWgVNhcmFoCuKWgVZlcmQK4paBdGVnbwpydWxlcwriloFtb3VudGVkCuKWgdGW0LwK0LXRgNGDCnN0b2ZmCmZhaHJlbgpkaXN0YW5jZQriloFMaWNlbnNlCuKWgUxFRlQK4paBd3AKL3sK4paBYW1hem9uCj4mCuKWgWVsc8WRCnF1YXJ0ZXJzCuKWgXNob2NrCm5pY2sK4paBQXJjaGl0ZQriloFTcXVhcmUK4paBcmF0ZXMKaW9yZQriloFOYXQK4paBQ2hhcmxvdApyZWljaGVuCuKWgXZhcmlhdGlvbgpvc2lzCmxpZmUKc2xpZGUKYWJpCnVraQpteXNxCuKWgXByaW1pdGl2ZQriloF1bml2ZXJzaXRhaXJlCkxFTkcKYWxlxbwKZWJvb2sKc3luCuKWgUdlZ2VuCuKWgUvDvAriloHQsNC70LUK4paBTHViCmNvbmN1cnJlbnQKaXp6YXRvCuKWgXN0dWIK4paBaWUK4paBJy4vCmNvZAriloFpbnRlcm5hY2lvbmFsCuKWgUdsYXMK4paBbWFyZQriloFOZWIK4paBR0IKa3dhcmdzCuKWgWF1bWVudApXSUQK4paB0YDQvtC0CnB1bmt0CuKWgUdyYWQKU04KQU1QCuKWgUJvcm4K4paBR3VlcnJlCtCz0L7RgtC+0LIK4paBbWVkaW8KTWVkCnN1cHAKYWN0dWFsCmRyb3Bkb3duCuKWgW9rdG9iZXIK4paBxZkK4paBY2lyY3VsYXIK4paBc2tpbgriloFlbXBoYXMK4paB0LPQvtC70L7QsgriloFwdWUK4paBaW5mb3JtYXRpb25zCuKWgVdvbGZnYW5nCuKWgXVzZWxlc3MK0LjRggriloFKb2FuCuKWgdCx0L7RgAriloFHbGFkCuKWgUtub3cKa8OpbnQKc3BlZWQK4paBS2V2aW4KdW5mdAriloFhcnF1CuKWgUNhc2EKKC4uLgriloFyYXBpZGx5CuKWgXByb2JsZQriloHQktC40LrQuNC/0LXQtNC4CsW+ZW4K4paBTmViZW4K4paBTWV0ZXIKQ2hpbGRyZW4KY2VtCmlnb3MKYWp1CuKWgVJldHJpZQriloFIZWxsCuKWgWdpZwriloFjb250cm92ZXJzCuKWgXpvb20K4paBY2VucwriloFhbGN1bmkK4paBSGVhZGVyCk1ldGEKUmVxdWlyZWQK4paB0LjQvdGB0YLQuNGC0YMK4paBc2t1cAriloFpbmdsZXMKw6lnbApiaWoK4paBdMOpcgriloFjb21wYWcK4paBY29tbWl0dGVkCuKWgXByb2Nlc3NlZApMb3dlcgriloFGb3JlaWduCuKWgXNlcQpzaGVldHMK4paBRmVtCmhvegppbmtzCuKWgWthbGwKdmFyaWFudAriloFsaWJybwriloFjbGlja3MK4paBZ29iaWVybm8KaWVnZWwK0LzQvtCz0L4KZ2VtZQriloF0b3dlcgriloFwYXJpc2gK4paBVENQCuKWgWxzCuKWgW5naW54Ck5hTgriloFEaXIK4paBQmVncmlmZmUKYXJpZQrDrW1wCmljaW9zCuKWgXNoYXJpbmcK4paBY2luw6ltYQpiZWMKUkVECuKWgUtyYQphYm9sCuKWgWZsdXgK4paBZXhwZW5zaXZlCuKWgdGB0YPRidC1CuKWgWBfCm9jegrQu9C40YHRggriloFhY3F1YWludAriloF3aXNlCuKWgXBvdXZvaXIK4paBZGV2YW50CuKWgW1vbWVudHVtCmltbWVyCuKWgUNvdXBlCmluZGV4T2YK4paBZG9lc250CuKWgdC30LDQsgriloFsaWNlbnNlCuKWgcOiCkNTUwriloFyaWNlClRlYW0K4paBYW5vCmxpdAriloFtZXJnZWQK4paBQ2VsbArQu9C7CmJveQphc3RzCuKWgXNlbGwK4paBZ3Jvw59lCuKWgXZpcnR1ZWwKQ2FuY2VsCuKWgXNqCmdtZW50Ci48CtGH0LDQuQppw6sKYWtoCml6ZXJzCnByaXQK4paBVGliCuKWgWVsYWJvcmF0ZQriloFmw6kK4paB0LzQtdC00LgKTEVOR1RICuKWgXByaW1hcmlseQriloFzY29yZXMK4paBY2FycnlpbmcK4paBbGFrZQpjb21wb3NlCuKWgVRvd25zaGlwCnVuZ2UK4paBYWxiZXJnYQphbnljaApxdWVsbGUK4paBQXJrCuKWgXByaXMK4paBdm9sbArRiNC70LgKVmFsaWRhdGlvbgriloFjZXV4CuKWgXBvcHVsYXRlCiINCuKWgWZlbW1lcwpBTkcK4paBRGVzcGl0ZQrQstGL0LUKaXNrZQp6dWcK0L3QsNGH0LAK4paBaGF0dGVuCklOU0VSVApFbXBsb3llZQriloFtb21lbnRzCuKWgcO6bHRpbWEK4paBaG9sZGVyCmJsYW5rCkNvbGxlY3Rpb25zCmF0aGVycwriloFncmFkZQriloFhZmZhaXJzCi4kJAriloFkZWx0YQriloFKdWdlbmQK4paBZXNwYcOxb2wK4paBT1VUCuKWgW1hdGhlbWF0aWNhbAriloFtb25nbwriloHQpNC1CnVsaW5nCuKWgXJldm9sdXRpb24K4paBY29pbgriloFzdWJjbGFzcwoiPT4Kw6RjaGUK4paBcHlnCtGJ0LDRjwppbGxlcnkK4paBY29tZW56CmRlcHRoCuKWgWPDqWwK4paBcmVzaXplCuKWgVNhbWUK4paBc3RyaWsK4paBdGlyCuKWgXNjYXJjCuKWgU1lbWJlcgpzdWJzY3JpYmUKw7PFvArDunRib2wKZXhjZXB0CuKWgWRyaXZpbmcKa2llCnpvbnkKw6htZXMKRGF2aWQKaXNzYW50CuKWgdGC0YsK4paBw6lsZWN0CuKWgXJlbmFtZQriloFSdW5uaW5nCuKWgWludGVyZmFjZXMKLy8vLy8vLy8vLy8vLy8vLwriloFXYWxrZXIK4paBc29jacOpdMOpCuKWgWFza3MKYnJpZAriloFqZXdlCuKWgXNlaW5lcwriloFhZ2VudHMK4paBTVkK4paBTGF3cmVuY2UKZGVzcwppZXNlbgriloHQu9GO0LTRj9GFCtC/0YDQsNCy0LgK4paBYW5jZXN0CuKWgXdlbGNoZQpyYXVtCuKWgW9yYgpzY2FsCuKWgUxlYXIK4paBd2VhcgriloFzbGF2ZQriloFyZW5hbWVkCsSNZW4KbWFzdGUKYW5nbGVzCuKWgUFtw6lyaWNhCuKWgXRpCuKWgWRlbXNlbAriloFiZW5lYXRoCmJpbmFyeQriloFlZGljacOzbgriloFraWxvbWV0CnVpdHMK4paBY3VhdHJvCuKWgWVudHJhbmNlCm9uZGlzc2VtZW50CuKWgWJhZwriloFBcm1lbgppam8K4paBTG9ycwriloFkZW1zZWxiZW4Kw6ptCuKWgWRpc2NyZXRlCuKWgXByb21pbmVudAriloFKYXkKZGVjb3IKREwK4paBZMOtClN0cnVjdAriloFQcm9kdWN0aW9uCnRoZXkKYXJpdXMKc2Nobml0dAriloFDb3UK4paBbGV4CnlvdXR1YmUK4paB0YDQsNCx0L7RgtCwCnN0YXRpb24Kc2VwCuKWgW1pcnJvcgriloFoaXRzCuKWgUJlY2sKYXRpY2FsbHkK4paBTGF6CuKWgXdpbm5lcgpERVgK4paBSU5UCn1eey0K4paBd2VnZW4KbWFkCkFuZ2xlCnppbmcK4paBQmF5ZXJuCnNhbArDpGdlcgriloFidXN5CuKWgXN0w7ZyCuKWgWZvbGsK4paBcHJpeAriloFhbGxvY2F0ZWQK4paBcHQKYWZmZW4KY2x1c3RlcgriloFjb21wbGVtZW50CsOhcnMK4paBQW1lcmlrYQrRgNGW0LkK4paBdmFsbGV5CuKWgXJvb21zCuKWgW1vaQouIiwKOzs7OwriloFsb3dlc3QKbm9nCuKWgWxhbmRldAriloFwcm9ncmFtbWUKY2hpbwriloFXw6RocmVuZArDoW5kZXoK4paB0LTQvtC70LYK4paBb3V2Cm9tw6FueQriloHQktC40LrQuNC/0LXQtNC40LgK4paBc8OzCuKWgWVsZWt0cgpEZXNjCuKWgUJlYXV0CtC90LDRgAriloHQvNC+0LbQtQpQaWVycmUKZXNvdGEK4paBb3BlcmF0ZWQK4paBZm9ydGUK0YDQuNGBCuKWgW9wcG9zaXRpb24KYWxpYQriloFTeWwKZ2V0TmFtZQrQstC10LvQuApmaWsK4paBY29tcHJvbQriloFUZXh0VmlldwpTcHJpbmcKbWV0YWRhdGEKZW5ndQovLAriloFjYXJyaQppc3RvbAriloFkaWFnb25hbApsaXN0YQppemVuCuKWgXJlbmRlCmdjYwpiZWNrCmxpdXMKaXJhbApSZXNvbHZlcgriloFwZXJjZW50YWdlCuKWgWF0dHJhCnN0cmluZ3MKd2nEhXoKb2RzCtCy0L7Qu9GOCsSZxbwK4paBbmV3c3BhcGVyCmltaXRlcgpBQkMK4paBTWFuY2hlc3RlcgpbewpBZ2VudAriloFXb3IK4paBS2F0aAriloHQv9C+0LLRlgriloFlbnRvbmNlcwriloFuaXZlYXUKYXR0ZWQKbGVhcm4KYXRpcXVlcwriloHRg9Cx0LgK4paBcXVpbmRpCmJpbmRpbmcK4paBaW1wb3J0ZWQK4paBSG9ybgplbWJlcmcKY29tcGxleAriloFuZXVyYWwKaW5mb3JtYXRpb24K4paBcmVjb2duaXRpb24KaW5ndAriloFpbmhhYml0YW50cwp2dWUK4paBQmV2w7Zsa2VyCuKWgWN1cnZlcwriloFsZWIK0LTRltC5CuKWgXNvdwriloFzZW50aW1lbnQKUEgKcmFjaGUK4paBLSgK4paBZXN0YWJsZQriloFGZXJkaW5hbmQK4paBw6ljcml0CuKWgXByaW1laXJvCuKWgXRleAriloFpbnRlcm1lZGlhdGUKdmVyYWdlCmlidXMK4paBc2VydmVzCml2YXMK4paBYnJ1CuKWgWx1bQphdHRpY2UK0YfQvdGL0LkK4paBRHJlcwriloF2aWRlb3MKZHVyYXRpb24K4paBYWJpdAriloFlZ2cKb2dyYXBoaWNhbAphbHBoClNUQVRFCuKWgdC/0LDRgNCwCnJlYWRpbmcK4paBdmVoaWNsZQriloFmb3J0dW5lCnVsdGF0cwriloFTdG9yaWEKbWlkdArFgsSFY3oK4paBTWVtb3JpYWwK4paBdmFzCuKWgdC30LDQvQriloF1dGlsaXR5CuKWgW9ic2MK4paBcmVsYWNpb24K4paBcnVuYXQKUmVsZWFzZQp0YWtlCuKWgU9saXZlcgriloFTaWQKdWxvcwriloFHYXJjCuKWgdGA0L7Qt9GC0LAK4paBU2FrClB5CmbDvGhydAriloF0cmFiYWwKKnsK4paBemVzCuKWgXN6ZXJlCuKWgXZhcmlvcwriloFvdHJhCuKWgWV2YWwK4paBc2l0dcOpCuKWgXdvdW5kZWQK4paBVmluY2VudAriloHQstC40LrQvtGA0LgK4paBZW5jb2RlCk1vZGFsCuKWgWZvcmIK4paBZHluYW1pY3MK4paBZGVwb3MKYXJkZQriloFzdHJlZXRzCuKWgUtvbW0KPSQoCuKWgdC/0L7QstC10YAK4paBZG9pcwriloF2aXR0CuKWgWF1dG9tYXRpc2NoCuKWgXJlbG9hZAriloFWZXJ3YWx0CmJlcm8K4paBaHViCuKWgW1vcwriloF0dXR0bwriloFGcmVkZXJpY2sKxYJvdwphbnRhZ2VzCmFxdWUKcGFwZXIK4paBZWluaWdlCmApLApkagriloFQbGUK4paBJSwK4paBQml0bWFwCuKWgWZyaWVuZGx5CuKWgXRydWx5CuKWgXN0cm9rZQpyb3BoCuKWgWVuZ2wK4paBY29mZgriloFkdXN0CuKWgUphaHJlcwpwcGkK4paBd3lzCmZhY3RvcgpzY2hsdXNzCuKWgdC00LXRgNC10LLQvdGPCuKWgVBhc3QK4paB0LTQvtC80LAKQ09NCuKWgXB1ZWRlbgriloFnaWZ0CuKWgUdsYQriloF0cmlnZ2VyZWQKw6lseQrDvGzDqXMK4paBT2xpdgriloF2ZXJzbwriloFsbGUK4paBR2xpCuKWgUx0ZApvYQriloF0ZXJyaXRvcmlvCm9yZHJlCuKWgWRlY2sKZHJhCmFzenQK4paBY29uY2VybmluZwriloFBZGRpdGlvbmFsbHkK4paBa3RlcsOpCuKWgWdydW5kCuKWgUdlc3QK4paBbWlzdW5kZXIKcHJldArilIDilIDilIDilIAK4paBcmVwdXRhdGlvbgp6aWEK4paB0YPRgdC/0LUK4paBZXNjYXBlZAriloFQcmFnCnBlcmZvcm0K4paBYXVzdHJhbAriloFWYXRlcgrRh9Cw0YEK4paBcmFjZXMK4paBQnl0ZQpNYXNrCuKWgVRlcnJpdArRgdGC0Y4K4paBVm9jaQriloFGaWNoaWVyCuKWgdCd0LDRgdC10LvQtdC90L3RjwriloFVbnRlcnNjaGVpZHVuZwp0ZWVudGgK4paBcGlsb3QK4paBamkK4paB0LTQstGD0YUK4paBb3JpZW50YXRpb24KaW5kcmUK4paBRG9ydArDp2FzCtC/0LvQuAriloFyZWFjdGlvbgriloFjb25zaXN0aW5nCuKWgWZlcnJvCtGC0LjRgdGC0LgKeWFyZAriloHRgdCy0ZYK4paBaW50ZXJwcmV0YXRpb24KacSFCnJhaAriloFmYW5kClB1YmxpYwriloF1bml2ZXJzZQriloFyZXRpcgriloFjb25zY2lvdXMKYXJxdQriloF3YXN0ZQriloFCaWIKeWNsZXJWaWV3CuKWgWxpc3RlbmluZwpnbGVpY2gKbmllanMK4paBY29ycmVsYXRpb24K4paBcmVjZWl2ZXIK4paB0YPQtNCwCuKWgWNvdXJhZ2UKdWNocwpmYXNzCuKWgWNodW5rCuKWgUFuZmFuZwriloFncm/Dn2VuCmNvbnRpbnVlCuKWgVdhcnN6YXdhCmjDqQppeQppdmVtZW50CuKWgc6xCuKWgWV4cG9zZWQK4paBemFobAriloFzYWNyCuKWgUxvb2tzCuKWgWVhZ2VyCmVudGVuCkN1cnNvcgovXwppeGEK0YDQtdC70LAK0LfQvdCw0YfQsAriloHRhNCw0LzQuNC70LjQtdC5CuKWgWFyZ2VudAriloFBbmRlcnMKxZN1dnJlCuKWgUlzYQrQvNC10L3RgtCwCuKWgWFkdmVycwpyaWN0aW9uCkdQCuKWgdC/0ZbRgdC70Y8K4paBcHJlc2VydmUK4paBR2FyZGVuClJhdGUKYXByw6hzCuKWgXJlYWRhYmxlCmluZHUK4paBc2tpbGwK4paBaGVscGluZwpvZ3JhcGhpcXVlCmNsaW5nCm9sb2dpc3QK4paBRmlsdGVyCuKWgWZpbmdlcgriloFWYWxsCuKWgVBvbGlzaApsZwriloFGYW1pbGllbgriloF3YXRlcnMK4paBcHNldWQKYXphCl8pCkFSWQriloHRgdGA0LXQtNC4CuKWgU11c3QK4paBQm9kCmFub24K4paBbGFkbwriloF0aWdodAppbWVuCmFwcGVuCmZyYW1lcwppbmdlcnMK4paBQ09WSUQK4paB0LfRlgriloHRgdCy0LUK4paB0YbRjAriloFMZWZ0Cl1dOwrRh9GMCtGE0LjQutCwCuKWgdGB0LvQvgriloHQv9GWCuKWgWV4aXN0ZQriloFBdGxhbnRpYwriloFtYWludGFpbmVkCuKWgWlycmUK4paBYW5uw6llCuKWgWNvbW1lbnRlZArQstC10YDQvgpiZXJ0YQriloFMYWQK4paBVXBvbgriloFwYXVzZQptaWxsCm9wdGVyClVLCtGA0LXRgQrQvdGG0LjQutC70L7Qv9C10LTQuAriloFhbG9uZ3NpZGUK4paBcm9ib3QK4paBZmVydAriloFtb3kK4paBYWRlCk1hcHBlcgopLT4KaWd1YQrDqXRpcXVlCtGC0LrQsAphbGlhcwriloHQvtGA0LgK4paBTWFnbgriloFnZWjDtnJ0ZQppbWIKKX17XAriloFXaWtpcMOpZGlhCuKWgXVycwriloFlbmRlCmxlYgriloFHQwpIb2wKYW5jaW5nClVuaW9uCuKWgXRlbsOtYQpUVAriloFlc3RhdGUKaMOhCuKWgdC/0L7Qu9GWCnVsdGFuCuKWgUhvY2tleQp1bHNlCuKWgWNob2ljZXMKc2NoZXIK4paBW10sCuKWgXBvdGVudGlhbGx5CuKWgcOcYmVycwriloFhZG1pdApDb21tZW50CtGB0YLRjwriloFWaWVuCuKWgdGG0ZYK4paBcGVybXV0CmNnaQriloFjcsOtdApDb25zb2xlCmN0aWMK4paBb2tyZXMKYXdrCmZvb3RiYWxsCm91ZXN0CkNUWVBFCm9sb2dpcXVlCuKWgWNvbnN0aXQK4paBaW50ZXJlc3RzCuKWgVByb2dyZXNzCuKWgU1lbnUK4paBdGFrw6kK4paBQXNpYW4K4paB0LfQsNGJ0LgK4paBeW91bmdlcgriloF3aXNoZWQK4paBU29ydAriloFhdWRpZW5jZQphbWJhCuKWgWdlaMO2cnQK4paBS2Fuc2FzCnlhdW1lCuKWgVByb2Zlc3Npb25hbArDomNlCuKWgWZhdHRvCnRvZAriloFkYXRhc2V0cwriloFmYXJlCuKWgXdhdmVzCn4vCuKWgW1lYXN1cmVtZW50CuKWgXdvbAppbmR1c3QK4paBc3RydWdnbGluZwriloFwdWxsZWQK4paBY2FyYXR0ZXIK4paBRXh0ZXJuZQriloHQtNC10LnRgdGC0LLQuApjbnQKbGljaGVzCuKWgVBvc3NpYmxlCuKWgWZhY2VkCuKWgWh5cG90aGVzaXMK4paBa2lsb20K4paBbsOkcgpib29sZWFuClBZCmFtcGEK4paBa2lzcwriloFhc3Rlcm8K4paBbmVnbGkKYW1lbnRzCuKWgVN0dQphdMOzCuKWgUNvbnN0aXR1dGlvbgriloFpbnRlcnBvbAriloFVbmFibGUK4paBcGlzCuKWgXBhcmMKIl0pCnBsZXIK4paBYXV0b3J5CuKWgWFsZ3Vub3MKeXduYQp9KSkK4paBZmFsbHMK4paBw6lxdWlwCuKWgWVtaXQK4paBcHJvZmlsCmdldHMK0YTQvgriloFNaWxpdGFyeQriloFub21icmV1eApvY3QKUmVwbGFjZQriloFzZWFzb25zCuKWgWNow6J0ZWF1CuKWgXR5cGVvZgpwb2xpdAriloFyYW5kCuKWgXF1YXIK4paBZXJzdG1hbHMK0YHQuNC90LgK4paBcGF5bG9hZArQn9C+CtC60ZbQvQpyZXBvCuKWgVBhdgpTY29yZQplcnZlcwriloFzb2xsdGUK4paB0LzRltC2CsOpYmVjCuKWgWNsaXAK4paBTmljZQriloFuZWJlbgriloFhc3Nhc3MKaXRvcmllcwriloF1bml0eQriloHQtdC9CuKWgUluc3RpdHV0CuKWgWludGVybmF0aW9uYWxlCuKWgdC90LDRg9C6CuKWgWNvbWFuZAriloFrbGVpbmUK4paBYWRqYWNlbnQK4paBZGVsaXZlcmVkCuKWgdGI0LUK0LfQtdC8CuKWgWNvdAp2aXN1YWwK0LLQsNC10YIK4paBQ2Vuc3VzClxfCuKWgXRlcnJpdG9yeQrRh9C40LsK0YfQvdGL0LUKZmx1dHRlcgpEaWRMb2FkCkRvY3VtZW50cwriloFkb2IKQnJlCmFuaW1hdGUK4paBYml6CuKWgWJhdGEK4paBU1UKZXNvCuKWgXByaW9yaXR5CnbDoW4KaXJhcwriloFjaGFyZ2VkCuKWgU1pY3JvCmF0b2lyZQrRh9C10YAKYWJhZAp1cnUK4paBdsWhCmRpcmUK4paBVHdpdHRlcgriloHQvNC10YLQvgopLi4K4paB0KbQtdC90YIK4paBZW50d2ljawriloFNaW5kCuKWgdGE0YPQvdC6CkZ1dHVyZQpsc3QKxYJvxbwKZmxpCnRlbnNvcgriloF0b3BvbG9neQriloFhcnRlCkVSVAriloF2YXJpYW5jZQpJbWFnZXMK4paBKEAKQXJyYXlMaXN0Ck9DCuKWgdCU0LXQvNC+CmF1Y291cAriloFkZW5vdGVzCmltb24K0ZrQuAriloFQcnp5cAriloFaYWcK4paB0LTQuNGA0LUK4paBU2ltaWxhcmx5CtCx0YDQvgriloFtaWxpdGFpcmUK4paB0YLQvtC80YMK4paBSm9obm55CuKWgdCc0LXQutGB0LjQutGDCtGb0LAKU3VwcAriloFqdW5pb3IKb2x0cmUK4paB0JzQvtGB0LoK4paBYWRtaXR0ZWQK4paBcmVsaWdpb3MK0LfRj9C5CtC10LPQvgriloF0ZWFycwppbmdvCm9kdQppdmVuZXNzCuKWgWxvZ28K4paBw7psdGltbwriloFhbGltZW50CuKWgVVJVGFibGVWaWV3CikhCuKWgW5qCmxldHRlCuKWgXJlc2lkZW50CuKWgXRlcm1pbmUK4paB0YPQttC1CuKWgdCh0YLQtQpvZmZpY2UK4paBY2FydGUK4paBbGl2cmUK4paB0JzQvtGB0LrQvtCyCuKWgWVsZWN0aW9ucwrQt9C40LTQtdC9ClRyaWdnZXIK4paBQmVuamFtaW4KYWRkQ2xhc3MK0YHQutC+0LMK4paBT2JzZXJ2YWJsZQpDbGEKZ2VtZWluCuKWgWNvbnNlbnQK0LLRgNC4CuKWgXVuZm9sZAriloFnb3Zlcm5vcgrQvdCw0LsK4paBdG9kYQpSZW1vdGUKYXJpYXMK4paBaW5zdGFsCmZpeGVkCuKWgWRlY2F5CuKWgdC00LXRgNC10LIKeHl6CuKWgURBVEUKaW1hcgpudGlsCuKWgXN0YXJ0dXAKYWxpb24K4paBa29sZWoKY2lvcwriloFyYW5nZXMK4paBc3R1cGlkCuKWgWltcGxlbWVudGF0aW9ucwriloFybQrDqW5lawriloFnY2MK4paBc2PDqG5lCk5hdmlnYXRpb24K4paBwqAK4paB0LrQsNC9CuKWgXRvd25zClVzZXJuYW1lCuKWgdGE0LUK4paBbGVhZGVycwpvaXQKd8OkcgriloFkdW1teQriloFhc3Npc3RhbnQKeyRcCtCx0ZbRgAriloFyb3kK4paBTGF5b3V0CuKWgUp1bmcKTGluZXMK4paBSG9sbGFuZArQv9C+0YAK4paB0JPRgNC4CuKWgUJlbmVkCuKWgdCf0L7QtAp4bHMK4paBR29sCuKWgUFsZWtzCuKWgWVqZW1wbG8K4paBc2V6b24KYXJkaW5nCmZvb3Rub3RlCuKWgUNvbmdyw6hzCnJlZmVyCtGB0LrQsNGC0LAKSXRlcmF0b3IK4paBb3Vyc2VsdmVzCuKWgU1pYwriloFjw7NkaWdvCuKWgdC/0LvQvtGJ0LAK4paBXCQK4paBQ2hhcmxpZQpOb2RlcwriloFwdXp6CuKWgUlkZW50aWZpZXIK4paBZmx1dHRlcgriloFwcsO8CuKWgW9ydAriloFDb3J0CmFzdGljc2VhcmNoCuKWgdCh0LLRjwriloFCdWxsCnVkZW0K4paBYXBwYXJlbnQKOi0tCuKWgdCl0LDRgAriloFMYXAK4paBY29tcG9ydAptYXRpY2FsbHkK4paBY3VyaW9zCuKWgdC80L7QttC10YIK4paBQmgKYXBwaW5nCuKWgWJhc2tldGJhbGwKemV0ZWsK4paBcnVudAriloFNaWxhbgpmZWN0aW9uCnLDrWEK4paBS2luCuKWgXNsb3dlcgpib3RoCuKWgUluc3RpdHV0bwriloFIaXN0b3JpY2FsCuKWgXLDs3duaWXFvAptYXRjaGVzCnljaQriloFlc3DDqGNlCuKWgVNjaHdlaXplcgpOVApTRgphY2lhCmZvcmdlClBvaW50cwpudW1iZXJzCuKWgWZhbGxpbmcK4paBaW5oZXJpdGFuY2UK4paBRXJzdAriloFjdXN0b21lcnMK4paBYWN0dQriloFtaWdyYXRpb24KXCcKUGxhbgpNcgpvdGh5CuKWgXVwZ3JhZArQsdC40YDQsAriloFPZmZpYwriloFXYWl0CuKWgXRvbGVyCmFyZG9uCuKWgXNsaWRlCilfCuKWgdGB0YLQsNCyCuKWgW51Y2xlYXIK4paBQmlsCm93bmVyCuKWgUhhcnJpcwpJbmZvcm1hdGlvbgriloFww7MK4paB0LLQutC70Y7Rh9CwCuKWgW51b3ZvCuKWgUNhdgriloFEZXNjcmkK4paB0LDQugrDs2R6dAriloFyZWFjdGpzCuKWgUFkYW1zCuKWgUFsdGVybmF0aXZlbHkK0YHRgtGA0YPQugopYCwKc3Vic3RyaW5nCuKWgW1hc3NpdmUK4paBaGVhdmlseQriloHRgdC10LfQvgriloFBbmEK4paBdmFsZQpQYWQK4paBRWl0aGVyCuKWgXJzCmFuY2hlCuKWgXVwbG9hZGVkCuKWgSgvCuKWgdGB0L/QvtGACuKWgXJlZHVjdGlvbgriloFUb2t5bwpncmVuCuKWgW1pZ2xpCuKWgWl0ZXJhdG9yCnN0YXYK4paBc3VwcG9ydGluZwriloHDtnN0ZXJyZWljaAriloFOU0xvZwppc3RpcXVlcwpyaW1pbgpNT0RFCn19fVwK4paBZXhwbG9zCtC+0YLQtQriloEo4oCeClNhbAriloFzaW1wbGVzdAriloFnacOgCuKWgdGC0LDQvQriloFjeWwKYmlyCuKWgW1lYXN1cmVtZW50cwpDcmVhdGVkCmVyZWsKbG9va3VwCndpcnRzY2hhZnQK4paB0JLQvtC70L4KdGltZXIKZGVycgriloHRgdGC0LDQu9CwCuKWgXNjZW5lcwriloFwZXJzdQpsaWVzdAriloFzY2hlZHVsZQp0YWwK0LvQtdC90L4K4paBcGFpbnRpbmcK4paBaW1wcm92ZW1lbnQKc29mdHdhcmUK4paBZ292ZXJubwriloFIaXIKRXhlY3V0aW9uCuKWgU9rYXkKUHJvcApsb3N0ZXIK0L3RltGG0LjQv9Cw0LvRlgriloFwZXV2ZW50Cm9sdQriloHQpNCwCnJvbGxvCuKWgdC60L7Qu9C+CuKWgWNhcnJpw6hyZQriloF0b2dnbGUK4paBKCRcCuKWgWFnZ3JlZ2F0ZQriloHQkdGWCnRleHRhcmVhCk9rCml0dG8K4paBc3RpbQriloFyZWN1cnNpb24K4paBRmVkZXJhdGlvbgopX3sKYXRlZ29yCuKWgWRpc3RyaWJ1CkNsb3VkCuKWgW1hZHJlCuKWgWl2CuKWgUxpZXV0ZW5hbnQK4paBc3Vic3RhbnQK4paBbGVhZgriloFLb250cm9sYQpWQQriloF0b21iCtGN0L0KYXRvZXMK4paBZ29kaW5lCuKWgSM+CkNlcnQK4paBZW1wcmVzYQpQcm9wcwriloFwbGFubmVkCuKWgXJhbmRvbWx5CmrDpGhyCmVsZW0K4paBT3BlcmF0aW9uCipgCnByb3RvY29sCigpKSk7CndlbAriloFwcmF3CuKWgdGB0LjQvAriloF3b2IK4paBaGFjZQriloFuZWFyZXN0CmRpc2FibGUK4paBQ29tbXVuCuKWgXJldmVsCkZyZWUK4paBYnJhY2tldHMKSU9FeGNlcHRpb24K4paBYWx0bwriloFtYXJyeQriloFhdWMKKSxcCuKWgXR5cG8KZWRhZAphcsOhCmljYXRvcgp0YXR5d25hCuKWgWJ1ZmYKb3JkZXJzCuKWgWFzeW5jaHJvbm91cwriloFlY29uCuKWgWZldQriloFJcm9uCuKWgXJpc2luZwpSYWRpdXMKY2xrCuKWgXp3ZWl0ZW4KYCcK4paBdW5pcXUK4paBRk0K4paBQnJhbgriloFmbHUK4paBc2Vuc2l0aXZlCnVycmUK4paBSXRlcgriloFTZWluCuKWgWRpZmVyZW50ZXMK4paB0L3QtdCz0L4KY2hpYQriloFBbmxlaXR1bmcKYXR1cmRheQriloFzaG9ydGVyCuKWgXRyYW5zbGF0ZWQK4paBUsOpcwriloFyb2RlCmRyYWcK4paBbGFuZ2UKQmkKw7xiCmxldXIK4paBb3JkZXJpbmcKYWxvdXMK4paB0JrQvtGACmFyY2hhcgpkZXN0cm95CmVydmF0aW9uCl1dLApBY2Nlc3NvckltcGwK4paBYXV0b3J5dGF0eXduYQpTZXF1ZW5jZQriloFwcm95ZWN0CuKWgWJyYW4K4paBKCsK4paBS2FiCuKWgXplbQriloFDYWxjdWwK4paBc2V1bAriloFOaWdlcgriloFjaGlhbQp0aHJvdwriloFQbGFuZXQKYmlsZHVuZwriloF6b25lcwp0cmFuc2l0aW9uCtC70LXQvdC40LkK4paBbWFwcGVkCm9uYXV0ClBhaXIKaWxpYW4K4paBTW9yZ2FuCuKWgXVudG8Kam91CuKWgWhpZAriloFNZXRhCuKWgWVsbGVzCkxvdQpyYW1hCmdlb3JkbmV0CuKWgXNjYXJjZWx5CuKWgW1pbnQKRm9jdXMK4paBQWx0ZXIK4paBZGlvCuKWgWFtcGwKacOocmVtZW50CuKWgdC40YHRgdC70LXQtNC+0LLQsApMRUQKYWxnb3JpdGhtCuKWgdGB0LDQudGC0ZYK4paBIiIpCkhpc3RvcnkKcGsK4paBV2hpdAriloHRgdC40YHRgtC10LwK4paBS2lyY2hlbgpyw6AKQVBQCuKWgTwlCmFudGluZQriloFEaXNrCmNvbnYKd2VsdAriloFGdXQK4paBTm9tCm9yZG8KZWxsaWoK4paBcmVjZWl2ZXMKY293Cnl0dQriloFvYnJhcwriloFwdXJjaGFzZQriloFlYXJuZWQK4paBYWNjZXNzZWQKYXhpCuKWgU1hbnMKaXZhbgriloF0dXZvCuKWgVRyYWNlCnJpbW9uaW8K4paBZGVzZW52b2wKw6lyaXF1ZQriloFyZXN1bHRlZAriloFjb21wdXRpbmcK4paBaW5zcGlyZWQK4paBUHJpemUKKiIKQ29tcHV0CuKWgWV4dGVuc2l2ZQrDqGcK4paBUG9ydMOhbHkK4paBY2FzdGxlCuKWgSouCuKWgXBob3RvcwriloF2b2V0Ck9ORwriloFBbGxlCuKWgXRocmVhdGVuCnN0w7x0CuKWgWFsYnVtcwriloFkZW5zZQpmbGF0CmNvbnRpbnUKU3ViamVjdAriloFyZWFkb25seQpPcHQK0L/QuNGB0LrQvgriloFBYmVyCuKWgVBvc2l0aW9uCuKWgVRvZGF5CuKWgW1pbmkK4paBQmVmCmxpc3RlbgrRgdGC0LLQtdC90L3QvtCz0L4KU1VCCm9zc2EK4paBUG9wZQriloFKaW1teQriloHQlNGA0YMKdW5nc3NlaXRlCuKWgXRyZW4Kb3B0aW0KaXRzY2gK4paBc2FtdAriloHQuNGB0L/QvtC7CiY9CuKWgVByenlwaXN5CuKWgdC/0YDQvtC00L7QuwpDcgplcm1hbm4K4paB0LzQsNGC0LXRgNC4CuKWgUh1Z28K4paBRGV6ZQpUUlVFCuKWgWRlZmVhdAriloF3YXRjaGVkCuKWgUdlbnQKQVVUCm9yb3VzCuKWgdC+0L/RgNC10LTQtQpvcmllbnRhdGlvbgriloFkaXN0aW5ndWlzaGVkCuKWgW1lc21vCuKWgXNsaQrQvNC10L3QsAptaXR0ZWwKZ2VyaWNodApldG9uCi0+ewriloF3b250CuKWgXdlZwriloFjbGFzc2lmaWMKaWx1cwriloFNRAp0YXNrcwriloFjaGltCmF3YWl0CuKWgWdhbmcK4paBd2nEmQp0aHJvdWdoCuKWgVJ1c3NlbGwK4paBZ3Vlc3NpbmcK4paB0LDQutGCCtCx0LvRlgpjYXRlZ29yaWVzCtGB0YPRggriloFGZW4K4paB0LzRg9C2CuKWgW5ld2VyCuKWgUFzeW5jCuKWgXRlcm1lCj4vCtC/0LDRgNCwCuKWgVRydXN0CuKWgU9wdAriloFkYWgK4paBd29uZGVyZnVsCmFkcmF0a2lsCuKWgdCT0YDQsAptYXBwaW5nCuKWgWRpc2NvdmVyeQriloFCRQpFbmFibGUK4paBRnJpZW5kCtGB0L3RjwriloFjb250cm9sbGVkCtGH0L3QvtGXCuKWgWNvbnRyaWJ1dGlvbnMKasWhw60K4paBTGV2CuKWgWZyYW5jw6lzCuKWgW1pYwp6aWsK4paBYWxlbQpjYW5jZWwKIScK4paBZ3JhdAriloFCZWdyaWZmc2tsw6RyCkNhbWVyYQppZmljYWNpw7NuCnLDs2QK4paBQXJub2xkCuKWgWJlemVpY2huZXRlcgriloFmb3VnaHQK4paBZGVwdXQK4paBRHJvcAp0YXgKZGcK4paBSG9wCkdOCuKWgUtpcmNoCuKWgdCR0LDRgApJbnZva2UK4paBZXJoYWx0ZW4K4paBdmVlbAriloF3b3JkcHJlc3MK4paBSU5ORVIKdHJhbnNhY3Rpb24K4paBZMOpasOgCkZhY3QK4paB0L3QsNC00LzQvtGACuKWgWFuZ3VsYXJqcwriloHDoXQK4paBYWxhcAriloFQcmljZQriloFlZmZldAriloFzcGhlcmUKQ2xhc3NMb2FkZXIK4paBcnVnYnkK4paBa2luZ2RvbQriloFNdXQK4paB0LrQuNC90L4K4paBcmV3YXJkCmNpdAriloFwcmVzZW50ZQpTdG8KQ2hhcmFjdGVyCmxvZ3MK4paBY2VudHJhbGUK4paBbW91dgriloFva2F5CuKWgWFwbGljCk1vcmUKw6lueWVrCuKWgUvDtmxuCm5ldHQK4paB0LjRgdGC0L7RgNC40LgK4paBZGVzY3JpYmluZwriloFzb2xkaWVyCuKWgU5lZWQKTGlnaHQK4paBIlw8CuKWgWhhdgplcm1vCuKWgWluZmVyaW9yCmxlYQriloFnZwriloHQutC+0L3RhtC1CmZyYWdtZW50CnNiCkNvdW50cnkK4paBdsSbCuKWgUJlbmcK4paB0K3RgtC+CuKWgdCy0L7QtNC+CtC80LDRgApTVFJJTkcK4paBw7pqCm11bHRpcGxlCnN0YXRlbWVudAriloFpbnZvbHZlcwriloF0ZWNuClN0dWRlbnQKZ3LDqQriloFsZWFuCuKWgWJyaW5naW5nCuKWgU1lZGljYWwK4paB0L/RgNC+0LPRgNCw0LwK4paBVm9nCuKWgdC20L7QsgriloFTcGlyaXQKbnRoCuKWgXN0YW5kYXJkcwriloFQcm9maWxlCuKWgWV6CuKWgdGC0LXRgNGA0LjRgtC+0YDQuNC4CuKWgXN0ZW0KdWlsCuKWgU9nCkJ0bgpuYWwK4paBbmVhcmJ5CuKWgXByb2R1Y2luZwpjcml2CuKWgWFzc3VtcHRpb25zCuKWgVNwYXJrCuKWgUxvdAppdHVkZXMKYWZrYQpmaXZlCmF0aW8K4paBZGlzdGluZ3Vpc2gKcm9jawrDqWdsaXNlCuKWgXJhcHByZXMKPlw8CtC70ZbQuQriloHQvNC40L3QuAriloFpbnRpdHVsw6kKfX0oXAriloFSb3V0CuKWgUJvcmRlcgriloFvdmVycmlkCkhPU1QKcml0dGVuCnNheQriloHQp9C4CmljaHR1bmcK4paBc3RyYWlnaHRmb3J3YXJkCm9iYgriloFUZXJyYQriloFbOgpCZW4K4paBY29tcG9zaXRlCikrXAriloFjcm93bgpkaXJlY3Rpb24K4paB0L3QtdGB0LrQvtC70YzQutC+CuKWgWF2YWlsCuKWgXB1cmNoYXNlZApob29rCmV0aWVzCuKWgWZhc2UK4paBUnVtCuKWgWdlbm9tCuKWgWTDqXQKb3fEhQptcGVnCuKWgdCG0L0KZGVza3RvcAriloFpbmplY3Rpb24KYWdsZQriloFFZGQKX3soCuKWgUhlbQp1dG9zCnByb2oK4paBc3VwZXJmaWNpZQpQbG90CuKWgURvY2tlcgrDpHR6CmtyZWljaAriloF1bmNsZWFyCuKWgVVuaXR5CuKWgXN0cmVhbXMK0LLQuNC0CuKWgXNpbXBsaWZpZWQKRmlsbAriloFzYW50CuKWgUtvbW11bgriloFkdWMK4paB0LTQstC1CuKWgW9icwrFvml0CuKWgUphbmVpcm8K0LHRjwriloFwcmVzc28K4paBTWluaXN0cnkK4paBYnVyc3QK4paBcmVhY2hpbmcKbGl0ZXIK4paBcmVzcG9uc2VzCuKWgUV1ZwriloFzb2QK4paBQ29yZAriloFQZXJtCnBhcnRzCtGG0LjQvNCwCnZhcmlhYmxlcwriloFmb3Jnb3R0ZW4KRmVybgpvc3TEmXAKdmwK4paB0KHQvApraW0KYWrEhWMK0L3QsNC70YwK0LPQu9C1CmhlbHBlcgpkdXAKZXV3CmZyYQplbGxpdGUKYW55YQriloFyZWlnbgpnZXNhbXQK0YHQtdC00LAK4paBUnlhbgriloFmb3JtYXR0ZWQK4paBQm9yZwp3YWxrCuKWgdCw0LsKYWdub3N0aWNzCuKWgUNhcGUK4paBRnJhbmNvCuKWgWZ1Zwo6KQrRjtC3CkZldGNoCuKWgXJvdWdobHkK4paBTWlzCnVldG9vdGgK4paBVmVuZXp1ZWxhCuKWgWFzdHJvbm9tCiIpYApvbWJyZXMK4paB0LrQvtGC0L7RgNC+0LkKw7NwCm93ZWQKSFIK4paBQ2FtZXIK0LrQuNC1CnBhcmlzb24K4paBQmlqCnRlbXBsYXRlcwplbnZpcm9ubWVudAppemHDp8OjbwriloHDqXIK4paBcGxlbnR5CuKWgVR5cGVFcnJvcgriloFmb3J0eQrQutC+0L3QvtC8CuKWgVNlZAriloF0aGF0cwriloFncmF2aXR5CuKWgXNwaXJpdHVhbAriloFkdXBsaWNhdGVzCuKWgWVuY3J5cHRpb24K4paBcmV2ZW4KZ2V0SW5zdGFuY2UKw6RsbG9yCmRpc2sK4paBdGhybwriloFOYWsK4paBcG/FggriloFoZXJhdXMKaW52YWxpZApzQnkKQm9vdAriloFidWNrZXQK4paBUGFyc2UKaGV4CkNvbm5lCuKWgUNvbXB1dGVyCnp5awriloFpbmR1Y2VkCuKWgUJydW5vCuKWgWFkZHJlc3NlZAptYW5pYQriloFpbmNsdXMKb3VuY2VkCnNjcmlwdHNpemUK4paBRXBpcwriloF2b2NhbAriloFKb25hdGhhbgrRg9C8CnN0YWRlbgriloFDaGlsZHJlbgrQv9C10LkKSXRhbGlhCnJlaWJ1bmcK4paBbm9zdAriloHQtdGJ0ZEK4paBV2Vya2UK4paBYWN0cmVzcwriloFNaW5uZXNvdGEKcmlrZQriloF0ZWsK4paBcHJpbWVpcmEK4paBZnJhdAriloFDb25maWd1cmF0aW9uCuKWgWJpZAp0cmlnZ2VyCkNvbnRlbnRzCuKWgWNvbnN0YW50bHkKISEhCuKWgWRyZWFkCuKWgWh1bmRyZWRzCmlzdGlzY2hlCuKWgWNhcmRpbmFsClRBQkxFCuKWgWVzdG9zCmFzc29jCmdyYXkK4paBU2NobG9zcwriloFzY2hlCmNvbmcK4paBa29qaQrDqHRlcwriloFFcmEKb21pCuKWgVNSCuKWgXdyYXBwZWQK4paBdHJ1bmMK4paBYWgKZWdvcwpva2kKbW91dGgKbG9nZ2luZwriloFmYXNjCuKWgVNhbXBsZQriloFjb250ZQriloF2aWxsYQpjb21tZW50cwriloFiYXRhbAriloFHYXJjw61hCuKWgU5vcnRlCuKWgXdlY2hzZWwK4paBTXVzZW8K4paBZW5mYW50cwriloF3aGlzcGVyCm5ha2UK4paBamVkbmFrCmzDqnMKZW5kZXJzCuKWgcOkbAriloFWQgriloFjb29raWVzCnpldGkKYXR1bQriloFkZWR1CuKWgWFycmFuZ2VkCmxhegriloFjdWVudGEKeW1sCuKWgWZsYXYKTVIKZW1ldArQsdGW0LvRjApjbXAKaXR1dG8KemV0dAriloFlbnZpCuKWgWtvdAokOgp1cHBlcgriloFBbGJlcnRvCmtiCkFuYWwKw7ZydAriloFbLQriloFmw7xocnRlCmlhaAriloFUdW4K4paB0LjRgdC60YPRgQp1d2UKaXNwZWNpZXMKUHViClN5bmMK4paBQ29sb21iaWEKYWtlcnMK4paBSW1wZXJpYWwKb3ZpbmcK4paBaW50ZWxsaWdlbmNlCuKWgWVxdWlwbWVudAplaW4KZGFnZ2VyCuKWgUVkZ2UK4paB0KDQtdGB0L/Rg9Cx0LvQuAphZHJhdGtpbG9tZXRlcgriloFBbnRvCuKWgWNoYXJnZXMK4paBT2NlYW4K4paBc2ltcGxpZnkK4paBbWllc3oKcnVubmluZwriloFMYWMKZ2Vub21tZW4K4paBcmVwcmVzZW50YXRpdmUKPS4K4paBUHJlZAriloFzcGl0ZQpjaWFsZQriloFuYXZlCuKWgWV4dGVucwriloFuZXV0cmFsCuKWgdC60L7RgtC+0YDQsNGPCi48LwriloFDUwp1a3kK4paBd2hpbHN0CuKWgWxpbmd1CmV4dHJhY3QKemVpY2hudW5nCuKWgUZlbGQK4paBdmFsdWFibGUKdXJhYmxlCuKWgUplbgriloFzdHJ1Z2dsZQriloFjb21taXR0ZWUK4paBV29obgriloFzcWxpdGUK4paBVGVtcAriloFDT1VOVApjb25zaW4K0LzRltC90ZYKdXNhZ2UK4paBcXVlc3QK0LTRj9C9CmVhcmVkCuKWgVNjaG5lCuKWgWRvZAriloFyZWNodAriloFrYW8KQ2FwdApsYWJlbHMK4paBZWxsb3MK4paBaW5kdXN0cmkK4paBQ29sb3JhZG8K4paBY29udHJhcnkK4paBRHVtCkJlbAriloFWZW50CuKWgWF1dGhvcml0aWVzCllFUwplbnNlZAp1bWJuYWlsCml6emF6aW9uZQprb3UKcmljYQriloFzZWN0CnRlc3RzCuKWgUtsZWluCuKWgWxlZ3MK4paBUGlldHJvCmZ1CnRoeQriloFiYXN0CuKWgXRlZGVzCmV0dGVzCuKWgXJlcGV0CmFjcmUKcmV0dG8K4paBcmVtYWluZGVyCuKWgUdlZwriloHQk9C+0YAK4paBUmVjaHRzCuKWgWZpbHRlcmluZwpvdXNzCuKWgWRlcGxveWVkCuKWgXByw7xmZQriloFiaXRtYXAK4paBc292aQriloE8JT0K4paBZW50ZmVybmUKa2lsbAp0YWJzCkV4cHIK0LrQvtC80YMK4paBUmVwdWJsaWNhbgriloFTaXplCuKWgXBvbGwK4paBcmllbgriloHQutC70YPQsQrDqW5kCuKWgUJpbwriloFwZXJsCuKWgUFuZHJlYXMK0LLQuNC9CuKWgWRpc3RhbnQK4paBRmlubgriloFNaXRjaAriloElewriloFjaGFybQriloFNdWwKcGVyYXRlCuKWgXNjaWVuY2VzCuKWgW1vbm90CuKWgWRlYmlkbwpyaXpvbmEKaWVjCuKWgWFsYXJtCuKWgXByb21vdGVkCuKWgWxldHp0ZW4KYXRpbgriloFjb25jbHVzCmhlcnIK4paBw6ljaAplZGlzaApnb3IK4paBc3R5Y3oK4paBaW1wcmVzcwpydWl0cwppZXJ1bmdzCuKWgXBhcnNlZAriloFyw61vCuKWgVBha2lzdGFuCmlnbmVyCuKWgXdhdGNoaW5nCuKWgWRhdGFiYXNlcwplZGluZwriloFTcGVjaWZpYwriloFnZW5lcmFsZQpsYXgK4paBTG9va2luZwriloFib25kCuKWgXZpc3RhCuKWgWVjCuKWgWdydWQK4paBZGVsZXRpbmcKdGFjCuKWgWphenoKam0K4paBcMOzxYIKTGFuZ3VhZ2UKZGVsZWdhdGUK4paBcmVnaXN0cnkK4paBU2hhcmVkCtGB0YLRgNC+0LkKTXVzaWMK4paBdmVzc2VsCi5ACuKWgVfDvHIK4paBZmVkCuKWgWVyZWRldAriloFHw7YKdXB0CuKWgXBsZWFzYW50CuKWgXRhYmxlVmlldwriloFjb3VudGluZwriloFLcmllZ3MK4paB0L/QvtC70YPRh9C40LsK4paBXSwK0LLQuNCwCuKWgWHFvgpUb0xpc3QK4paBQWR2ZW50CuKWgXNrZXRjaApwbgriloFzaWVyCuKWgdC90LDRhdC+0LTQuNGC0YHRjwppb3AK4paBbHkK4paBU2NobApDb250cmFjdAphc3NvY2kK4paBUGVhcgriloF3aGUK4paBRGVsZXRlCuKWgWVsZW0Kw6R0dGUK4paBxI1lc2sK4paBTUMK4paBc2hvdXQKYWtlc3BlCuKWgWRlZmF1bHRzCnBlbmFzCsOycmlhCuKWgWhpZXJhcmNoeQppcHQK4paBRWxpcwpsaWtlbHkKUm90CuKWgWNvdwriloFzdHJpa2UK4paB0LHQtdGA0LXQt9C90Y8K4paBZW5zZW1ibGUK4paBUHNldWQKVmlydHVhbAriloHRl9GXClJPT1QK0YHQuNGPCuKWgdGB0L7QsQriloFpbnZlcnQK4paBc3dpdGNoaW5nCmh0YWNjZXNzCuKWgdC90LDQs9GA0LAK4paBTm9ybWFuCuKWgWluZ2zDqnMKIVsKb3VzZWwKRE9DVFlQRQriloFzdXBwcmVzcwriloFhY2NvbXBhbmllZAriloFCw6kKaW1wbGllcwpudXQK4paBU3ludGF4CmluaG8K4paBdGFtCuKWgWZvY3VzZWQKYXZhbm8K4paBQmFkZW4KaGFkCuKWgSh7ClR5CuKWgdGA0L7RgQriloHRh9C+0LvQvtCy0ZYKb2dlCmpzcApCbHVlCuKWgXN1YXMKYXBlcnMKU2hvcnQKUmVuZGVyZXIK4paBc2VuZG8K4paBQ2VjCuKWgWBfXwriloFNdW5pY2lwYWwKZG90bmV0CuKWgWJldgriloFEQQpNZW51SXRlbQriloFhbXAK4paBdXJpCuKWgWZpZXIK0YHQu9C10L0KKSwoCmN1bGVzCmlsbGFzCkxPQ0sK4paBZGVyaXZlCnViZW4K4paBR1QK4paBTWFjawriloFzY2hvbGFyCil9fQrQt9C8Cj46OgrRiNGR0LsK4paBcHJpbmNpcGFsZXMK4paB0YbQsNGACuKWgXRpZWQK4paBYWx0YQriloFDaXQKbGluZWQKbWFqb3IK4paBcHVuawriloFjaW5jbwppY2vDvQriloFyYWdnaQp0eXBlbgrRgtC10LvRjNGB0YLQstC+CuKWgWNvbmZlcmVuY2UK4paB0YHRltC70YwK4paBaGV1dAppxaEK0LXRgtCwCnZlbG9wZQpoYm94Cm5vd24K4paBemFyCmt0aXYKaWXDnwriloHRgdGC0YDQtQriloFFdmVudEFyZ3MK4paBSXJhCuKWgVZCQQriloFTYW50bwriloFGYWNoCuKWgUZGCuKWgVJheW1vbmQK0LzQtdGGCmltcGxlbWVudGF0aW9uCuKWgWJyb3RoZXJzCuKWgWPDtHTDqQriloFjb250cm9sbGVycwriloFDbGUK4paBY2FibGUK4paBY29uZmVyCuKWgXstCuKWgWN6xYIK4paBRmlsaXAKYXRvcmlvCuKWgXdpY2h0CuKWgWJlYXVjb3VwCuKWgUxpdAriloFzZXNzaW9ucwriloFTdWNjZXNzCuKWgXJvdXRpbmcKbml1CuKWgVZpY2UK4paBa3JpdAp1cGRhdGVkCuKWgUludmFsaWQK4paBTWFubnNjaGFmdAriloFhb3MK4paBdHVkaQriloFkZXNwcsOpcwpxdWEKQ29udGFpbnMKQ29tcGFueQriloFwZXJzb25hCmFkYXB0ZXIK0YHQvdC4CuKWgXZvagriloFlc2NyaQphZ3QK4paB0YHRgtCy0L4K4paBZGlzdHJpdG8KYXBhbgriloFhc3BlY3RzCuKWgXphbAopXntcCuKWgXN5c3TDqG1lCuKWgdCw0L3QsAppdW1zCuKWgXByZW1pZXJzCuKWgdC/0L7RjQriloFtw6hyZQriloFHdW4KYXBpbmcK4paBUmFpbgriloFpZ3VhbAriloFwcm9jZXNzb3IKJylgCmJsaW5nCuKWgW1pc20KYnLDoXoK4paBY2xvc2VzdAriloFSZWFkaW5nCuKWgdC/0L7Qv9GDCmNvbm8K4paBa3VsdAriloEhIQriloFFeHByZXNzaW9uCuKWgWluZHVjdGlvbgphaHJlbgriloFjcAriloF2aW9sZW5jZQppZW50w60KY2VudGUK4paBRG9iCmphY2sKc29uZwpidWNrZXQK4paBZGVwb3J0CtC60LjQvNC4CmxtCuKWgWlubm9jCkNoYW5nZXMK4paBcHJvaGliCmFuZ29sCmlzZWNvbmRzCuKWgdC/0L7RgAriloFoaXAK4paBcMWvCmVuZG9yZgriloFzY2hlZHVsZWQK4paBRmx1ZwphY3lqCuKWgUZpbG1zCmF0aGVkcmFsClBvd2VyCmFyZGluCmthcAppY2tlbgpyZXNpemUKZXVzCnJyCtC70Y/QvQriloFIYXYK4paBb3JhCkZST00K0LvQvtGB0Y8K4paBdGVydWcK4paBV2lkdGgK4paBYWNjZXB0cwrQsdC10L0K4paBbWljaAriloFDemVjaAriloFCZWRldXQK4paB0LLQuNC0CsO0bWUK4paBTG9vcApzcGVjdArDvGsKZXN0b24K4paBc2xvdAriloF6b3N0YcWCYQriloFDaGFybG90dGUK4paB0YHQvtGB0YLQsNCy0LvRj9C10YIK4paBUHJvbWlzZQriloFlcG8K4paBZGljdGlvbgriloFGcmFua2xpbgriloFSaXYK0YDRg9CzCmNpZGEK4paBRXhwbG9yZXIKY29va2llCuKWgWZvcm1lcmx5CuKWgW11bmljaXBhbGl0eQriloFTdGVmYW4KbGlzdHMKQ09NUApMZW4K4paBU3RhYXQK4paBTkJBCmRlbnMK4paBb3NjaWxsCiEuCuKWgVBPCsO0bmUKZXNlcwriloHQvdCw0YbQuNC+0L3QsNC70YwKdm9vcgriloHQutC+0L/QuAriloHQv9C+0LfQuAp1bHUKQ29uc3RyYWludAriloHRgdCy0L7QtdC5CuKWgWFsZ2VicmFpYwrRh9C90Y8KRGljdAriloFhcHBlYXJpbmcK4paBcHJhdgriloFVbml2ZXJzYWwKQnJvd3NlcgriloFTaW5nYXAKZW5uZXNzZWUKXV8K4paBU29mCuKWgUNhZApvdW5jZQriloFjb3N0cwpde1wKLi4vLi4vCtGB0YzQutGW0LkKw7xobAppZXR5CtC/0YAK4paBaW50ZXJwcmV0ZWQKYWpuCmNvbG9nCllTCm1hbnMK4paBbWV0cmljcwriloFyZWdpc3RyCmlzdGFuY2UK4paB0J/QvtC70YwK4paBYW5vbnltb3VzCuKWgWluc3RpdHV0aW9ucwriloF6ZG9iCnByw7xuZwriloHQsNGA0YLQuAriloFlc3RhdAphY2NpCuKWgWFjYWRlbWljCuKWgWNoaWVzYQriloFHaWFuCmNvbnRyaWIKdW1lZAriloFHaXIK4paBYmFzZWJhbGwKbnVtZXJpYwpHZW5lcmF0b3IKR00K4paBdGlueQriloFkaXN0aW5jdGlvbgrQs9C10YAK4paBcnVzdAriloFGSUZBCuKWgVByb3BlcnRpZXMKXi0K4paB0Y3QutGBCuKWgVN0YW5pcwriloFBamF4CmVzY2FwZQriloFjb25zcAriloFDaGVuCuKWgU5hdmFsCkJpdAriloFiw6J0CtGB0LrQuNC80LgKZHJpdmUK4paBUm91bmQKcGhvdG8K4paBTGV2ZWwK4paBZ2VnClRvbQriloFNb2JpbGUK4paBVHJvcApEaXJlY3Rpb24KaXNhbgopXnstCuKWgVNldHRpbmcK4paBUHJvYmFibHkK0LvRjNGPCuKWgWFzc2V0cwriloFhdHRlCuKWgWJ1bGsKw6lzdAriloF3aW5nCm5pdXMK4paBd2lucwriloFsdWQKdXNoaW5nCuKWgWRldmVuCtC+0LPRgNCw0YQKYnVyZ2VyCuKWgWVtYmFyCkZpbHRlckNoYWluCuKWgXR1bQriloHDtnNzCuKWgW5vbW3DqQriloFwaXIK4paBbHVjCmRibwphZ3VlcwriloFhbGNhbgpvdXdlbgriloFTdGFubGV5CtGG0LjQsNC70LgK4paBZ3Jvd24K4paBcHJlc2VydmVkCuKWgXNvbGFyCuKWgdCd0LDRgdC10LvQtdC90LjQtQriloFwZXJmb3JtYW5jZXMK4paBQ293CuKWgWVuZ2luZWVyaW5nCuKWgXNjYWxpbmcKYXRvbWljCmVuZGFuY2UK4paBYWNlCsOkbmdlbgpBbmltCnBoYXNlCnpidXJnCk9sZAriloFzZXJ2YW50CuKWgWdlbWVpbnMK4paBT2JzZXJ2CnRyYW5zbGF0ZQriloFjb3ZlcmluZwriloFlc3TDoW4K4paBcHJvYmxlbWEK4paB0YPRgdGC0LDQvdC+0LIK4paBbGxldgriloFjemVydwrDqWFsCm1legpSRUUKRVJSCtGC0YPRgNC4CnNlZ3UK4paBcHJvZml0CuKWgW11bHRpcGxpY2F0aW9uCmtvbW1lbgriloFmYXV0CuKWgWNhbmRpZGF0ZXMK4paBVXJpCuKWgUxhdXJhCuKWgXNhcAriloHQstC40YHQuNC90LgK4paBQmV0d2VlbgpmYWRlCuKWgXJlc2VydmVkCuKWgWludm9sdmluZwriloFNYXJlCuKWgUNvbnRhaW5lcgriloHQvdCw0LfQvdCwCuKWgURFQlVHCuKWgWh1cnQK4paBUG9sc2tpCuKWgWx1eApDQgp3YWNoCuKWgdC/0LXRgNC40L7QtAriloFDYXRoZXJpbmUK4paBZ2Fuegp1Y2h0ZQriloFjb25zdW1lcgriloFjcm9zc2VkCm9yZGVyZWQKYXdheQp0ZWNobgriloFzdWJzY3JpCuKWgXNob3J0Y3V0CuKWgdC/0YDQvtC40LfQstC+0LQK4paBc2ltdWx0YW5lb3VzbHkK4paBcmF0aW5nCuKWgUtpbmdzCuKWgXJlbGF0aW9uc2hpcHMK4paBU2V4CuKWgVRvb2wKYWdoCmFjdGVycwpsb2dnZXIKaG9tbWUKZW5nZXJzCuKWgVJpCmVhcmFuY2UK4paBYXBwZWFyYW5jZXMKUmVhbAriloFwYXNzZQppY2xvcGVkaWEK0YfQutC+CnRlcnJlCuKWgU9udGFyaW8K4paB0L/QtdGA0LXQtNCwCmZvb3RlcgphcmNoaXZpCmlmaXoK4paBUHJvdGVzdAriloFMSU4KdW5uYWJsZQriloFjZW50dXJpZXMK4paBQmF5ZXIK0YbRltGOCtC+0LLQuNC9CuKWgUFuZHJlYQpzZWxlY3Rpb24K4paBY2FsbQriloFtb2RpZmljYXRpb24K4paBc2hvcnRseQppbmFpcmUK4paBZnVzaW9uCuKWgWZlZWxpbmdzClBLCuKWgVJvYmVydG8K0LPQvdC1ClNoYXJlZAriloFtZWhyZXJlCuKWgU5pZW0Kb21wCkVudgriloFBcnRpY2xlCuKWgVBvawriloFWQVJDSEFSCuKWgWRpbAriloFhZmZvcmQK4paBY29uZnJvbnQKb3dhbmllCuKWgW1pbmlzdHJlCmFkZXNoCuKWgVBvbHkK4paB0KDQsNGB0L/QvgriloFHcnVwcGUK4paBSGVsZW4K4paBY2MK4paBcG9ydHJhaXQKYmV3CuKWgWJldGEK4paBV2lyCuKWgUF1ZGlvCuKWgShcPApyaW9yaXR5CuKWgW5pdAriloHQv9GA0LXQtNGB0YLQsNCy0LgK4paBVmllCuKWgXfDvHIK4paBSG9sZAriloFTYWQK4paBVG9jaHRlcgriloFvbHRyZQriloFBY3RpdgriloFKYXNvbgriloF3aWVrdQriloFyZWdhcmRzCuKWgXRhc3RlCmFnbm9zdGljCtC70LDRgdGPCuKWgVNlbGYK4paBYXByCuKWgURlZXAKc2NvcApBY3RpdgriloF0eXBlZGVmCkNvbnRlbnRWaWV3CmNvbXBpbGVyCuKWgVJvdGgKeGMK0LfQuNC6CuKWgWxhcmdvCuKWgVJlbmEKaGVpdGVuCuKWgXBsYXRmb3Jtcwp1bGxhCuKWgWdsYW5jZQriloFtYXNjdWwK4paBbWV4CuKWgUpvcmdlCuKWgWZ1bmNpb24KY2hvb3NlCuKWgXJldmlld3MK4paBQWxiYW4K4paBR2xvCuKWgVNwZWNpZXMK4paBRmFtZQriloFSb2xsCuKWgVB1ZXJ0bwriloFcKQp5bW5hcwplbnZpcm9uCuKWgWlwaG9uZQriloFXcmVzdGxpbmcKYcWCeQriloFJbmRpYW5hClJhZGlvClZTCuKWgWluZGVwZW5kZW5jZQrRgtCw0LkK4paBZGVjb2RlCldoaXRlCuKWgWpvdXJuCsOtY3VsbwriloFCYXJiCuKWgUV2YW5nZWwK4paBQW5keQriloFXZWxjb21lCuKWgURldmljZQpnZWYK4paBcmVtZW1iZXJlZAriloF2YXJpYXRpb25zCuKWgUFkb2xmCml0YWluZQriloHQvdCw0LTQvNC+0YDRgdC60L7RmAriloFzdGVhbQriloFjb25jZXJucwriloFgfAriloHQsdC40L4K0YLQtdC70YzRgdGC0LLQsAriloFxdWF0dHJvCmV4dGVuZAriloF0cmFiYWpvCmVuYmVyZwriloFzY2VuYXJpb3MKw6JudAriloFrb21tdAriloFkb21lc3RpYwriloFCYXNrZXRiYWxsCuKWgUNvb3Blcgpzb2NrCtC00LXRgNC20LAKPXtcCuKWgWluaWNpCuKWgVBoaWxsCuKWgdCz0LXQvdC10YDQsNC7CmFyY2hpdmlhdG8K0YrQvQpSb2IK4paBdG9uZwriloFjaGFyYWN0ZXJpc3RpY3MK4paBYW1hegriloFNb2RlCuKWgWluYXVndXIKd2VocgpyYW50CmlvbmFsaQriloFNb3RoZXIKTWEKw6lxdQriloFLZWxseQpjaWxlCuKWgWJlc3RlaHQK4paBZXN0aW1hdGVzCnJ1Z3VheQriloFBbnMKTWFkCuKWgdC90LDQsgriloFkb25uw6llcwriloF0cm9waWNhbAriloFTZXZlcmFsCmVsdGVyCuKWgVBobwprZW0K4paBQ3VzdG9tZXIK4paB0YHQutC70LDQtNGWCuKWgWNvdXJzZXMKUGxhdGZvcm0KbmF2YmFyCmxlYXJuaW5nCuKWgVN3ZWRpc2gK4paBemFzdAriloFMaWcKbWFuYWdlbWVudAriloFsb2QKdWZmbGUKVGV4dHVyZQphcmdhCsOhdHVtCuKWgUREUgrQvdGW0ZcK4paBU29jacOpdMOpCuKWgWRvbWFpbnMK4paBcGVybWl0dGVkCuKWgWV4dGVybmUK4paBcXVlbHF1ZQp2dAp5bWFuCuKWgVdhcmQK4paBYWdsaQriloFhbmRyYQpTbmFwc2hvdAriloFtw6UK4paBeWVhaArQtNC10L3QsArEmXB1CmFza2VsbAriloFSw6lwdWJsaXF1ZQppbmplY3QK4paBJzsKw6RubgriloF6ZWxmCuKWgUVudHdpY2tsdW5nCsOhcmlhCm9ub215CuKWgXN2aWwKaWVzZQriloFjb25zZXIK4paBbmltCuKWgXLDqXN6CuKWgdCY0YLQsNC70LgK4paBcGFydGljaQriloFMaW9uCnNyCmFsd2F5cwriloHQktC70LDQtNC40LzQuNGACtGH0LXRgdC60LjQtQpbLAriloFEZWZpbml0aW9uCm5hbnQKb2VtCklkcwriloHQstC90LUK4paBWy4uLl0K4paB0L3QsNC/0YDQsNCyCuKWgUdPCuKWgcOlcnMK4paBdXTDoW4K4paBb3V0cm9zCuKWgXJlZ2nDs24K4paBTW9uZwriloFmaWxtZQriloF0cmlwbGUK4paBc3BvbnMKRGV2ZWxvcAriloFvdXRjb21lCuKWgUJpYmxlCuKWgdC40LzQtdC90LgKQ2FudmFzCtC/0YPRgtCwCmN1cnIKw6Fzb2sKKXtcCm5pbmdhcgpgOwriloFGbGFzaAo6IwptdXN0CmNwdQriloFmb3JtYXRzCkhhcgriloFlcGlzb2RpbwriloFSb3NhCuKWgWTDqHMKZW1pdApyaXRlcmlhCkFubm90YXRpb24KRmxhZwpnbWFpbAriloFOb3JtYWwKb2xsYXJ5CuKWgWZvc3MK4paBY29uY3VycmVudAriloFjcmFzaGVzCuKWgdCy0LjQtNC1CuKWgU1pbm9yCuKWgVNpdAriloFTTgriloFzY2FyCuKWgWZlbWluCuKWgXNwZWNpZmljYXRpb24Kc29hcAriloFvcGVyYXRlCuKWgXByaW5jaXBhbG1lbnRlCuKWgWF1c3QKaWJpbGUKaXRpbWUK0LvQtdC20LAKaWZyYW1lCuKWgWNvbmNlcHRzCuKWgXRhY2sK4paBdmlzcwriloFjYXJib24KdGVyeQriloFuYW1pbmcK4paBT3J0cwppZGVudGUK4paBQ2FwaXQK4paBZXhwcgriloHQvdCw0YHQtdGZ0YMK4paBU2VsZWN0ZWQK4paBaGludGVyCuKWgWlmcmFtZQriloF6YgppbmRleFBhdGgKY29sbAriloF3cnplxZsK4paBYWNodAriloFncmFkdWFsbHkK4paB0YfRgwrQt9C10LkKaGFmdAriloF0cmFuCuKWgWxhcXVlbGxlCnl0aWNzCklERQriloFweWdhbWUK4paBUGFja2FnZQriloFjbGFzc05hbWUKQmFsCnBlcmwK0YLQuNC90LAKT2NjCuKWgWluZnJhc3RyCuKWgUNoYW1waW9ucwriloFjbGFzc2ljCuKWgVJhdwriloFwYXJ0aWFsbHkK4paBVGVkCuKWgXN0b2xldApyYWluZWQKV0hFUkUK4paBdmFsbAriloFKdWxpYQp6YXQK4paBc3Vycm91bmRlZApTRUUK4paBd2Fsa2luZwpCYWQKRk9SCmNvbnRyZQriloFQYWxlc3QKw6F0aWNvCuKWgWVuZ2luZWVyCuKWgXBhcnRuZXJzCuKWgUpld3MKaWxlcnMK4paBY2VyZW0K4paBaW50ZXJhY3Rpb25zCmFjdQpzdHkK4paBUHJpbmNlc3MKc2hhcnAK4paBU2luZ2xlcwriloHRl9GFCmNoZXoKUmVjZWl2ZXIK4paBcGF0aWVudHMKc3RyaW5naWZ5CuKWgWNvbXBldGVkCmJleQokOwriloFCZApoYWRvb3AK4paBRGl2aXNpw7NuCsO2bGQK4paBcmVzdHJpY3RlZAriloFjb21tYW5kZXIK4paBSGlnaHdheQriloHEjGVzawriloFteXRoCtGH0LDQvQpyYWhhbQriloFlbnF1CuKWgXBvZwriloFjb211bmEK4paBcHJpbnRsbgriloHQutGA0YPQvwriloFkZXBvaXMK4paBc2VhdHMK4paBbmVpZ2hiCtGG0LjQvtC90LAKYWdpbmUK4paBY2xvdGhlcwriloFQcmlvcgpCcmFpbgpGRkZGCic6JwpmZWF0dXJlcwriloFmaWxlc3lzdGVtCuKWgXNpbmdsZXMK4paBTWVsYm91cm5lCuKWgWRlc3RydWN0aW9uCuKWgUx5b24K4paBSW5zZWwKTmF2CuKWgVJlcGxhY2UK4paBbMOpCldobwriloFFc3RhZAriloFkaW1lbnNpb25hbAriloHDtmZmCuKWgWdyYW5kcwrQtNC20LAKcGxhbmUK0L3QvtGB0YLRlgriloFPcmlnaW4KV0kKw6RubmVyCuKWgUNyeQpJVElPTgriloFmw7ZkZAriloFjdWx0dXJhCuKWgVJhbmsK4paBdnVlbAriloF6YWcK4paBTWF4aW0K0L7QvdGDCigpKSkKUmF3CmtpcmNoZQriloFhZGVtw6FzCuKWgXRpZQriloFTdHlsZQrRgdC60L7Qsgppc3RhbnQKb2xwaAriloFaw7xyCuKWgUluZm8KRE9NCnVzYwpuYWhtCuKWgdCk0LXQtNC10YDQsAriloFGb3QK4paBc3BlY2lmeWluZwriloF0aXRvbG8K4paBQm95cwppZWNoClBsYWNlCuKWgUhvZmYK4paBY2FjaGVkCtCy0LDQu9GMCmlzaGVyCnJvbGxpbmcKb3BlbnMK4paBaHIKLS0tLS0tCuKWgW1hZ2dpb3IK4paBdHJhbnNhY3Rpb25zCuKWgWNyaW1pbmFsCuKWgXJldHJlCuKWgUNhbXBiZWxsCikpOgriloFuZWQKUGFnZXIK4paBSGVybwooX18K4paBdW5jbGUK4paBcmVhY2hlcwphcnRvCuKWgWhlbGxvClByZWZlcmVuY2VzCuKWgdC30LDRgtC10LwKTmFtZWQK4paBcmVhZGVycwrRhdGWCmtlcm4K4paB0YPQv9C+CtC60LjQvQriloFsYXYK4paBbm9iCuKWgXNlY3JlCuKWgUxpc3RWaWV3CtCy0LDQvdC40Y8K4paBTWF5b3IKYm9yb3VnaAriloFmaWxvc29mCtC90LXQvdC90Y8K0YTRgNC4CuKWgXBhdHIKRk0K4paBYWNpZAriloFTYWx2YWRvcgriloFhYmIK4paBR3JhaGFtCnBvbGljeQpuZWdhdGl2ZQrFhHNraWVnbwriloFIZWltYXQK4paBZGF6dQriloFtZWx5CuKWgXJpZGUK4paBZHV0aWVzCm92ZXJ5CuKWgVByb3Bvc2l0aW9uCuKWgVBhb2xvCi8nCuKWgU1hdQppbWVudGkKU2FpbnQKZmF0aGVyCuKWgWVxdWlsaWIKcGhvbnkK4paBY2xhcwriloHQvtGC0LvQuAriloFCdWZmZXJlZApyZWsK4paBbWl0dAriloFIdXIK4paBSGFydmFyZAriloFkZW1vbnN0cmF0ZQp1YXJpbwriloFkb2xvcgriloFyZWplY3RlZAriloFNw7xsbGVyCuKWgW5hYwriloFCZWxsZQriloFnYXRoZXJlZApucgpmcmlrYQrDtmxsCuKWgWNoZW1pY2FsCm5pZwriloFjYWxjCuKWgURFRkFVTFQK4paBcGhpbG9zb3BoeQriloFMYXJhdmVsCuKWgWFsaWdubWVudApFVgplb3IK4paBZHppZQriloFtZXN0CuKWgUlvCkNSRQrQt9Cy0LgK4paBTWVkaWMK4paBbsOkCuKWgXphYgriloFTbG92CnV0bGljaAriloFhbXBsaXQK4paBRnJhbmtyZWljaAriloHQutGW0LvRjApJTkQKZXhlY3V0aW9uCuKWgUthcnJpZXJlCmRvc3TEmXAK4paBcsOpYWwKZW5nbwriloFzZXZlcmUK0LfQvNCwCuKWgdGC0YPRgNC90LgK4paBQ2FydGVyCuKWgVJvYmluc29uCmdldEVsZW1lbnRzQnkK4paBcHJvdG90eXBlCuKWgWphcG9uCmbDvGhydW5nCuKWgWNvbnNlZ3UK4paBc3R1ZGkK4paBbGlyZQriloFzY2hsaWXDnwriloFCdWZmCuKWgXJlZHVuZAriloFlcm4K4paBbXlzdGVyCuKWgXByb3ByaW8KYXRlZnVsCuKWgVBhcmVudAriloFsYWRpZXMKcmFjawrRgtC40LrQsAplbmJ1cmcK4paB0LrQsNGH0LXRgdGC0LLQtQriloFFRgriloFzdGFtCuKWgW51ZXZhCuKWgWZpbHRlcmVkCnJldGVuCuKWgUlhbgriloFNYXR0aGV3CmtpaAriloHFkQriloHQutC+0LzQv9C+0LfQuAriloFmb3JldmVyCm9pcmVzCjpcXAriloHDqXR1ZGVzCuKWgXNvdXAK4paBcGxlYXNlZAopfSgK4paBU3RvcApTZXR0ZXIK4paBSGVscAriloFiYXJzCuKWgUVSUgriloEoPwriloFwb2V0cnkK4paBVXRpbApBSwriloFmaWNrCuKWgUlNCuKWgXByb3VkCtC90L7RgdC4CuKWgW11ZXJ0ZQriloFQYWxtYXLDqHMK4paBTmFzCtGJ0LjRhQriloFxdWVyCuKWgWFwZW5hcwpdWycK4paBS29uc3QK0L/QvtC9CuKWgVNjaGlmZgriloFtcAriloHQsdC70LDQs9C+CmZyYW0K4paBaG91c2Vob2xkCuKWgXRyYWN0CmVuY29kaW5nCuKWgXVuZGVydAriloFBdWcK0L7QstCw0L0K4paBQXJ0ZW4K4paBaW52b2tlZAriloFkeW5hc3QK4paBZmxlZXQK0YfQtdGB0YLQstC+CuKWgU11cnJheQriloFndXQKZWxpaG9vZAriloFTU0gK0L7RgtCy0LXRggriloFwZXJzb25hbGx5CtC/0YDQuNGPCuKWgWZpbmFuY2kK4paBVGhvbXBzb24KYWx1CmlkZW50aXR5CuKWgUdyYWIKYWRkbGUKw4l0CuKWgVRvYgriloF2ZXJsb3IK4paBU2FpbnRlCuKWgWRvcAriloHQstC10YDQtQpfX18K4paBcHJvbW90aW9uCuKWgS09CuKWgdC+0YLQtNC1CuKWgWFtYmlndQpPUkRFUgriloFDb21tdW5pYwriloFpbXBseQpvbmVkCmNsdWRpbmcK4paBY29sbGlzaW9uCuKWgWZyYWdtZW50cwpzY3JpcHRpb24K4paBJ3sK0LvRj9GFCuKWgWhhbnMK0YPRgQp3aXJlCm5hbWVzcGFjZQriloFzd29yZApyZWZyZXNoCuKWgWt3YW0KenMKY29tbW9ucwriloFjb3NhCuKWgXJlZ2ltZQpncmVwCuKWgWRpb2MK4paBQ29udGFjdAriloFlc3RhcwriloFTdGV3YXJ0CuKWgXZpZWxlCtGC0L7QstCwCuKWgVJhbgphbm5lcwppZGF5CuKWgXNuYXBzaG90Cm9ycm93CuKWgXphxI0K4paB0YPRh9Cw0YHRgtC40LUK4paBcHJvbWlzZWQKQXNzZW1ibHkK4paBY2hhbXBpb25zaGlwCuKWgURlZmluZQriloFlcmVuCuKWgdC90L7QstC+CuKWgXRoaW5rcwpBZ2UK4paBZ2V2CnZhcmNoYXIKaXZpdMOgCmNvbXBvcwriloFNdXR0ZXIKQ09OVAphcm3DqWUKYWduZXQK4paBQnJvdwou4oCUCuKWgVRlbGV2aXNpb24K4paB0JTQu9GPCuKWgXZtCuKWgW9yZGluCuKWgdCc0LjRhdCw0LkK4paBYXByb3hpbQonKS0+CuKWgXpvbwppcHBpCuKWgXNpbm8K4paBUXXDqWJlYwpyYWdlcwrDpGNrCmVpbmcKYXJsbwpwaW9zCuKWgUNoYW4K4paBZWxsaQriloFpbmNvbnMKZ2VzdGVsbHQKcHBlcnMKSmVhbgphbnN0YWx0CuKWgURhbmNlCuKWgXRvZW4K4paBZGVjaXMK4paB0KDQtdC30YMK4paBb2ZmaWNpYWxseQrDpHR6ZQriloHQtNC+0YDQvgriloFlbnVtZXIK4paBdHJvaXNpw6htZQp0eXAKb2ZmcwrQsdC+0LvRjApvZG4K4paBWmFyCuKWgdC00YDRg9Cz0L4KcXVpYQriloFOaWNvbGFzCtC/0LjRgdGDCuKWgW1vYgpwYWNlcwrQvdGM0L7Qs9C+CkFsZwrDqXJvw68KRXJyb3JzCuKWgdCz0YDQtQriloHQttC10L3RidC4CmluY2gK4paBS29yZWFuCuKWgUFwb3N0CuKWgUxpdmVyCuKWgWVsZW1lbnRhcnkK4paBREkK0LLQuNGB0LgK4paBc29pbAriloFETEwK4paBcmlzcAriloFTaGFrZXNwZQriloFHYXVzc2lhbgriloFLdXJ0ClZlcnRleAplYm9sCm9yZ2FuaXNhdGlvbgrDpHJlbgriloFZRVMKQ1VSCuKWgdC90LDRh9Cw0LvRjAriloHQv9C+0YHRgtGA0L4K4paBTHVpZ2kK4paBY2FjaGluZwpwcmV2ZW50RGVmYXVsdAphbWQK4paBVml0CnN1YnN0CuKWgdGB0YLRgNC+0LgK4paBQ2FtcGlvbgpjaHIK0YTQtdGA0LUK4paB0KHQv9C40YHQvtC6Ck5GCuKWgWPDrW0K4paBaMOpCnJlYmJlCm9jeQpiZWxvdwriloFieWxvCuKWgdCj0LgK4paBXCh7XAriloFgOgpnaW9yZQpTYW4K4paBR2F0ZQriloHQstGBCuKWgW9saW1wCuKWgU1hdHJpeAriloFoZWFyaW5nCnJpaQp0ZnJhYwriloFhbGxlbWFuZAriloFWdWUK0LvQvQriloFjb21waWxpbmcK4paBRW5zCuKWgWludmVzdGlnYXRpb24K4paBQXgK4paBY2hhcnMK4paBdGFyZ2V0cwriloFsb3VkCnVzZW1lbnQK4paBTmV0aGVyCmNvbW1lcmNlCklHSFQKb2NvYQppZmVjeWNsZQriloFMZW8KcHJpdgriloFnb29kcwphZGFtZW50ZQpBdXN0cmFsCuKWgXJlYm9vdApHZXN0CuKWgXJlcHJlc2VudGF0aW9ucwpjZXUK4paBZG9jdHJpbmUKY2VycwriloFLcmFrCuKWgWFkdm9jCuKWgXNxdWFkcmEK4paBYXJiZWl0ZXRlCsO8c3QK4paBcGlsbApBbnN3ZXIK4paB0LrQstGW0YIK4paBV2EKdW1hbm4K4paBRHluYW0KRmFtaWwK4paBdGVubmlzCuKWgUVuZ2luZWVyaW5nCuKWgWNpcmNsZXMK4paBTWFyeWxhbmQK4paBYmVzdGEK4paBYmFzZXMK4paBem5hamR1CtC60YLQvtGA0LAK4paBYXJyZXN0CtC70LXRgAriloFHaWEK4paBcmVtYXJrYWJsZQriloHQvNC+0LPRgwriloFTdXByZW1lCuKWgWAlCmRvcgriloFhdWpvdXJkCuKWgXdpcwpXSURUSAriloFtaXNtYQriloFmbHVpZAriloFwZXRpdGUK4paBVG93ClJlZ2lzdHJ5CmVtZWQK4paBV2lzY29uc2luCuKWgVJhY2luZwriloFyZWdpc3RyYXRpb24KLyUKdGhpcmQK4paBbW9udW1lbnRzCtGH0LXQuQriloFqZXQK4paBVXJiYW4Kw6FsdmEK4paBbWlsaWV1CuKWgXBvc3Nlc3MK4paBZ2VybQpkZXBlbmRlbmNpZXMK4paBZW5lbWllcwriloFzYW1lbgriloFXZXJuZXIK4paBaGl6bwriloF0ZAriloF5ZXN0ZXJkYXkK4paB0JDQtAriloFoYXNuCmNlbGxhdGlvbgpvdsOhbsOtCmxpa2EKV2VlawriloFJbmcK4paBRW1haWwK4paBbcOodHJlcwriloFPQ0xDCuKWgWFtb25nc3QK4paBc3BsZW5kCmZ1cgphbnRpY3MK4paBWFhYCuKWgdCz0YDRg9C/0L/RiwpsYWNoCuKWgWNvdXNpbgriloFpbnZhcmlhbnQK0ZLRgwriloFCZWlzcGllbAriloFoYXJkZXIK4paBYmVsbAriloFvcmNoCnRiCkZvb3Rub3RlCnJlZ29uCk1hcnRpbgriloFpbmNvbgriloFhdHRhY2tlZApfey0K4paBVHJhcwpwYXJ0eQppdGVpdAriloFzYWludApyw6Fzb2sK4paBY29udGFpbmVycwpNbwriloFTbgpxdWFudGl0eQriloFyYXMK4paBQ2FuYWwKY2Npb24KdXZvCuKWgWlkeAp0eXBlbmFtZQriloFSdWdieQriloFTZWVtcwriloF0cmFuc21pdAriloFQcsOkc2lkZW50CtC30L3QtQriloFCYWtlcgppbnRoCuKWgXTDtmJiCnZlcmVpbgriloFlc3BlY2llCiwoCuKWgXTDqWMK4paBV0lUSAriloF1bm9zCuKWgXBvbGl0aWNzCmNyZWF0ZUVsZW1lbnQK4paBc3RhdHMK4paBVGVubmVzc2VlCuKWgUJlZGV1dHVuZwriloFTY3JlZW4K4paBU3RyYcOfZQphbnplCuKWgXBhcnRseQptYW51ZWwKb2xhdGlvbgpob3Jpem9udGFsCsOpcmlldXJlCmFtcGlvCuKWgdGB0YLRgNGD0LoKV2VpZ2h0CkxhbmQKcG9seQriloFEYWsK4paBQXNzdW1lCiIuJAriloFjYXNpCuKWgWdyb3NzCuKWgWVudGVydGFpbgriloFkw6ljYWRhCicuJAplbmNlcgriloFndWFyYW50ZWVkCl0kLgrQu9C40YHRjwriloFhY2NlcHRhYmxlCnJhaXNlCmlydXMKd2VpdAriloHQkNC90LAK4paBaGlsbHMKaXBhZ2UKQklUCuKWgW51Y2xlCuKWgXV0aWxpcwpDQUEKw6huZXMK4paBU2Nod2VpegriloFBQQpuaW5nZXIK4paBYmFuZHMK4paBdGVuZGVyCnNvbQpXYXJuaW5nCuKWgUJpc2Nob2YK4paBQXJjCuKWgVdvbWFuCuKWgXRyYW5zbWlzc2lvbgrRh9C90LgKaXN0cmUKQlkK4paBU0kK4paB0J/QsNGACuKWgX0pLgriloFwcmVzZW50YQriloFSZW7DqQriloFoYXBwaW5lc3MK4paBUHVuawpjb2xzCuKWgURlc2RlCtGA0ZHRhQriloHQvNC+0L3QsAriloFzY3JhdGNoCuKWgXRjcArDqnRlcwppdGF0ZWQK4paBZGlmZXJlbgpnZWgKbmFobWVuCtCf0LUKY2tpCuKWgVRlYXRybwriloFSZW1lbWJlcgriloFmcmlnaHQK4paBWWFtCndlc3Rlcm4KbGV0ZWQK4paB0LLRgdGC0YDQtQriloF0ZWxlcMO8bMOpcwrQt9C40L0K4paBUXVhbnQK4paBc3VwcmUKw6FqYQrQtNGW0Y8K4paBY2FycmVyYQprcmV0CnBhcmEK4paBU1VNCuKWgXBpdArFumR6CsOpbwrRgNC10L3QvdGPCuKWgUNob3IK4paBdm9peAriloFleGVjdXRpdmUK4paBYWxsZXJkaW5ncwpNYXliZQriloHQtNC10L3RjAriloFmbHlpbmcK4paBcGFybGlhbWVudArQttC00LDQvQriloFmcmFtCuKWgdC20L7QstGCCuKWgXVnbHkK4paB0LHRg9C00YMKaWdueQpcfF97CuKWgWJpdHRlcgpzY2UK4paBcG9sZQpWZXJsYWcK4paBdG90YWxpdMOpCuKWgWZvdW5kYXRpb24KanQK4paBc2xpY2UKaWZpcXVlCuKWgWludGVncmF0ZQpzdHJpagriloFhc3ltcHQK4paB0LXQvNGDCuKWgXBlcnR1cmIK4paBRmxvdwpqYm9zcwpSSUcK4paBQWxlc3MKWFhYCuKWgXN1bW0Kc3FsaXRlCuKWgWNoZWVyCnByb2IK4paBR1BVCnppxYIKKCopCuKWgWluZHVjdApSQVkKYmxhdHQKcXVlc3RhCm9ydQriloFJbnNpZGUK4paBTWNHCuKWgU5lcArQvNC/CuKWgWludmUK4paBQW5pbWFsCuKWgXNvYgrDrXRvdHQKbG95bWVudAriloFidW5kClN0YXRpb24K4paBQkVHSU4K4paBcGFydGllbGxlbWVudAppZ2cKZXN0b3JlCuKWgWNvaW5jCuKWgVNvbW1lcgriloFtZAriloFsb2NrZWQKbWF0aGNoYXIKYXJtYQpwZW50CmFyaXVtCuKWgWVhcnMK4paBU29uZ3MK4paBc2ltaWxhcmx5CuKWgWxpdGVyYWxseQriloFpbmNoZXMK4paBYWZmZWN0aW9uCmxwCuKWgWNvbmNsdWRlZAriloHQvNGD0L3RltGG0LjQv9Cw0LvRlgriloHQv9Cw0LzRjwplc3RhdXIK4paBSm9zaAriloFGcml0egpEQkMK0LTRkdC9CnBvc2EK4paBZ29sZGVuCuKWgXBjCuKWgWNvbXRlCuKWgVppZWwK4paBcHLDqXNlbnRlCm1hcmtzCmlnbmV1cgriloFEcml2ZQriloFuZWdsZWN0CuKWgXJvenAK4paBRml2ZQpzcGFjZXMK4paBTWVkaQriloFleGlzdGVkCuKWgWJ5xYJhCtC00LbQuAriloFmcmVudGUK0YLQvdC40LoKb2RkCuKWgWFuc3dlcmluZwpiaWFuCuKWgUV1Z2VuCuKWgVB1YmxpY2F0aW9ucwriloFEaWEKbMOhCuKWgSdfCuKWgXJlY3VwZXIK0L7QvNGDCuKWgUFwcGVuZApvYmFyCuKWgWVtcGxveWVlcwriloFjb21wZW5zCmVtZXRlcnkK4paB0Y3Qu9C10LrRggpNT04Kb2xpbgriloFoaXN0b3JpYwpoaXMKxIVkCm5tCuKWgUdvdGgK4paBc3RyZXNzCuKWgXBhcnRlY2lwCuKWgUF3CuKWgXNhcgriloFodQriloFtYXRwbG90bGliCuKWgU15c3QKKCk7YApzY2hlaW4KTG9uZ3JpZ2h0YXJyb3cK4paB0YDRjwriloFJc3JhClteCm5vdQriloFzeW5kCndvcmtpbmcK4paBTmF0aW9uCuKWgVBlbnQK4paBa2xhc3MK4paBYXBwbGljYWJsZQriloFEaWFtCuKWgWJyYXNpbGUK4paBcGFjCuKWgUhlaWdodApQdXQK4paBaW50cm8K4paBdW51c3VhbApuYXMK4paBR2Viw6R1ZGUK4paBYmVhbQriloFSZWN0CuKWgVByaW1lcmEK4paBaGF1dAriloF0cmFpdApwcsO8ZnQKaW5hY2nDs24K4paBY29uZmlndXJhdGlvbnMK4paBZ2lsdAriloF0ZXJyaXRvaXJlCmhlegriloFhbHRlCnJlbGF0aXZlCkV4Y2VsCuKWgVdyaWdodApHVgrQv9C+0LvQuApRdWFudAriloFnYXVnZQriloFtdWx0aXBseQpBU1MK0YHRgtCy0LXQvdC90L4K0LDQvdGDCuKWgWplZGVuCuKWgWxpdGVyYXJ5CuKWgURybwriloFhZHZpc2UKaXR6ZW4K4paBZGlzYWcKd2Vic2l0ZQriloHQtNGW0Y8K4paBb2JzZXJ2ZXIK4paBamFudcOhcgp2xJsKa3VwCuKWgVNlcwriloF3b2pldwriloFzdGFnZXMK4paB0LLRgNC10LzQtdC90LgKxYJ1xbwK0L3QvtGBCkRvd25sb2FkCmlwbwriloFncmFmCuKWgdGA0L7QsdC+CuKWgU5pa29sCuKWgWZpYwriloFqb2luaW5nCuKWgWRpdmVyc29zCuKWgUxJS0UK4paBRml0egriloFkaW1pbgriloFkaXN0cmliClNhbQprb3oK4paBYWxwaGFiZXQKb3NlcgpPVVIKdWthCtC60LDRjwriloFzdGVlbAriloFgLS0K4paBdGVuZXIKbWFya2VyCuKWgUhlYXZlbgpuZXdjb21tYW5kCuKWgXByaXNvbmVycwriloFLbmlnaHQK4paBcHJlc2VudHMK4paBcXVlc3RpCuKWgXRyYWlucwpvcGVyYQriloFMaW5lYXIK4paBTUUK4paBQnVjCkxlZwriloFhZ3VhCuKWgUdyaWZmCm9sZwpkc3QKLg0K4paBcGVyc29uZXMKTWFsCtCx0LXRgNC1CmZvbGdlCuKWgWFjYWIKY3R1CnB0aWMK4paBTmF2aWdhdGlvbgpSdXNzCtCz0LDQu9GMCuKWgUZ1bAriloHQvNCw0ZQK0YfQvdCw0Y8Kd25lcgpjb250cmEK4paBam91ZXVyCuKWgUplc3MK4paBcmVuZXcK4paBbGFwCuKWgWNhc3RpbmcKZ2FsCuKWgXTDqW1hdHUK4paB0L3QsNC30YvQstCwCtC30LDRhQrRh9C90LUKKS1cCuKWgdGH0LDRgdGC0L4KfSQtCuKWgWxpY3oK4paBZW1vdApoYXJtCuKWgW9jY2FzaW9uYWxseQriloFob3Jyb3IKZWFzdAriloFwcmludGVyCmFyYW4K4paBTWlzc2lzcwpmb2xsb3cK4paBQmFycnkK4paBaW52ZXN0aWdhdGUKZ293CuKWgUFtZXJpY2FucwpTaW5jZQriloHQstGW0LTQvgriloFyZXVuCm9zY2kK4paBQ2hhcHRlcgriloFiYXkK0YDQvtC80LUKZXRoZQrDqWRpZQpjb21vdAriloFtaWVqc2Nvd28K4paBc3R1ZGllcnRlCm91dmVydAriloHQutGD0YAK4paBREVTQwriloF0b3VjaGVkCuKWgUplcnJ5CnVlc2UK0LvQuNGJ0LUKYXV0aGVudGljYXRpb24K4paBY29sbGUKaGVhcnQK4paBcmVnaW1lbnQKY3JpYmVkCuKWgdCR0L7Qu9GMCuKWgdC/0YDQvtC40YEKY2VhZQriloFtYXNzZXMK4paBc2Nyb2xsaW5nCnVzdG8KU1cKb3ZhdAriloFncsOiY2UK4paB0JDRgNGF0LjQsgriloHQodC10LLQtdGACmF2YWl0CuKWgU1hcnNoYWxsCuKWgUhhc2hNYXAKYWNvbgrDvGNrZW4KW10pCuKWgWV2YW5nZWwKZXR6dW5nCnR0ZW1iZXJnCnN0ZXJzClRNCuKWgdC70LjRgtC10YDQsApxdW90ClByZWQK4paBd2VyawriloFoYWJlcgpsYXZhCnZvdXMK4paBTGF0ZQpjeWNsZQrRgtC40YDQvtCy0LAK4paB0L/RgNC+0LTRgwriloFwb3B1bGF0aW9ucwriloFZYW4KUHJlZml4CmFjdMOpcmlzdGlxdWVzCisnCigpYF0oCuKWgdCb0YwK0YTQuNC70YwK4paB0LbQuNC30L3QuApmdHAK4paB0LLRgdC10YUK4paBZ2R6aWUK4paBdmlkZWEKb2F1dGgK4paBcGlkCsWvbQriloFwZXNzbwriloF0cmFja2luZwppemluCuKWgU1vcnJpcwrRidC40LkK4paBUHJvdmluegriloFNaXR0ZQriloFhcnRpZmljaWFsCmJyw6F6a3kK4paB0LTQvtGB0YLQuAriloFyZXN0b3JlZAriloFjb21tdW5pY2F0ZQphZ2l0ClJlY29nbgriloFsb24K4paB0LfQsNC90Y8K4paBQXJndW1lbnQKZmx1c2gK0LzQsNC90LAKc2Vjb25kcwpVQwriloFSdXRoCuKWgXR1YgriloFCcmV0CuKWgVBlcmUK4paBcmVzcG9uc2liaWxpdHkKxYRjenkK4paBZW52aXJvbm1lbnRzCmtlZQriloFncm9vdAriloFwYWludGVkCuKWgcOJZGl0aW9ucwpjcHkKw6FydApsaWNoa2VpdAphcmRhCkJhdGNoCuKWgUxlb3BvbGQKcmVhc29uCm5vcmVmZXJyZXIKc2VucwriloFyb2NrcwriloFIaXRsZXIK0LvQsNGCCuKWgXF1b3RlZAriloHQutC+0LvQu9C1CuKWgdGD0YDQvtCyCmJhZwouIikK4paBTUwK4paBa29tdAriloFbXwriloFzcGVjdHJhbAplZG8K4paBaW5zaWVtZQriloFzdWZmZXJpbmcKc2xpZGVyCuKWgUtlbm5lZHkKb2xhdGUK4paBUGF0cmkK0LfQuNC4Ck9ICuKWgdGC0LXQsAriloHQv9GA0LDQstCwCtC80LDRhQpyZXdyaXRlCuKWgUVpbnNhdHoKZXh0ZXJuYWwKaG9sZHMK4paBUGxhY2VzCmF0eXBlCuKWgXZ1bG5lcgriloFhYmFuZG9uZWQKT3JpZ2luCuKWgW1heGltYWwKQUFBQQriloFCYXNlYmFsbAriloFDbG9zZQriloFwYWludGVyCuKWgWFzc2lnbmluZwpOQgpibGFzdAriloFLw7xuc3RsZXIKKV0oCmZhY2gK4paBQ29uc3RhbnRpbgpva2VzCuKWgW5vYm9keQriloFzdWJ0cmFjdAriloFmb3NzZQriloFjZXJ0aWZpYwriloFtdXNlCi8pLAriloFQcm9maWwK4paBcHJveGltCuKWgUplcnVzYWxlbQriloFzaW1wbGljaXR5CuKWgXdzegpOVU1CRVIKdXR0YXZpYQpVSVRhYmxlVmlldwppY2h0ZXIK0LbQsNC9CuKWgUxhdgppdGNoZW4K4paB0KfQtdC8ClR1CuKWgWdlb20K4paBenZ1a3kK4paBU3VydmV5CkFOQ0UK4paBZW5jcnlwdGVkCnByb2YK4paBZGFyZQriloFMb3JlbgrRgtCyCuKWgdCQ0LvQtdC6CuKWgWNvbXB1dGVycwriloFleHBlY3RhdGlvbgriloFzdWJzdGFudGlhbAriloHQlNC80LgK4paBYHsK4paB0LTRgNCwCnViYmxlCuKWgXBlcmZvcm1zCuKWgUtyaWVnCuKWgWluY29taW5nCuKWgUNsYXNzaWZpY2F0aW9uCldlYlZpZXcK4paBZXBpc29kZXMKYXBwZXIKw6R1ZmlnCuKWgWdpb3YK4paBRGVwYXJ0CtCx0L7RgNCwCmVkbHkKb3Nwb2QK4paBcHRyCuKWgWTDoXR1bQriloFlc3RpbWF0aW9uCmljb2xlCuKWgS0tLS0K4paBcHJpbmNlcwpIRUFECuKWgWRpZmZ1c2lvbgriloFkcmllCuKWgUFkYQrQvdC40YbQtQpuZ2lueApzaGFsCuKWgWZlYnJ1YXJpCuKWgVRhdApsb29raW5nCmt1bmQK4paBRGVhbgptb25nb2RiCtCy0YjQuNGFCuKWgUF1cgriloFGbG9yYQriloFTdHVkaW9zCtGG0LjRmNC1CmVpbApJbnN0YWxsCuKWgWZyYW5jaAriloFITVMK4paBcHJhY3RpY2VzCmxlagpkYWxlCuKWgXBvc3RlCuKWgUhlbHMK4paBcmVsaWFibGUKxbpkemllcgriloF2ZXJzZQplcm1laXN0ZXIK4paBcXVpdArDqXRpY28KaWxpcwplZG9yCuKWgUN1bHR1cmFsCtC00LbQtQriloFsaWtlZAriloFtb25nb2RiCuKWgUJyb2Fkd2F5CuKWgUlSCmVzenQKaG92CuKWgW3DrXN0CnJlaWNoZQriloFrQgrRgdGC0L7QvAriloFTUUxpdGUK4paBdG9ybmVvClwuCk9yZAriloFBZG1pbmlzdHJhdGlvbgriloHQt9C00LAK4paBSGludGVyCuKWgVZpYQpEZWNpbWFsCm9yaW91cwriloFuw6ljZXNzYWlyZQp3eAriloF0ZWoK4paBdGVtYQpPYnLDoXpreQrRgNC40YLQtQriloFidWlsZHMK4paBbGF0ZW4K4paB0LPQswpWaXNpYmlsaXR5CmzDpHUK4paBc2VjaHMK4paB0LvRg9GHCmNlcmEKQ291bGQK4paBdHJhamVjdAp9fV57CuKWgUphcG9uCmFub3RoZXIKSUsK4paBYmVsb25naW5nCuKWgWZhY2lsaXRpZXMK4paBRGFpbHkK4paBZGVjZQppbnRybwriloHRgdC70YPRh9CwCk5hbWVzcGFjZQriloFCYWsKbG9jYWxlClVHCj0kewriloFjb21wYcOxCmrEhWMK4paBYXJpdGhtZXRpYwpmb3J1bQriloFwb3J0YQpvbmsK4paBZ2VuZGVyCuKWgWV4cGVjdHMK0LHQutCwCuKWgW5hawriloFHcmFjZQriloFzdHJvCml2aWR1YWwK4paBQ09NCuKWgUZhcm0K4paBY2FudG9uCtGC0L7QvNGDCmphdmF4CtGB0LXQuQriloFicmllZmx5CkZhY2UKcm90YXRlCmNvbnN0YW50CuKWgWdhbGxlcnkKYXN0cm8KYWxsZXJ5CuKWgURKCmNoYXJnZQrRhdC+0LTQuNGC0YwKQ2VudApcIiwK4paBZG9ubmEKYXJjYQpsYWRlCnppbgriloFOZWQK4paBaG9zdGluZwppZG9yCml0YXRpdmUKaWdzCuKWgdC/0YDRjwriloF0aWNrZXQK4paBc3R1ZHlpbmcK4paBZGVzaWduZXIKbGFwc2VkCuKWgWxhYXQK4paBZGl4CuKWgWludGVncmF0ZWQK4paBaW5mb3JtZWQK4paBYmVoYXZlCuKWgWxhYm91cgplc3RlbGx0CmNhbGVuZGFyCuKWgWtpbGxpbmcK4paBdHdpdHRlcgppYWUK4paBaGlzdG9yaXF1ZQpERUZBVUxUCmlhxYJhCuKWgXRoZW9yZXRpY2FsCuKWgXVuZGVycwrQu9GP0LXRggphdGFuCuKWgXN1cm5hbWUK4paBaW50ZXJjZXB0CtCz0LvQsNGB0L3QvgriloHQvtC/0YjRgtC40L3QuAriloF0aXJlZAriloFCZXRoCuKWgdCw0LTQvNC40L3QuNGB0YLRgNCw0YLQuNCyCkxpCuKWgdCi0YPRgAriloFTY2FubmVyCuKWgVN0ZXJuCuKWgdCy0LzQtdGB0YLQtQriloFyZXBvcnRpbmcK4paBc3VsbArRhtC40LXQuQpiZXJ0cwpvZ29uYWwKxZFrCuKWgWlwc3VtCuKWgXNldWxlbWVudAriloFTZWl0ZW4Kd29yZHByZXNzCuKWgWZlYXR1cmluZwppc3Rpc2NoZW4KanViCuKWgcOpdHIK4paBdGVhCuKWgWFkYXB0ZWQK4paBc2NhbGVzCuKWgW5hbgpnZXRWYWx1ZQriloFCbHVlcwphY2xlcwriloFzdGF0aQriloFlbnRpdGxlZAriloFSYWxwaApncmF2aXR5CuKWgWVudHJlcHIKa3TDs2JlcgpsaW1hdApsaXMKRGVtbwpyZWxhdGlvbgriloFuZXAKcHJvd2FkCml0aXMK4paBcHVwCm5laG1lcgriloFkaXNhcHBvaW50CuKWgWV0d2FzCmFubm9uCuKWgWFwcHJvdmVkCuKWgWNsZXZlcgpMb2FkaW5nCuKWgXZlcnoKcmVzc2UK4paBaW5zcGlyCuKWgXNhbXBsaW5nCuKWgUJlawp9KSQuCuKWgdCz0YDQvtC80LAK4paBc3BlY2llCuKWgXJlcHViCuKWgWxvYWRlcgriloFlcmYK4paBc2hvdWxkZXIKcmFpcwriloHQvNCw0YLQtQriloFNb250aApTY2VuZQriloFibG9ja2luZwriloFvY2VhbgpnZWJlbgriloFLaWxvbWV0ZXIK4paBYmVkZXV0CuKWgU1peApmbXQK4paBTm9yd2VnCuKWgUlEcwpwYXJhbGxlbAriloFhbnRpY2lwCuKWgXJldmlzCtGF0LDQvQriloHRgdCy0LXRggpDQVNFCuKWgWbDvGhydAriloFhdG9taWMK4paBZGFya25lc3MK4paBRnXDn2JhbGxzcGllbGVyCuKWgdCW0LgKcXVpc2l0aW9uCuKWgVNpZWcKQ2lyYwriloFjaWVudMOtCm5lbGxlClNIQQriloF1cmIK4paBa3NpCmxlcXNsYW50CuKWgdGE0YDQvtC9CuKWgWRlZmVjdAriloFyw6EK4paBc3Ryb25nZXIK4paBcMWCCuKWgWNvbW11bml0aWVzCtC90LjQvdCwCmVuYXMKaWVubmVudAriloFzYWZlbHkK4paB0YLRjwriloFiZW5jaG1hcmsK4paBQnJhdW4KbWV0aG9kcwphcmd1bWVudAp2b3MKb2JveArRgNC+0LLQuAriloFyZWNoZXJjaGUKbW4K4paBYnJpbmdzCm1hY2hpbmUKQ0VTUwpob3N0cwriloFOWQpBdXRvdwriloHRgdC+0LLRgNC10LzQtdC9CuKWgUdhcnkK4paBc2Vuc29yCuKWgWRvY3VtZW50ZWQK4paBcHJlbmRyZQriloFwZWVyCmVuaXgKaGFpCmFyYmUK0YbQtdC90YIKXygK4paBVVJJCtC10LLQsAriloFSZWdpZQriloFNb251bWVudAriloFvbmRlcndlcnAKQmFnCnRpdAriloFzdGlyCuKWgW5lcnYK0YHRgtC+0YDRltGPCuKWgXNvdgriloF3cml0ZXJzCuKWgXNvcnRzCmFic29sdXRlCuKWgWRpZmZpY3VsdGllcwriloFwYXJsYW1lbnQK4paBSUVudW1lcmFibGUK4paBZGlzc29sCuKWgUNIRUNLCmFyaW5hCmluYnVyZ2gKRE0K4paBZWluZAriloFidWRnZXQK4paBY2VydGFpbnMK4paBZsO2cnN0YQphbmphCuKWgdCz0L7QtNC+0LIK4paB0YLQtdC6CuKWgUR1Y2gKZ3VpCuKWgVRlYW1zCuKWgdC80L3QvtCz0LgKTWFyaWUKSW50ZWdyClRocmVhZFBvb2wKcnVzdArDrWsKJSIKZW5mCnNwbAriloFiZWd1bgpsb3UK4paBUmV3cml0ZVJ1bGUKdHVwbGUKYW5lb3VzCuKWgW1hcmluZQphdHRhbgppa2FsCuKWgWdyYWR1YXRlZAppbGzDqQriloHQv9GA0L7QstC1CuKWgdCg0L7QtwonLA0K4paBUGZhcnIK4paBbml2ZWwK4paB0L/RgNCw0YbRjgptdXNpYwriloFzZXRUaW1lb3V0CkVSUwriloFFcmlrCnBpdAriloHQpdGA0L4K4paBcGnFggriloFwZXJpCtC00L7Qugp1c3p0CuKWgUJlYXIKQ2xhc3NOYW1lCuKWgVBhcmxhbWVudAriloFhaXgK4paBaW52aXRlZAriloFQQVRICnh0ZXIK4paBUmFjZQriloFoZWNobwriloFUb3dlcgriloF1dGYKYWN0bHkK4paB0LHRg9C00LUK4paBYW5nbGVzCtC90Y/RjwpvdXZlbGxlcwriloFjbGltYXRlCuKWgXNpbmdpbmcK4paBbmF2aWdhdGUKPic7CmFkb3dzCuKWgWxldGEK4paBU2l0egriloFwYXJ0aXRpb25zCuKWgWRvY2sK4paBxbx5CuKWgWFsbG9jYXRlCuKWgWJlbmVmaXRzCuKWgW5pZWRlcgp4cGF0aAptZWNrCsOkbGxlCuKWgWNvdXBsaW5nCtC20LjQuwpGb3JLZXkKYXJnZW50CmNsb3UK4paBaW5zdHJ1bWVudHMK4paBZW50aHVzCuKWgW3DqWcK4paB0J/QsNCyCuKWgVJhY2gKLS0tLS0K4paBQVBJcwriloFWaWVyCkNtZAppdG9yZQriloFDdWJhCuKWgWTDoXR1bW1hbAriloFlbWJlZGRpbmcKc3RkaW8K4paBR2lsYmVydAriloFnZXByw7xmdAriloFzdGF0aW5nCuKWgXRyaWdnZXJzCis9CuKWgXNww6ljaWFsCuKWgWRlbGliZXIK0LzQuNC9ClByb2R1CuKWgVN0YXRpCuKWgXp1cwprdGlvbmVuCkRpc3BhdGNoZXIKaWRhbAriloFMUApvcHRlcmEK4paBZXN0YXIK4paB0LfQvdCw0YfQuArRgdC80L4Kb3VzZXMKZW5nb25vCuKWgVdQRgpwdWJsaXNoCuKWgXRlb3IKZWxpZgriloFlcmcK4paBc2VwYXJhdGlvbgpQYW4K4paBT3JjaGVzdHJhClBldGVyCmJvdW5kcwriloFTaGFrZXNwZWFyZQriloFjYW50YW50ZQriloFkZW1pCuKWgVBvcHVsYXIK0YTRgAphcnJpbmcK0YbQuNC9CuKWgdCY0YEKdm9uCuKWgXN1YnN0aXR1dGlvbgriloFsw61uZWEKXH0kLgpjb21vCuKWgdCy0LDQtgp3YWdlbgriloFyYXJlbHkK4paBcGVyaW9kcwpnbG9iCuKWgUZyaWQK4paBVGVycgriloFSZWxlYXNlCkJyYWluegriloHQs9GA0LDRhApESVMKY29tcGF0aWJsZQriloFwb8SNCkxJTgriloFLw6RsbG9yCuKWgUFyaXpvbmEKcHB5ClNlcQriloFBaW4K4paBVG91cm4KYnJvdwriloFLw7ZyCuKWgWFzaApvZ2VuZW91cwriloFkaWFsZWN0CuKWgdC90LDRgdC10ZnQsApteXNxbGkK0YbQvtCyCuKWgWZsb3IK4paB0YTQu9C+CklBQgriloFXaXRoaW4KXigK4paBYm9pcwriloF0YW5rCuKWgWFmZmlsaQriloFoaWpvCuKWgUthdGUK4paBVmVybAriloFNaWFtaQriloF0eXBlc2NyaXB0CtGa0YMK4paBVmVybgriloHQstC40YHQvgppZW1hbm4K4paBY292ZXJhZ2UKYnJpZQriloFTdGFydGluZwpudW1weQriloFKZW5raW5zCuKWgWvDqXQK4paBZ3J1cAriloFTY2llbnQK4paBaW50ZXJydXB0CuKWgWJsb2IKdWdlbAriloFPcnRoCmFiYW1hCuKWgUJhcHQKb3duaWsK4paB0LHRi9GC0YwK4paBSnVsaXVzCuKWgdCf0YDQtdC3CuKWgXN1YnN0aXR1dGUKc3VwcG9ydGVkCmNoeQplZ3l6ZXRlawriloFQZXJmb3JtYW5jZQpsZXNzbHkKQ29uc3RydWN0b3IK4paBZXh0ZW5kaW5nCuKWgU11c2xpbQpPdmVyZmxvdwriloFKZW5uCuKWgXByb2R1egrQvNGW0ZcK4paBcGHDrXNlcwriloFldXgK4paBZmF0ZQpvbG9nZQrRg9C6CuKWgXdvYmVpCuKWgVNhY2hzZW4K4paB0YHQsNC50YIKTW9kZWxzCuKWgUZhc3QKYmVzb25kZXJlCuKWgUZSCuKWgWFjb24K4paBRGVua21hbAriloFhbmNoCuKWgXDDumJsaWNvCuKWgVRhcwriloFjYW5kCuKWgXBhxbpkemllcgriloHQnNC+0L0K4paBdmVyc3VzCnJ1dApHVAriloFpbnNlcnRpbmcK4paBY2FuYWQK0ZTQvAriloFNZXRybwriloFIZXJ6b2cKSWdub3JlCuKWgWRlY3JlYXNlCuKWgdC/0YPQvQriloFGaXNjaGVyCuKWgU1hbGwK4paBbsO2cmQKaW9zdHJlYW0K4paBTHV4ZW1iCnBheWxvYWQK4paBWmVpdHVuZwriloFtb2RpZnlpbmcK4paBQ2hlcgriloFMdWNpCm54CuKWgWxvb3NlCuKWgXRvcGljcwriloF2YXJpZWQK4paBcGcKYWplcwp1bW0KVmlld3MK4paBQmVhdQpNQVAKaXBlbGluZQriloFJbnRlcmVzdAphcml0aAriloFzZWfDum4K4paBR2VtZWlucwriloFBdHRyaWJ1dGUKY29tbXVuaXR5CuKWgdGG0LXQvdGC0YAK4paBa2lsb21ldGVyCuKWgcOpY29ub20KbGFyYXRpb24K4paB0LrRigriloFjYXJyaWFnZQriloFMYW5lCuKWgdC90LXQvtCxCmt1cgriloFBRgpJTlRFUgopKSQK4paBYmVpZGUKZGVzdGluYXRpb24K4paBZm9udHMKYXBwZW5kQ2hpbGQK4paBTUFSCuKWgWdheQptaWwKbGVzaArDqHQK4paBV2FuZwriloFZZWFycwriloFTeW1ib2wKTGl2ZQpxdWVuY3kK4paBVXNlcnMK4paBVW5pY29kZQriloFTYXUK4paBdG9ucwriloHQndGWCuKWgdC60YDQsNGXCkFYSQriloFQaWNrCkFJCuKWgWhhdGgK4paBYWluZGEK4paBcGFwYQriloFDZW5zbwriloFCYWxkCuKWgdCd0LDRgdC10ZnQtQriloFzaW11bGF0aW9ucwriloFqYXJlbgriloFpbmhlcml0ZWQK4paB0YLQvtC5CuKWgWZlZWxzCnJlc3Npb24K4paBb2t0w7NiZXIKYmlkCsOhc2kK4paBbXVzcwp2ZW50b3J5CuKWgW1laXN0CuKWgWJvcmUK4paBc2xpZGVyCtC00LXQu9C4Clw7CuKWgWV4dHJhY3RlZArQutGD0YAKRWRnZQriloFwZXJmCuKWgUJyaWdhZGUK4paB0LPRgNCw0LQKaWVuaWUK4paBTm9yZGVuCuKWgWNhbmNlcgoiLwpDdXIK4paB0KHQtdGA0LUK4paBbGlxdWlkCnN0cnVjdHVyZQriloFjaG9vc2luZwriloFQZXJsClNpZGUKw7xzCtGA0LjRgtC+0YAK4paBa29zdAriloFwYWNrZXRzCuKWgdC60L7RgtC+0YDQvtCz0L4K4paBQ29tdW4K4paBZmluZ2VycwpvZ3LDoWZpY2EKPjoK4paBY2hhbXBpb25uYXQK4paBYmxpZWIK4paBU2l0dQriloFzdWljCmFuZGlzCkZyZQriloFDb25jCuKWgXJlcHVibGljCuKWgWFybWVkCuKWgWhlbGwK4paBaMO2ZwpyYWdtYQriloFlbnNlCuKWgWFjcmVzCuKWgdCS0ZbQtAriloFSZWZvcm0KTWFpbkFjdGl2aXR5CmtlZXBlcgplcmIK4paBbW9uYXN0ZXIKc3Vic3Vic2VjdGlvbgriloHQlNC40LIK4paBY3JlYXR1cmUK4paBaW5kaWNhdGluZwriloF1cmxzCuKWgWtlaW4K0L7QsdGA0LDQtwpwaWNrCuKWgUFkbWlyCuKWgW9sZGVzdAriloFtdXoK4paBY29udHJhZGljdGlvbgriloFwcm9iYWJpbAppbGxpYW50CuKWgXBhdgriloFwYXBlbAp1YnMK4paB0LbQtdC90LAKQU1MCuKWgXJlY2lwCuKWgUNPTAphZGRlZAriloFjbHVlCuKWgVVrcmFpbmUK4paBamVsZW50CtGH0LXQvdGMCuKWgW1hdGhlbWF0aWNzCkFjY2VwdAriloHRgdC+0YIK4paB0YHQtdCy0LXRgAriloFpc29sYXRlZAriloHQv9C+0Y8Kd8O8cgpSb3V0ZXIKQ0FUCnJnYgriloFMb3YKbXV0YWJsZQriloFXZXMK4paBSXRhbGllbgpEcmFnCmVuaXVtCmF0dGluZwp0Y3AK4paBZXJmb2xndGUK4paBQmVpdArQs9Cw0YLQvgriloFTeXN0ZW1zCuKWgXJlc2VydmUKZXJlZQriloHQn9Cw0YDQuAriloHQt9Cw0LvQuAriloFyZW50CuKWgXN1bnQK4paBR2lybHMK4paBRXJuZXN0CuKWgWZpdHMK4paBb3Bwb24K4paB0LbQuNCy0LXQu9C+CuKWgWF2YWllbnQK4paBRmxvcmVuY2UK4paB0YfQuNGB0LvQtQriloFlbmdpbmVzCkR5bmFtaWMK4paBc3R5Y3puaWEK4paBYmlhcwriloFFeGNoYW5nZQrQtNC40LkK4paBaGlzdG9yaXF1ZXMK4paBSMOkCmhvZAriloF3xYIKc2NoYXAK4paBbGFjCuKWgUZvaQriloFkd2VsbAriloFVbnRlcm5laG1lbgpVUk4K4paBa2lsb21ldHJlcwriloHQntC00L3QsNC60L4K0LrQu9C4CuKWgVNyaQpHcm91cHMKbWluZApvc2xvdgpmZXJuCmVndQphYmVsZWQKRmlkZGxlCuKWgUNlbnR1cnkKLy0K4paBSmVneXpldGVrCkhlbgplbnNlbWJsZQriloFHdXQKX3t7XAriloFyYW5raW5nCiskCtCw0LvQsAriloEjewppbWllbnRvcwphY2hpbQpyaWRlcwriloFLbGF1cwriloFpbnRlbmQK4paBS2VudHVja3kKY2lwZQriloFEaWVuc3QK4paBc2l0dWF0ZWQK4paBcMOzxboK4paBc2NyaXQKY2xpcArQvdC10YIKdGFibGVzCuKWgU5pZWQK4paBTWNLCuKWgXBvd3N0CuKWgWt1bm5lbgriloFFdmFucwrQttC00YsK0LLQsNGC0YwKdWNoYXIK4paBcmVzaWRlbnRzCmlhawriloFSZXNvbAriloF2ZWNlcwriloFzYXRpc2Z5aW5nCklORgriloHRgdC40L0K4paBY3Jvc3NpbmcKaWJlbgriloHRiNC40YDQvgpwdG8KSUxMCuKWgdGA0L7Qu9GMCuKWgWFrdGl2CuKWgdC+0LHRgNCw0YnQtdC90LjRjwpXaWtpc3BlY2llcwriloFIw7ZoZQpjcm8K4pWQ4pWQ4pWQ4pWQCmFsdHJhCuKWgUZJTEUK4paBdXBzCuKWgWFsbG9jYXRpb24KTWljaGFlbAriloFhY2tub3dsZWQKTGludXgK4paBbWV0cm9zCnR0ZQphZmVuCuKWgXhjb2RlCuKWgdGC0YDQsNC00LgKc3BlY2llcwriloFpbmp1cnkK4paB0YHQsNC80YsK4paBbGF0dGljZQpNYXRlcmlhbAphbmRlbmJ1cmcK4paBaHV2dWRzdGFkZW4Kc3RvcnkK4paBdmFyeWluZwriloFrw7Z2ZXQK4paB0KDQvtGB0YHQuNC50YHQutC+0LkKaXJzZQriloFkcnVtClByZXNzZWQKTGFyCuKWgUFndQriloF3ZWlsCuKWgWNvbW1lbmNlCuKWgVNlZ8O6bgpHZXN0dXJlClNoYXBlCuKWgVZvcnMK4paBc3VjY8OocwriloFjb3JyZWN0ZWQKS2FyCuKWgWNydWVsCuKWgXBvbGl0aWNvCuKWgVNjaHJpZnRzdGVsbGVyCuKWgXJpc3VsdApldHUKYXJjaGl2CuKWgWfDqW5lcm8K4paBTMO8CuKWgXRyaXVtcGgKT1JTCkx1CuKWgXBlcnNvbm5lbAriloFIaWxscwphc3NldApkb21pbgpSZWNlaXZlCuKWgU9hawriloFLbm8K4paBVGhlb3J5CmlyaWUKb3dhbgriloFlc3RhdmEK4paBZXhlY3V0ZXMK0LnRggrDs3BlegrQv9C+0LvQvgrDqXRpY2EK4paB0L3QsNC30LLQsNC90LjQtQriloFjb252ZXJnZXMK4paBbm90cmUK4paBcG9wdWxhdGVkCuKWgW1vdmVtZW50cwriloFzdGF0aXN0aWNhbAriloFad2VpdGVuCnF1aW4K4paBaW1wb3J0YW50ZXMK4paBa2xlaW4K4paBU2VndW5kYQpzY2hsaWXDn2VuZApGYWlsdXJlCm5hcgpkYWcK4paBcnVvbG8K4paBZmljdGlvbgriloHQuNGB0L/QvtC70YzQt9GDCuKWgWNyaXNpcwriloFHZXR0aW5nCiwlCuKWgdCw0YDQvNC40LgK4paBY2FtcHVzCuKWgWZvb3RlcgriloFkw61hcwrQsdCw0L0K4paBbGliZXJ0eQriloFnaAriloFjaGFtYmVyCuKWgWRpc3RyaWN0cwriloFleGNpdGVkCuKWgWNhbmNpw7NuCnRlcm8K4paBV29ya2luZwriloFjesSZxZtjaQrQu9GM0L3Ri9C5CuKWgWZvcnVtCuKWgUVoZQriloHQutCw0YLQsAppdGF0aW9ucwpUb29scwphY2hpdgriloFjcmVzCmFzdG8K4paBcmV2ZXIK4paBbmF6aW9uYWxlCuKWgWRvb3JzCuKWgU5hbmN5CuKWgWlzbGFuZHMKSW1wCuKWgUNoYWlyCuKWgXZvcm0Kc2VpbgriloHQtNC+0LrRgwplcnNldAriloF0w6R0aWcK4paBS3JpdAriloHQv9GPCuKWgWNvbnNlcnZhdGlvbgriloFQYXJ0aWRvCm1pbmlwYWdlClZhbGlkYXRvcgriloFyZWNvdmVyeQriloFOQVNBCuKWgWJyZWFzdAppbHR5CmFuYWx5CmVsaW5lcwriloFTYXR1cmRheQplbWFyawpjZWoKWmVybwriloFUdXJuZXIKc2VjdXJlCkV4aXN0cwriloFSaWNrCmV2YWx1CmN0cmwK4paBY29tcHJlc3Npb24K4paBQ1VSTAp0ZXh0Y29sb3IKKVwsCmxvbmdyaWdodGFycm93CuKWgUZlcm5zZWgKaWNoYQriloFsb2kK4paB0J7RgtC1CuKWgWNhdmUK4paBZG96ZW4K4paBZXhwbGFpbmluZwriloFpbm5vdgriloFOaWNob2xhcwriloFkaWFtZXRlcgriloFNYXJpYW4K4paBZmlyZXMK4paBYXJ0aWZhY3QK4paBUGFya2VyCuKWgUJ1bmQK4paBdmVydGUK4paBdGFsZW50CuKWgUx1Y2FzCnJldmVyc2UK4paBZm9sZ2VuZGVuCuKWgVNhaApqZWN0aW9ucwriloFpbnZlY2UK4paBY29zdGl0dQriloFzc2wKfX1eCuKWgXZpb2xlbnQK4paBc3BvcwpSb3V0CmpkawriloHQt9Cw0LzQtQriloFmdXJlbnQKYW5kYWwKSG9tCuKWgVNlbmlvcgriloFwb3VuZHMK4paBRGlzY29ncwriloHQt9C1Cid9WwriloFOYXBvbGVvbgpvcmRpbmF0ZXMKw6BuCuKWgWt1cnoK4paBdmVyZQriloFyZXVzZQriloHQk9C10L0K4paBU3lzdAriloFkaXNhcHBlYXJlZAriloFXYXRjaApiaWJsaW90aGVrCuKWgdC60L7RgNC/0YMK4paBQ3MK4paBfWAK4paBcsO2cgriloHQtNC10LvQsApWQgriloFjYWxjdWx1cwrRgNC+0LTQsAriloFqdWRnbWVudAphdGlsZQriloFsb25ndWUK4paBSHVzCkphYwp9fSkKUklQVApJQUJvdAriloFhcMOzcwriloFhc3RvbgpXZWJhY2hpdgriloFVUkxzCuKWgWNvYXQK4paB0Y3QutC+0L3QvgriloFsZWFyCmV4dGVuc2lvbnMK4paBQ2xhc3NpYwpUSQriloFUYWdlCuKWgWzDoQriloFzZW1iCuKWgWTDqXZlbG9wcGVtZW50CklTVFMK4paBc29sdmVzCixcLAriloHRh9C10LzQv9GWCm9yZGluYXJ5CuKWgUJhdgriloFtdWNob3MKU2VsZgriloHQnNCw0LkK4paBRGlldAriloFuZWNlc3NpdHkK0LLRltC0CuKWgW1hbm8K4paB0KHRgAriloFjYXJyZQriloFDYW1lcmEK4paBTmFyb2QK4paBUGhvbmUK4paBcG9seW0KaW1vcmUKaXNFbXB0eQriloFIb3VzdG9uCuKWgVJlY2UK4paBcHJlc2VudGF0aW9uCtC90LjRhtC40L/QsAriloFEYgriloFjb25maWRlbnQK4paBfXsK4paBYnVsbGV0CuKWgXt9LApBTkdFCuKWgU5vdHJlCmNoaW4K4paBRHJhZ29uCmVyY2EKaWFsaQriloFhc3NldAriloFtdWl0bwriloFkZWVwbHkK4paBcmVzdHJpY3Rpb24K4paBY29tbWVyY2UK4paBQm9tYgpjYXVnaHQKcXEK4paBQXJhZwriloHQvdC10LzQtdGGCuKWgUFuYWx5c2lzCuKWgcSNbMOhbmt1CuKWgWJhYnkK4paBZWNodGVyCuKWgdC+0LTQvdC+0LPQvgrQttC10L3QsAriloF3aGl0ZXNwYWNlCsOndQpMSVNUCmZyaXF1ZQriloF2YXJpYXMK4paBV2l0CuKWgUxpY2VuY2lhCkV4aXQK4paBc2llcnAK4paBYXNzZW1iCuKWgXNwbGl0dGluZwriloFwYWxhY2UK4paBYmxvY2tlZAriloFib3VuZGFyaWVzCuKWgWl0ZXJhdGlvbnMK4paBUm90dGVuCuKWgVZlcmtlaHIK4paBd2VlcgpUZXN0cwppZnRpbmcK4paBcmVndWwK4paBcGVyc2lzdAriloFTb2x1dGlvbgpwYgriloFjb2xsYXBzZQriloFhcnJlc3RlZAriloFwcmVkaWNhdGUK4paBWm9uZQriloFpbmdlbgp6w6FsZXoK4paBYmFua3MKcGxhbnQK4paBTmVsbGEK4paB0LHQsNC9CuKWgVNub3cK4paBS3JldXoKw61jaW8K4paBZW50ZXJzCuKWgWV4cG9zZQrEjWkK0YjQuNC1ClF1YWwK4paBbGFuZHNjYXBlCuKWgdC/0L7QtNCw0YbQuNC80LAKbWFpCnN0YWcK0L7QstCw0L3QuNC5CkRFRgpbXXsK4paBZGVybmnDqHJlCmljdXQK4paBWG1sCuKWgXN1Ymdyb3VwCuKWgVBvbHNjZQriloFXYXJuaW5nCuKWgXZlaGljbGVzCmlvdAriloFkbGwKcm9udAriloFMb3Vpc2UK4paBYXJhCuKWgVNjYWxhCuKWgWNhbm9uaWNhbAriloFwbGFjaW5nCkVSWQriloFKYWcK4paBdmlydXMKZW11CuKWgX0pOw0K4paB0LzQvAriloFUcnlpbmcK4paBTGV4aWtvbgphYm9yZAriloFleHBlZGl0aW9uCuKWgWRlbWFuZGVkClp5ZwpsZWluCuKWgXZlcndlbmRldArRgNC40L3QsAp3b2wK4paBcGl2b3QK4paB0L7QtNC90LDQutC+CuKWgXByb3ByaWV0CuKWgWF3YXJkcwp0b3V0CuKWgWFzc2ltCuKWgVN0b3JtCkxpbWl0CmVsaW4Kd2VhbHRoCnVlegriloFyYXBwcmVzZW50CuKWgXJlc3RhCuKWgWdlZ3LDvG5kZXQK4paBam91cm5hbGlzdAppc2llCuKWgWZhY2lsaXR5CmlsbGVkCnVsawriloFQSwpBbmNob3IK4paBXykKVkYKTEFCCuKWgW7DpQpvZG9zCuKWgWJpbGxpb24KdmlydGkK4paBSmV1eArRjtC30LAKdG9tY2F0CuKWgWNoYXJ0cwriloFCdW5kbGUK4paBbHN0CuKWgWV4ZXIK4paBZmVtYWxlcwriloFvYmxpZ2VkCuKWgWFieQpyb2xsZWQKZHJpCuKWgVNjaGUK4paBdmVzc2VscwpJTUFSWQriloFyZWFzb25pbmcK4paB0L/RgNC+0YLQtQpGSUxFUwp2ZXJrCm9zb3MK4paB0LrQvtC80LzRgwrQtNGW0ZcK4paBZGQK4paB0YHQvtC+0YLQstC10YIK4paBSU9FeGNlcHRpb24Kc2vDvWNoCuKWgUNMSQriloHRmtC1CkNNClRECuKWgXBvc3NpYmlsaXRpZXMK4paBQ29tcG9zCmhhbGYK4paBd2VicGFnZQriloFzd2luZwriloF6YXMK4paBY3ljbApsZWlkCmlzdGljYQriloFJbnNlcnQK4paBU3dlZGVuCuKWgXdhbnRpbmcK4paB2KfZhAriloFlZXV3CuKWgUFkbWluaXN0cgriloFXYXJyZW4K4paBYnMK4paBcGFtCmFudXMKRHJhCmV4cGwK4paBS2FudAriloFBdXN0aW4K4paBY3NhawriloF0aGVhdHJlCuKWgWNvbXBhdGliaWxpdHkK0LzQsNGC0LjRh9C1CnNldFN0YXRlCtCx0Y4KfXt8CuKWgUR5CuKWgVp3aXNjaGVuCkFsdApDTEFSRQpzdGVwcwriloFMYWdlCuKWgU1pdHQK4paBRHVibGluCuKWgdGA0LDQsdC+0YLRiwpkZWVwCuKWgWZsb3dzCuKWgVBhbGFjZQp1bml4CnJlZnMKdW1hcgphc2V0CmNvdgriloFwaW5nCuKWgVNhZmFyaQpmbHVnCmNyZWVucwp7IwriloHRgNC10LAKYWRvcnMK4paBYW1vcgp1Y2UKZGVtaWMK4paBTmV0aGVybGFuZHMK4paBY2x1c3RlcnMK4paBZW5mb3IKbWFyaW5lCuKWgWJ1Z3MKaXp6YXRhCuKWgXNjcmEKTGVzCnF1aWNrCuKWgXR1cm5vCl8qCtC10YDQsApHZW5lcmF0ZWQKPlsK4paBZXN0cmUKb3JkZQriloF2ZXJnCtGA0L7QtwriloFwYXUKaW5jbHVkZXMKYXNzYQphZGVycwriloHQk9C10YDQvNCwCuKWgWVzdGF2ZW4K4paBZWFybGllc3QK4paBcmVzdWx0YWRvCm11bgriloFwbG90cwpkaW4Kc29ydGVkCuKWgXByZWZlcmVuY2UKcmnDswrRgtGD0YDQtQriloFMaWd1ZQriloHQt9Cw0LLQtdGACnBocgriloFwb2NrZXQK4paBcGFybAriloFsYWsK4paBcG93aWUK4paBYWx0cmVzCiR9OwpwbGFpbgriloFDcmVkCml0emEKcGVycApHcmVlbgriloFkZXZvdGVkCnByb2R1Y3Rpb24Kd29ya2VyCmVsc2VuCuKWgXZlcm4K4paBbcOhcmNpdXMK4paBQ29uZmVkZXIK4paBTGl2ZXJwb29sCuKWgdC80YPQt9C4CuKWgWVtYWlscwriloFkaXN0YW5jZXMK4paBc2VnbWVudHMK4paBYW50aAriloF3cmVzdAriloFob29nCuKWgWNpbmVtYQpycm9yCuKWgWdlYm9yZW4K4paBw6ljCk1hcmtlcgriloFDb21wZXQK4paB0LvQuNGB0YLQvgphbGxvd2VkCnZvbHVtZQpFc3BhZ25lClplCuKWgWZpeGVzCuKWgXJvbmQK4paBYXJyYW5nZW1lbnQKL34KLl0oCuKWgUZvcnLDoXNvawriloF3ZWl0ZXJlbgpleGNlbAriloHQt9C80ZYK4paBbW9kZXJuZQpFbmdsaXNoCuKWgVRyYW5zZmVybWFya3QK4paBYmVhcmluZwriloFjbGVhcmVkCuKWgdGB0LDQvAriloFkaXZzCsSHaQriloHRjdGC0L7QuQriloHQk9C10L7RgApzY2VuZQriloFhZ2VzCkdFTgpyw6RuCuKWgVRvdWwK4paBQWJzCmrDoXQK4paBbWVkaWFudGUK4paBZW1wcmVzCuKWgUVtcGxveWVlCuKWgXBvbHlub21pYWxzCuKWgW9wdGltaXplCuKWgdCy0YvRgdGC0YPQv9CwCmZhcmUK0LLQtdC5CnhmCnF1ZXoK4paBYm90YW4K4paBZGVmZW5kCuKWgVF1YXJ0Ck1vbnQKdmIKdGljawpXRAptaW5lCuKWgW1vZGlmaWMKbm90aWZpY2F0aW9uCuKWgWRlbm4K4paBYWxnbwriloFTcG8K4paBbWlzdHJ6b3N0Ci86CuKWgWFwcmVzZW50CuKWgdC/0YDQvtC0ClZvbHVtZQpza8SFCnByb3RlY3RlZAriloFUdXJraXNoCmF6eQriloFwb3V2CuKWgXBlcsOtb2RvCnNrb2cK4paBZW50cm9weQp6ZWQK0YLQvtGA0LgK4paBbGlqCmJvYXJkcwriloHRgdGC0LDRgtGDCkJvb2wK4paBcG9saXR5CkAiLAriloHRgNGW0LoKbsOpZQriloFadWcK4paBVW5pdGkKw6ltZXQKYXRpZW5jZQpkaW1lbgriloFTdGV2ZW4KSGEKQUNUSU9OCuKWgXdhbmQK4paBTmF2YXIK4paB0YHRltGH0L3RjwpXYXRjaAriloFTdHVhcnQK4paBemRlCuKWgdC60L7QvdGC0YDQvgpkYXRhc2V0CnnDswriloFCdXNoCuKWgdGB0LXQsdGPCuKWgXdvcnRoeQriloFCbGUK4paBcHJvcG9yCuKWgVZpbGxhZ2UK4paBcnkK4paBdm9pdAriloHQutC+0L/QuNGPCuKWgXpwCuKWgWN1cmEK4paBSHRtbAriloFEaWVzZXIK4paBRGF5cwpvbm5lcwriloFhbnRpZ3UK4paBU3RhYXRlbgriloFmYWludApvbmdzCuKWgcO2c3QKUmVkaXJlY3QK0LXQu9GMCmF0b3JpYWwK4paBYm90aGVyCkVkaXRUZXh0CuKWgUdpdWwK4paB0LfQsNCy0L4K4paBcHVlYmxvCuKWgU1pc3Npc3NpcHBpCmphawriloF3aW5ncwpvbmMKw612ZWwKaWVuY2lhCmVudGxpY2h0CuKWgUJUVwpvcm5hbAriloHQmtC+0YDQvgriloHQvtC00L3QuNC8CuKWgXNhbHYK4paBZmluZGVuCmdlbwriloHQsNCy0LjQsAphdHR1bmcKdml2CuKWgUx1dGhlcgriloHQvtCx0YnQuAriloFSb2xsZQriloFBYnJhaGFtCuKWgWNlbnRlcmVkCuKWgXNsYXNoCmlzYXQKZW1hbm4KT3MK0L/QsNGA0YLQsAriloFQYWJsbwriloFjb2xsYWJvcmF0aW9uCnBhdGhzCsOpZGl0aW9uCuKWgXZpZXdlZAriloFjb25zaXN0ZWQK4paBcmVjb3ZlcmVkCuKWgU1leGljYW4K4paBRml4CuKWgXNwZWxsClNwZWNpYWwK4paB0KHRggplc3NldXIK4paB0KPQutGA0LDQuNC90YsKZm9ybWVyCuKWgcWbdwriloF6ZXJvcwriloFTdHJhw59lbgriloFvcmdhbmlzYXRpb24Kw7xzc2VuCuKWgVNpZXJyYQriloFTZWFzb24K4paBdm9sb250CkJlYW5GYWN0b3J5CuKWgdC/0L7QvNC+0YkK4paBcHJlc3NpbmcK4paBZXF1aXZhbGVuY2UK4paBY2F0dAppY2l0eQriloFhY2NvbXBsaXNoZWQK4paBeW8K4paBc2ljCuKWgWltcG9ydHMK4paBYWNjb21tb2QK4paBUG9ydG8K4paB0Y/QutCwCuKWgWxvYW4K0YLQuNC60LgK4paBY2hlY2tvdXQK4paBYXNzZXNzCuKWgVBvcHVsYXRpb24KdXJlbnQKY2xvanVyZQriloFTYW50b3MK4paBaW5mb3Jtw6FjacOzClBPUwriloFnYXJlCuKWgWtpY2sK4paBcmFkaWNhbAriloFQZWFjZQriloFzdHJlYW1pbmcKY2FtcAp6xIV0CtCz0L7QstC+0YAK4paBUmVnaWVydW5nCuKWgXByb2NlZWRlZApmbQrQu9C10L3RiwriloFlYXJuZXN0CuKWgVBhcmFkCnJlcXVlc3RzCuKWgVJhdW0KxaHEjQriloFwb2xpY2llcwriloFUaWcK4paBc2l0dAriloFFbmVyZ3kK4paBcHVyZWx5CuKWgUhhdXQK4paBU3BlZWQKYmlvCuKWgW9yYW5nZQriloFiaWdnZXN0CuKWgWJyaXRhbm5pcXVlCuKWgU5vdGFibGUKdnUK0LvQtdC90LjQuArQsdC40L0K4paBTmFzaArRidC10L3QuNC1CuKWgWNpZWwKYWTDqW1pZQriloHQs9GA0YPQtNC90Y8K4paBam91ZQriloF2b3RlZApyaWNvCuKWgdCz0L7RgAriloHQutC+0LzQsNC90LTRgwppdGl2aXR5CuKWgdGJ0LUK4paBZGVmaW5pdGUKdXJvcGEKISIpOwpEZWZhdWx0cwriloHQvdC10LrQvtGC0L7RgNGLCsOpZMOpcmF0aW9uCuKWgXNpbGx5CuKWgXRhbGtlZApyZXUK4paBTG9tYgriloFzdGF0dWUK0LrRgtCwCtGO0YAKdW1hYmx5CuKWgdCz0L7RgNC+0LTQtQriloFSdW50aW1lCuKWgWRpYWduCuKWgXJldHJvCuKWgVN2ZXJpZ2UK4paBaW5pY2lhbAppZW56YQriloFmaWdsaW8K4paBem9nCuKWgXJleQriloFSdW5kCtGC0L3Ri9C5CuKWgWNlYXNlZAplcm5vCuKWgWVzYQriloF0cm91dgriloFHZW1laW5kZW4K4paBY29tZXJjaWFsCnNrYXAKZW5hcmlvCuKWgWp1cmlzClRCCtC90LDQu9CwCuKWgXZpagpWTwriloFjbGluCmrDtnIK0YHQsNC9Cm93YcWCYQpyaWJ1Y2nDs24K4paBdXJzcHLDvG5nCuKWgWNvbmRlbQriloFTdGFnZQriloFtaXhpbmcK4paB0YDRltC3CuKWgWZhbnMKaMOhegpzb2NpYWwKemFuCuKWgdGB0LLQvtC5CkNvb2tpZQriloFSb2xhbmQKYXppb25hbGUK4paBU2xvdmVuCuKWgUZpY2hlCuKWgVPDqQpow6QK4paBb2ZmaWNpYWxzCuKWgcOubnQKSW50ZXJjZXB0b3IKVGFibGVzCuKWgWRhdm9uCmluaXRpYWxpemUKXT0iCuKWgUJvZHkK4paBVXBwZXIK4paBQ29sbGVjdAriloFaw7xyaWNoCkhvcml6b250YWwKVHlwCuKWgXBvbMOtdGljbwriloFSZXdyaXRlQ29uZAriloFob3BlZAriloFhbnhpb3VzCkxpdGVyCmphaHIK4paBYXNzZW1ibGUK4paBY3J5cHQKbGFob21hCkFTSAriloHQkdGA0LgK4paBQ2ljCnR3aXR0ZXIKaHlwZXIK4paBVGVsbArRltC70YzQutC4CtCy0L7QsdC+CuKWgWJhemllCuKWgWNvbnRlbXBvcmFyeQriloFQYXJhbWV0ZXIKc3R3YQriloFiZWtlbmQKY29jawpwcmV2aW91cwplbnNrYQriloFjYWxsZXIKXV0pCuKWgVJhegriloFTZWxvbgriloFwcm9wb3NhbAriloFiw70K4paBU2llZAriloFBcmJlaXRzCuKWgXByaWRlCuKWgXNsb3BlCmlkw6kKZ3JhZGllbnQK4paB0JTQttC10YDQtdC70LAK4paBU0gK4paB0YDQsNC30YDQsNCx0L4KaXZlcnNpdHkK0YHQv9C+0LTQsNGAClx7XAriloHRgdGC0LDQu9C4CuKWgUVpbnplbAriloFyZ2JhCuKWgUFuaW0K4paBYWxsZXMK0LHQsNGACmVydGUK4paBcsOpYWxpc8OpCkluc3RpdHV0CuKWgW1hcmt1cAriloF2YXJzCuKWgWdhbQriloHQktCw0YHQuNC70YwKaXp6YQriloFDb2IK4paBTWV0YWwK4paBbGVhawriloFMYW5jClN3aXRjaApEZWxheQphdHV1cgriloHRh9C10YLRiwriloHQsNC90LPQu9C40LkK4paBbGVnYWN5CuKWgWRlc2Fycm9sbAriloF0b3BvbG9naWNhbAriloFqZXdlaWxzCuKWgU5lZGVybGFuZHNlCuKWgWF0bW9zcGhlcmUKdXJiYW4K4paBc2xvdgriloFsYXd5ZXIKcGVjaWFsbHkK4paBYWx0ZXJuYXRlCuKWgXBhcmFtZXQK4paBZXN0YWJsaXNobWVudAriloF3b29kcwpQRAriloHQvdCw0LgK4paBbWFuZwriloF3ZWNoc2VsdGUK0YHRjNC60YMKLj0K4paBZmlmdGVlbgpTVU0K4paBRnJvCuKWgUxFRApvd2FubwrRgdGC0LLQuNC1CuKWgURvbm7DqWVzCnRvbArFvHluCmNyZWYK0YHRgtCy0LjQuApob3JuCuKWgdGB0L7QvtCxCuKWgdC+0LHQvtGA0L4K4paBQ29tcGxldGUK4oCcKQriloFraW5kbHkK4paBQ2hhbWJlcgpzw6lnCldICuKWgWFtYmllbnQK0LrRgNC+CuKWgWNoZXZhbAriloHQvdCw0L/QuNGB0LAKZmx1CuKWgU9mZml6Cm1hdGUKbmF0dXJhbApzZXBhcgplbXByZQpWaWV3SG9sZGVyCmZ3CuKWgWxldGVjaAriloF0cmFpbGluZwphdHJpCuKWgUfDswriloFCb25uCuKWgXVubGlrZWx5ClJBTQplbnN0ClN0YXRzCuKWgdC/0L7Qu9C40YLQuNGH0LUKKS0tKAriloF0cm9tCiEuLi4K4paBTWVhbndoaWxlCtGB0YLQsNC90LAK4paBUmVpbm8K4paBQXJpc3QKJH19JQriloFzb2xlbQpjbG9zdXJlCmlnbmF0aW9uCsWCb2QK4paBZGl2b3IK4paB0LzQtdC20LTRg9C90LDRgNC+0LQKPSI8PwriloFtb2x0CuKWgXNraWxscwriloFDaXIK4paBRGVzcHXDqXMK4paBbHVuCuKWgWNvcm9uCuKWgUNvbWljcwrRgdGC0L7RgNC4CuKWgUl0ZW1zCuKWgVRoaW5rCtC40LPRgNCwCuKWgWdyb3dzCnBvcnRhbAriloFuaWNoCuKWgXJlc3RyaWN0aW9ucwriloFMYXUK0YjQtdC90L3RjwriloFTb3ppYWwK4paB0LrRlgptYW5hCuKWgWxpZXV0ZW5hbnQKQXR0cgp1bWVyaWMK4paBZHJpdmVzCmFzaXMK0LHQsNC5Ck5MClp5Z290ZQpwaHlzaWNzCuKWgWludGVybmFsbHkK0LLQsNC10YLRgdGPCkhpZGRlbgriloHQlNCw0YLQsAriloF1bnNhZmUK4paBUm9jCuKWgWluc3RhbnRpYXRlCnVkbmkK4paBUm9vbQriloHQn9GA0LXQtAriloFtYWphCmFjaG1lbnQKdXVpZApQcm9qZWN0cwpHcmUK4paB0LLQt9GPCuKWgUJsb29kCmljaWxlCuKWgU5vdXZlbGxlCkRvZXMK4paBbmlldXdlCsOhbGUKYW5ncwp3ZWFrCuKWgWFhbnRhbAriloHQldCyCuKWgURyZXNkZW4K4paBTG9zdArQutCw0YLQsAriloFpbnZvbHZlCuKWgWRlY2xhcmluZwriloFQb2xpdGljYWwKw6lyZXoKa29wCm5vdGlmeQriloFDdXJ0CuKWgXNjaGxpZcOfbGljaApnaGFuCtGG0LXQvdCwCuKWgWt3aWV0CsO8Z2VsCuKWgVNvYgriloFzdWJzdHIK4paBZWxsZW4KaW9uYXJpbwplbnNvbgpXSU4K0YHQv9C+0YDRggplbWVyCm5vbWUK4paBc21pbGVkCuKWgVNjaG1pZHQK4paBc21va2UK4paBVG9rZW4K4paBdmFndWUK4paBcHJvdmlzaW9uCnlhbWwK0L3QuNGC0LXQu9GMCm9uaWFsCsOpcG9xdWUK4paBTkMK4paBTkZMCnRlY2sK4paBYWxsbwriloFwcsOpY8OpZApjZW50cmFsCuKWgW1hamQK4paBY2hyb20K4paBWnVtCnZlcnNvCuKWgXZlcnNjaGllZGVuZW4K4paB0YHRgtCw0YDQvgriloFxdWVsbGUK4paBcsOpcApST1cK4paBaWhuZW4K4paBc2Vuc2libGUKfCQK4paBc2NodwriloFCUgriloFPcHRpb25zCuKWgXRlbnMK4paBY29ucXVpc3QK4paBbGllw58Kb3ZpcwriloHQvNGW0YHRgtCwCuKWgWVsYQpyaWZpY2UK4paBbG9rCuKWgVF1ZWVuc2xhbmQKQmluYXJ5CuKWgVJhaG1lbgriloFhYm9sCuKWgcSNw6FzdAriloFFZGluYnVyZ2gKaW5kZQriloFjYWxjdWxhdGluZwriloFPcmVnb24K4paBbGVnaXQK4paBTmFjaGRlbQphdGhvbgpQcml2YXRlCmlsbGF1bWUK4paBb2JzZXJ2YWJsZQpsZWFucwriloFyZW1hcmtlZAriloFoYWx0CtC90LjRhtGLCuKWgXN0YW1wCuKWgUFkdgpMb3VpcwppbW1pbmcKZ3J1cHBlCuKWgVBvbGljeQriloF2cmlqCmZ0cmFnCuKWgW9mZmljZXMK4paBcGFydGljaXBhdGVkCuKWgWVzY29sCuKWgSI8LwriloFub21icmV1c2VzCuKWgWRpdmlkCuKWgWFkdmlzCtC70YLQsNGC0LgK4paBPT0+Ck9yaWVudGF0aW9uCmNpZApDYXJ0CuKWgW11cm0K4paBYXNzZXoK4paBbGlua2luZwpidWlsZGluZwriloFyZWNvbm5hCuKWgXNob29rCm1hbmFnZWQKbGFuZGEK4paBTGXDs24K4paBY3LDqWF0aW9uCtC00L7QuQpvY2l0eQriloF3aWoK4paBd2llxZsKeHRhcnQK4paBTW92ZQpsdW5nZW4K0YHRgtCy0YPQtdGCCm9ybmV5Cm9wdGlvbmFsCm1hY3JvCkNvbmRpdGlvbgriloFzcXVhcmVzCuKWgW1pc3Rha2VuCsOhbnQK4paBUmlzCuKWgXNlbnRlbmNlcwplcmVhCuKWgW1pagpVbmQK4paBbm9tYnIKekEK4paBSW5kZXBlbmRlbnQK4paBcHJldmlldwppbWFzCuKWgW1hbGVzCmluZW50YWwKVGhhbmsK4paBcG9wb2wK4paBcG92ZXIK4paBZ3Jhc3AK4paBaW1wZWQK4paBY2FtcGlvbmF0bwriloFXZWkK4paBdGl0bGVkCuKWgUFkZW3DoXMK4paBUGFzc3dvcmQK4paBUGFtClVJTEQK4paB0LvQuNC/0L3Rjwp3ZXJiCi4uLi4uLi4uLi4uLi4uLi4K4paBUsOtbwriloF0ZWV0aApicAriloFTVwp1bGFpcmUK4paBc2VpemVkCuKWgVN0ZWYKw7psCuKWgXZpegppb255CuKWgWp1bnQK4paBa3RlcsOhCuKWgXdyemXFm25pYQo8PgriloFzdXJnCuKWgXR1dHRlCuKWgUhvYgrQv9C+0LLRltC0CuKWgXdvaGwK4paBdHJhZwriloFDcm93bgriloF0cm92YQrRgdGC0L7QstGDCuKWgVZpZW5uYQplc2VoZW4K4paBbWV0cm9wb2wK4paBcmVmbGVjdGVkCtGC0LXRgtCwCuKWgXRyYWR1YwriloFCYXN0CuKWgWVyc2NoaWVuCndvb3JkCigpIgp0YWxldAriloFyb2FkcwrQstC10LTQtdC90LjRjwrDvGhydW5nCuKWgWNvZ24K4paBVmFsbGUK4paBbGFuZGluZwriloFSZWdleAriloFJb3dhCmR6aWHFggriloFlcnJlaWNodGUKYXVtCuKWgWZvdW5kZXIKYXBvbGlzCkNvbXBpbGVyCuKWgWtvcAriloFtYXJjCuKWgdGC0LXRgNC40YLQvtGACikpYAriloFsZWkKZ2VvbgriloF3ZWFwb25zCuKWgWhvcm4K4paBZWxpZgriloFDYXBpdGFsCsSHZQriloFmb3JhbGwK4paB0Y3RgtCwCnByZXZpZXcK4paBRE5BCuKWgXNpZApvcmNoCuKWgVJhcwriloFhcmFiCkJlc3QK4paB0YHRh9C40YLQsAriloFMw7NwZXoKYW7Dp2EK4paBZnVua2MK4paBdGllbmVuCjsmCm11c2V1bQriloFFcnIK4paBcmVzb3J0Ck5vdgriloFrYWwKTVcK0YjRjAphbmNob3IK4paB0YDQvtC80LDQvQpsZWFkaW5nCuKWgW1hbnRlbgriloFTaWx2YQpkYWRlCuKWgWRlc2lnbmF0ZWQK4paBcmV2aXN0YQpPY3QKcGVyY2VudAriloHRg9C90ZYKaWRlbnRpZmllcgptYXNzCkBACnVsc2lvbgpnZXJtZWlzdGVyCuKWgXByZWRpY3RlZAriloHRgdCy0LgK0LbQvdC+0LkK4paBRXJnZWIK4paBY3VzdAriloFyZW1vdmVzCmNoYXJnCtC/0YDQuNC80LXRgAriloFmb3JtaW5nCmFzbWEKc3Rkb3V0CkZ1bgp5bWUKdGVyZWQKdXJzaXZlCmlnaGVkCuKWgdGB0LvQtdC0CnZlcmJhbmQK4paBTE9HCnJhbXMKw6lvbgplbmRyYQriloFCZXJlaWNoCuKWgXRlbXBvcmFsCuKWgWxhbmd1ZQriloFJbm4K4paBbW9yZW92ZXIK4paBdHV0b3JpYWxzCk1pZGRsZQriloHRgdC+0LLQtdGC0YHQutC40LkK4paBbWFpbnRlbmFuY2UKYXN1cmVzCuKWgXbDoWx0bwpCQVNFCuKWgWRpc2FwcGVhcgrRgdC60LjRjwriloFjb25vY2lkbwriloHQndCw0YMK4paBTGliZXJ0CuKWgUhhcm9sZAriloFsaWZldGltZQriloFUw7xyCuKWgXphd29kCm9taWMK4paBUmV0cmlldmVkCmFyY2hpdGVjdHVyZQrEjWthCmlmb3JtZXMKZGV2ZWxvcG1lbnQKb3JkbnVuZwpJbmYKbGViZW4K4paBU3RhcnMKc2lnbmFsCuKWgWdyYW1tYXIK4paBY29yc28K4paBV2FnbmVyCuKWgWdlaHQK4paBcm95YWxlCndhcm4KdW1ibGVkCuKWgWluc3RpdAriloHQqNC4CmhoCuKWgXJlZnVnZQriloFmYXZvcml0ZQppZXJ0bwriloFjb25kYWRvCuKWgVRoZXIK4paB0YfQtdC70L7QstC10LrQsAriloFGb29kCuKWgXNlaXpvCuKWgUluaXRpYWxpemUK4paBY29ubnUK4paBb3ZlcmxhcAriloFFbWlsCuKWgU1hcnTDrQriloHQttC+0LLRgtC90Y8KZXJ2YQriloFib2F0cwphw6fDtWVzCuKWgWRlcnJvdAriloFtYWxsb2MK4paBY29uamVjdApqawriloFzYXJlCtC70LXQvNC10L0K4paBc3VtcwpBdXRob3JpemF0aW9uCuKWgUt1bgpdJCwKZ2VtZWluZGUKb2RvdApkZWZpbgriloFlbWlzc2lvbgriloHQmtGA0LDRgQriloFhcHBhcnQK4paBc3RvcHBpbmcK4paB0KHRgNC10LQK4paBY29uanVnCuKWgWluc2lnaHQK4paBQnJvYWRjYXN0CuKWgVBNSUQK4paBYWR2YW50YWdlcwplbmVzCuKWgXJlc2lkZW5jZQpsamVuCmlzc2V1cgriloFwdWJibGljYXRvCuKWgUdpdEh1YgriloFQZXJ1CuKWgWdhbGF4aWVzCuKWgWFubm90YXRpb25zCmdhcwriloFyw6lwb25kCkpzCuKWgWluZGVwZW5kZW50bHkKTlAK4paBaW5xdQriloFncm91bmRzCkNvbXBvbmVudHMK4paBYW50ZW4K4paB0LLQtwriloFob3MK4paBc2ludAriloFoaWRpbmcK4paBd29qZXfDs2R6dApNZXNzYWdlcwriloHQv9C+0LrQsNC30LAKPT09CuKWgUFic3RyYWN0CuKWgWzDpG5nCuKWgUZvcm11bGEKZGF3bgriloFkZXNpZ25zCkltZwriloFQb3J0dWd1ZXNlCuKWgWluY2x1eQphdmlnYXRvcgriloFCcm90aGVycwriloFjb250aW5lbnQK4paBZXZpZGVudGx5CnJhY2UK0YbRjNC60L7Qs9C+CuKWgXJlY2sK4paB0YHQtdGA0L/QvdGPCuKWgUdyZXkK4paBYXBwZWFsCuKWgXVubGlrZQriloFwb3dlcnNoZWxsCuKWgXJhY2MKZmVycwriloFidXJuaW5nCmZhc3N0Cmluc3RhbGxlZAriloFHaXZlCuKWgWNvbG9uaWFsCuKWgeKCrAriloFSw7YK4paBY2hyaXN0Cm5laG0K0YLQsNC8CuKWgWNvcnBvCuKWgWNvbnZpcnRpCnl0ZXIKU3ltCuKWgUdyZWVjZQriloFtb3RoCuKWgUpvaGFuCuKWgW1vbmFyY2gK4paBRG93bmxvYWQK4paBY3JhZnQKdcW+CuKWgUx1a2UK4paBc3VmZml4ClwvCkhhdmUK4paB0LrQsNGA0YwK4paBY29tZm9ydGFibGUK4paBdGlwcwriloHQn9GW0YHQu9GPCuKWgdCx0YDQvtGY0LAK4paB0LjQvdGE0L7RgNC80LAKTVEK0LHRgNCw0L0K4paBdHgK4paBc2xhdmVzCuKWgWZpcmV3YWxsCuKWgUZvcmNlcwphdGlmCuKWgVF1ZWxsZW4K4paBdGjDqcOidHJlCtC70YzQvdGL0YUK4paB0YDQsNGB0L/QvtC70L7QttC10L0K4paBRGV0YWlscwprxIUK4paBbG9uZ2l0dWQKSU5TVAriloFuYXZhbApGZXJuc2VoCmVzc2VsCkdyYWQK4paBYmVsYW5nCuKWgWFnZ2kKWnlnb3RlSW5pdArFgsOzdwriloFTdWcKc2lsCuKWgWV4dGVyaW9yCtGJ0ZYKT1JECmVuc2VyCuKWgXJhcGlkZQriloHRgtC10LzQv9C10YDQsAppbmNpZQpTaQphdmFtCmFyZGVkCuKWgUFkZGVkCkVuZHBvaW50CmhhcmR0CtGB0YLRgNCw0L0K4paBZXN0aWxvCuKWgUhhegriloFtdXNzdGUKdW8KaWlpCuKWgcWZw60KYW56ZW4K0LbQtdC90LjQuQphaGEKQVJOSU5HCuKWgXJlbm92CuKWgWRpdmluZQriloFjb252aW5jZWQK4paBaHVtYW5zCuKWgWRlcGFydHVyZQriloFNZWRpdGVyCnFhCuKWgXBvc3Nlc3NlZAriloHRhtC10YDQutCy0LgKZ2l2CuKWgdGB0LLQvtGXCuKWgU9ydHN0ZQpSaWNoCnB1aXMKaW5jcmVtZW50CuKWgUhhbm5vdmVyCuKWgXVjegpEb25lCuKWgWFsZ3VucwpGSVgK4paBSGVyaXRhZ2UKcmVtb3ZlQ2xhc3MK0YTQtdGACuKWgWFiYwpEcgriloHRgdC10LzQtdC5Cns6CuKWgXNldWxlCnplaWNobnVuZ2VuCmFkZHkK4paBUGFyw61zCsO8c3NlbGQK4paBcmVjZXB0aW9uCmZvbGlvCnRpbnkK4paBcmVjZW5zZW1lbnQK4paBTnVyCuKWgWtpZXIK4paBZ21pbmEKc3RhYXQKw6FuZG9zZQrRh9C10YHQutCw0Y8K4paBc3BlYWtlcgriloFleHBvbmVudGlhbAriloFEaWV1CuKWgdC/0YDQuNC3CuKWgVJhZmFlbAriloFnZ3Bsb3QK4paBVGVtcGxhdGUKb3VyZQriloFJbm5lcgpvZ25lCmlnYXJlCuKWgUFydGUK4paBQ292CuKWgWF1ZmdydW5kCuKWgdCR0YsK4paBY2VyZW1vbnkK4paBU3BhcnQKamVjdGl2ZQp5aQriloFpbml6aQriloFsYXRpbgriloFOZXZlcnRoZWxlc3MK4paBRG9uZQrRgtGA0Y8K4paBQXJyCnNlYXNvbgriloHRgdC60LvQsNC00YMK4paBcG9kY3phcwriloFCZWF1dGlmdWwK4paBV2VsdGtyaWVnCuKWgdC30L4K4paBb3ZlcmNvbWUK4paBUHJhaGEK4paB0YDQsNC50L7QvdGDCuKWgXN1YnNjcmlwdGlvbgppZ2VudAriloHQv9C+0LrQsApsYXRleAriloFiZWFjaAriloHRgNC+0LrQsNGFCmdlZwriloFwcm9ibAphcmd1bWVudHMK4paBb3JnYW5pemF0aW9ucwriloFOYW4K4paBc3RvbmVzCuKWgUh1bnRlcgriloFyZWd1bGFybHkK0YjQvtCz0L4K4paBZmxleGlibGUKb3B0cwrDocWZCndpdHoK4paBJykKUEFTUwriloFrcmFqCuKWgWZha2UKaGVpdHMKb3NwaApwYXJzZUludApGQUxTRQriloFwcm9mZXNzCnBlb3BsZQriloFwcmVjaXAKZGlybmFtZQriloFwZXJwZXQK4paBVXBkYXRlZApyYXllZAriloFwcm92b2MK4paB0YLRgNCw0LLQvdGPCuKWgWNhdGVnb3JpZQriloHRgtC10L4K0YHQvdGDCm90cgriloHQktC10YDRhdC+0LIK4paBY29tcMOpdApDb3N0CuKWgXdpZGVyCuKWgU9idmlvdXNseQrQv9C40YHQsNC9CuKWgdC90LDRgdGC0L7RjwriloFzZWVraW5nCigpKSwK4paBw6lxdWlwZQriloFjb21taXRzCuKWgVN2ZW5zCtGP0LHRgNC1CmF0ZXJuCuKWgWhldGVyCuKWgUJvb3RzdHJhcArDqW7DqQriloFkZXJpdmF0aXZlcwriloFEZXRyb2l0CuKWgXByb3ZpbmNpYWwKb25vbWllCkVCCuKWgWN1ZXIK4paB0L7RgtC90L7RgdC4CuKWgdC90LXQuQopwrsuCuKWgUNpdWRhZApJQUwKenlzdAopIikK4paBQWxjCmJsb2dzCuKWgXBhcm1pCuKWgUFsYnVtcwriloFCb2xpdgriloFjbMOpcwpQcm9kdWN0cwp1ZXJkbwriloFnZWxhbmcKem5pawpoYWdlbgphbm9ueW1vdXMK4paBc3ZnCuKWgUNvbnNlaWwK4paBQXJpCmNvbGkK4paBY3p5CuKWgUNWCuKWgWZvcmQK4paBQXXDn2VyCuKWgUNJCuKWgXRlbXB0CuKWgU9yZ2FuaXNhdGlvbgrDocWhCuKWgWN5Y2xlcwriloFnZXNsYWNodAriloHQu9GO0LTQtdC5CsO9bWkK4paBU3BpZWxlcgplZmUK4paBTWFydmVsCuKWgXBvcnRhbAriloHQodC10YDQswriloFncmFkbwriloFoYW5kbGVycwriloFJbnRlcmZhY2UKQU1FCuKWgXNlcmlvdXNseQriloFCaW5kaW5nCuKWgVJhbmcK4paBbmFkYQpvY2UK4paBaW50ZWdyYQpvY3JhY3kK4paB0LDQu9GM0LHQvgriloFzdGFiaWxpdHkKVW5zCuKWgXZldGVyCi0tLS0tLSsK4paBc2VyYWl0CuKWgW9taXR0ZWQK4paBdW5jZXJ0YWludHkKb25pYW4K4paBcmVzdG8K4paB0LbQtdC70LXQtwriloHQvtC00L3QvtC5CuKWgUJldsO2bGtlcnVuZwriloFLcmFmdArRgdGC0YAK4paBTW9zY293CmxhbmUKYXJhYgriloFzcG9sZQriloHRgdCy0L7QtdCz0L4KPzoKU1RBUlQK4paB0LjQvdGC0LXRgAriloFzeW1wdAriloFMb3JlbnpvCuKWgWVqZWMK4paBcHJvc3BlcgpEQVQK0LvQuNC80L/QuNC5CuKWgXNoYXBlcwp2YWx1ZU9mCuKWgWFzc29jaWF0ZQriloFNZWRpZW4KRU5WCuKWgdGB0YDQtQriloHQtNGA0LbQsNCy0LUK4paBdGhlb3JpZXMKaGViCuKWgVdheW5lCuKWgVN0cmluZ0J1aWxkZXIKaXdlcnMK4paBTWFwcwpQaHlzClx9XAriloFQYXJ0ZQriloFIdWRzb24K0LvQvtC9CkxuZwriloHRgNGLCtGB0YLQtdC5CmxhdQphbmNlcgriloFDb3BwYQriloHQstGW0LnRgdGMCuKWgXVjYwriloFQYXR0ZXJuCuKWgWdhcmJhZ2UK4paBR29uesOhbGV6CuKWgUVuY3ljbG9wCmV0dGVuCkV4dGVybmFsClJFRgo+OwpsaWprZQriloFpbnRlcnNlY3QK4paBVW5sZXNzCuKWgWRlZXBlcgriloHQttGWCmRlbnQKbGVmCuKWgWNoYW5zb24K4paBZGlmZnVzCuKWgXByaW1pCuKWgVdpZWRlcgriloFhd3MKb3dhbmEK4paBc29jaWFsZQppa2sK0LvRjNC90L7QuQriloFkaXZpc2lvbnMK0LvQvtGB0L4K4paBQ2xhdWQK4paBWWEK4paBdm9jZQriloFCcmFuY2gK4paBZml0dGVkCm9ycgrDtHRlbApzdHJva2UKbGlzdGVuZXIKaW1hbgrQstC+0YHRgtC+CuKWgVNoYWgKSW50cm9kdWN0aW9uCuKWgW5ld2xpbmUK4paBdGlsZQonXSkpCuKWgXRyYXZhdXgKQ09ORklHCuKWgXF1YWRyYXRpYwpvbm5ldXIK4paBR2lvcmcK4paBaWRlbnRpZmljCsOpcmljYWluZQriloFVSVZpZXcK4paBTGliZXJhbAriloFLb2NoCuKWgUJlcmxpbmVyCuKWgW5vdGlmaWNhdGlvbnMK4paBU3VzYW4K4paBY2FkcmUK4paBS2xvc3RlcgriloFleGFtaW5lCuKWgdC10LTQuNC9CuKWgVVOSU9OCuKWgWFsdGVuCuKWgWZpbml0CuKWgXBlZGlnCmN5awriloFtb3V2ZW1lbnQKSU9TCuKWgdCx0YDQuNGC0LDQvQriloFib3V0CuKWgdCw0LLRgtC+0YAK0L3QuNGG0YLQstC+CtC10YLQvgpsZXJhCmNscwriloFMZXkKYW15CmFnZW5zCmFzaGVkCuKWgW9rcsSZCtCz0YDQvgplbGxldHQK4paBRmVsbG93CuKWgW1hbmlmb2xkCiQpLApsZGVyCuKWgXZvegriloFiZWdnCuKWgWJhcm9uCuKWgWZpZAriloFmaXJpbmcKaWxkYQpkZWsKQVUKaXRhcmUK4paBQXJhCuKWgUV4aXQK4paBY2luZW1hdAriloFpbnRyb3MK4paBY29udGFjdHMK0L/QtdC90LgK4paBbcO2Z2xpY2gK4paBU2luZ2Fwb3JlCnN0csO2bQriloFIZXJuCuKWgXNpeHRoCuKWgXB1YmxpY2F0aW9ucwp2aWUK4paBSGF0CuKWgWFjY2VwdGluZwrDoWMKc3R3bwriloFxdWlldGx5ClBob3RvCuKWgWJhc2tldAriloFlaWdlbnZhbHVlcwriloFtw6lkZWMK4paBT2xpbXAK4paB0YbQtdGA0LrQvtCyCmFsaW4KY29uc3VtCuKWgWxhc3NlbgriloHQsNC90YLQuAriloFTZXEKIjsNCnJhcmUK4paBJHxcCuKWgW5pY2sKZGZsYXJlClZlYwpiaW5kdW5nCuKWgWJnCmNoYW5nZXMKRGF5cwriloFNb3VzZQriloF3YWl0ZWQK4paBVG9tYXRvZXMK4paBZmFzCnZlcnRlCuKWgXN1Y2Nlc3Npb24K0YHQvtGACuKWgXNvbHMK4paBUmVuZGVyCuKWgWxlYWRlcnNoaXAK4paBc2lnbmlmaWNhbmNlCuKWgWdhdWNoZQpjYW5vCuKWgVBpZQplbnNvb3J0CuKWgWNhbWJpbwriloHRg9C3CuKWgWVuZGVhdgpDb21wbGV0ZWQK4paB0JDRgNGF0LjQstC90LDRjwpqZArDs3JpY28K4paBY2h1cmNoZXMK4paBYW5pbWF0ZQpTRwpjb21wdXRlCuKWgXVuaWZvcm1seQpJTklUCmxsZXMKSHR0cFJlcXVlc3QK0JrQvgpEaWZmCuKWgXNhaAphaXJvCm1heWJlClVURQriloFEb3cKaHVtYW4K4paBYXVyYWl0CmRhcmsK4paBcmVwYWlyCuKWgW5lcgriloFEYWJlaQriloFCb3RhbgpPcmlnaW5hbAphesSDCuKWgU5BVAppbXBlcgriloFZb3V0aAp0aGVzCuKWgdC+0LrRgNGD0LPQsAriloFGbG8K4paBYnJlYWtmYXN0CnVybHMK4paBw7xiZXJuYWhtCsOhcmlvcwriloFPcmFuZ2UK4paBQWZmYWlycwpza2UK4paBbm90aWZ5Cmltb2luZQriloFBcmVuYQriloFsaWJlcmFsCuKWgW9iZWMKaWZhCmd1ZXoKaW9ubwrQv9C10YDQsNGC0L7RgAriloFyZXRhaW5lZApmYWlsZWQKYmluZQrRgtC90YvRhQriloFDR1JlY3QKY2FtZXJhCmlkZW5vdGUKS0IK4paBbGlnaHRzCuKWgVBpY3R1cmVzCuKWgVNxdWFkcm9uCuKWgVZvbGsK4paBYnVyZwosXQpHaQrDqnF1ZQptYWtlVGV4dAriloFldmVyeWJvZHkK4paBSHlwZXIK4paBRGV1eAriloFnbG9yeQpwcmVzZW50YXRpb24Kb25pY2EK4paBZnLDqHJlCmFnZXQK4paBaGludHMK4paBdHVubmVsCuKWgUVqCsOhbGlzCuKWgVZpdgrRgdGC0LLQtdC90L3Ri9GFCuKWgWNhcHMKUEFSVApvY2kK4paBcHJpY2VzCmN1cnJlbmN5CuKWgWFjaHRlcgpyb21hZ25ldApnZW5kZXIK4paBc3Vpcwp2ZXJzaW9ucwriloFUcmFpbmluZwppbnNpZGUKZWdlCuKWgXRvdGFsZQriloFEYWFyCuKWgWdydWRuaWEK4paBSWVyCuKWgW9jY2FzaW9ucwriloFrZGUK4paBdGVuc29yZmxvdwriloHDs3IKTWV0aG9kcwriloFsb29waW5nCuKWgWRpcmVjdGV1cgprxJkK4paBaXNvbW9ycGhpc20K4paBSm/Do28K4paBYWxpZ25lZArQvtC90L7Qsgp1cmdlcgriloFub3ZhCm1vcnJvdwphbHRlcm4KSEQK4paBbWFycXUKYXRpdmFzCmdncmVnCuKWgWFuY2llbgpuaXQK4paBc2VjdXJlZAptaWVyCuKWgU9sZQriloHQuNC90YLQtQriloFtaW51cwriloFjbGVhcmVyCuKWgW5lbGxvCuKWgWluZm9ybcOhY2nDs2sK4paBcHJvcHJlCnsuCmlsb2cK4paBUXVpY2sK4paBYWNjdXMKZW1wbG95ZWUK4paB0LfRgwrRhtGM0LrQuNC5CtGE0ZbRhtGW0LkK4paB0L/Rg9Cx0LvQuAriloFiZW50CuKWgdC/0L7Qt9Cy0L4K4paB0J/QvtGACsOhesOtCsOhbmljbwplbXB0eXNldAriloFzdXJ0b3V0CnJlbm8KdW55YQriloHRg9C10LcK4paBTWlsbGlvbmVuCuKWgWxpc3RvcGFkYQriloFNYWluZQriloFncnVwb3MK4paBU3RvcmFnZQriloFhcHBsZQriloFMw7YKb3VzZWQK0LTRgNC+CnNjaQriloFoaWJlcm5hdGUKZG9nCuKWgdCy0L7RgdGC0L4K4paBaW50ZW5zaXR5CmxlZ2VuZAriloFXaWxsZQriloFzemVyaW50Cmdlc2VsbHNjaGFmdAriloFMaXZpbmcKYWxsbwriloFTcGxpdApkcnUKbmVlZAriloHQlNC20L7QvQriloFTd2lzcwriloFzcHJhdwriloFiZWhvCuKWgWZvdG9ncmFmCuKWgXJlbmNvbnRyZQriloFraXMK4paBc2lnbmluZwpha3VsdAriloFpbmRleGluZwphcG9yCuKWgWNvbmNlcHRpb24KYWdncmVnCuKWgdCh0LDQstC10LcK4paBYWZmYWlyCsSbbsOtCkF1Z3VzdAriloHRgdC10LrRgNC1CuKWgW1pZXN6a2HFhApVSUltYWdlCuKWgWJpc2hvcAriloFzZXJ2YW50cwriloF0cmFpbApkaWdpdAriloFqb2lucwriloFOZWFyCsO2ZmZlbnRsaWNoCj57CuKWgXNrxYJhZApnZWbDvGhydAriloFIb2x6CuKWgU1pbGl0w6RyCmFjaGkKVXBwZXIKcGluZQp1dHp0CuKWgW51b3ZhCmlicmF0aW9uCuKWgUJpZW4K4paB0L/QtdGA0LLRi9C5CuKWgUNyZWF0aW5nCk9uY2UK4paBZWlubWFsCuKWgWdlb21ldHJpYwpzdHZvCuKWgWtXCuKWgWRlY29tcG9zaXRpb24K4paBY29tZWR5CuKWgWFjdGl2YXRpb24K4paBYW5ncnkKaWxsZXVycwriloFpbnN0YW50bHkK4paBc3VnZ2VzdGluZwriloFDbGF5CmNvdAriloFHw6luCigkKAp1bndyYXAK4paBbGlmdGVkCuKWgUtpdAriloFsaW5lYQrQvtC6CmhhcnQKLT5fCuKWgW51aXQK4paBSXNzdWUK0LvQuNC4CuKWgXLDtm0KVGFza3MK4paBU3IK4paBc2Vpcwphc2lhCn19JC4KOnsKY29udHJvbHMK4paBU3RpbQriloFSZWNodApvY2lhY2nDs24K4paBTmF0YWwK4paBUGhpbGlwcGluZXMKdWxlbgpGaXhlZAriloFzd2l0Y2hlZApaaXAKb3NwZWwK4paB0L3QsNGH0LDQu9C1CuKWgUJsYW4KdXJzdAriloFhdXRvdXIKQ2EK4paBbGF0aXR1ZGUK4paBRnJlaQriloFNdXPDqWUK4paBS3VyegriloFyZWdpw6NvCnN3YXAK4paBaGF0ZQriloFtb2RpZmljYXRpb25zCuKWgdCa0L7QvAriloFBbnRvaW5lCnVnYQpSRUNUCsOpdGVyCkdST1VQCuKWgXNhY3JpZmljCuKWgVdoZQriloFTdGV2ZW5zCm9sb2dpc2NoZQpTdW1tYXJ5Cm9icwpobmVuCjwlPQpkaWVuc3QKcmVtYXJrCuKWgXZlcsO2ZmZlbnRsaWNodArQtdC7CuKWgU1vY2sK4paB0JvRjNCyCuKWgXRyw6pzCmdiCuKWgWNlbGVicmF0ZWQK4paBRWIK4paBY29zdGEK4paBR2VvZ3JhcGhpYwriloFhdHRhY2htZW50Cm1hbm5zY2hhZnQK4paBZGVwZW5kZW5jZQrvv73vv70K4paBYXR0aXR1ZGUKZXRhbAp2aWMKYmF1dAriloHQtNC+0LIK4paBaW50ZXJ2ZW4K4paBR8O8CsOzbmljYQriloFQb24K4paBZGlzcG9uaWJsZQriloFGZWIK4paBd29yc2hpcAriloFTcGVjaWZpY2FsbHkKSHkKaWp1CuKWgWNiCuKWgXNwYWMKbGV2ZWxhbmQK4paBbG9jYWxpZGFkCuKWgXByZWNlZGluZwriloFIZXNzZW4KeHAK4paBV2VpbgriloFSb23DogriloFnaW9ybm8K4paB0LrQstGW0YLQvdGPCmxsYcOnb3MK4paBQWNhZGVtaWEK4paBa8O8bAriloHDhXJzCuKWgdC90LDRmAp1Y2xpZGUKSW50ZXJuZXQKb3J0b24K4paBY29ybgrRj9C80LgK4paBIioK4paBRmVsaXgKYXBhdAriloHRgdCy0L7QuApNSVQKbWFkZQriloFsb2NvbW90CtGF0L7QtNCwCkZQCuKWgXBtCi4qOwriloFIYW1tCmB9CkxheW91dEluZmxhdGVyCj09IgriloFFdXIK4paBZG9ncwrQttC10L3QuNC4CuKWgWF6b24K4paBZW11bGF0b3IK4paBcmljb24KYmVlbGQK4paB0L3RgwriloFhcHByb3hpbWF0ZQpMTQriloFCb25kCuKWgWVuaArEmWR6CuKWgXNvbGl0ClJlbGF0aXZlTGF5b3V0CmV0ZW9yCmFtZW50b3MK4paBaW5kaXJlY3QKaWLFkWwK4paBZ3JvcwriloFPcmlnaW5hbHMKY29tbWFuZHMKRXhwb3J0CuKWgUF2ZWMK4paBc29sZW1uCuKWgWNvcnJlY3Rpb24K4paB0L/RgNC+0LLQvtC00LgK4paBTW9zawriloHQv9C+0LTQvgriloFnZWJpZWQK4paBbmFzdMSZcAriloFEcml2ZXIK4paBT29rCuKWgVZlYwriloFsdW5nbwpmaWNvcwriloFzdm9sCuKWgWtpZApuamEK4paBSHIK4paB0L/QvtC00LTQtdGACuKWgXZpc2liaWxpdHkK4paBTcOpZAriloFjcHUKZGlzY3Vzc2lvbgpBc3NldAriloFkZWZlbnNlCuKWgUFueW9uZQriloFKdXN0aW4KaXN6dAriloFDb2xsaW5zCuKWgVZhbGVudAriloFQYWxlCuKWgWZ1ZWwK4paBbm9zZQpyw61ndWV6CuKWgVNjaGxlcwriloFNYWxheXMK4paBY29tbXV0CmRybwp1aW5nCuKWgVJpY28K4paBRW1tYQpvcnAK4paBS2lyawriloFRdWFuZG8K4paBTmV1ZQriloFkZW1hbmRlCuKWgUNvdmVyCuKWgXJlc2N1ZQriloFnZXfDpGhsdAriloFDYWxlbmRhcgriloFNYWRvbm5hCldQCm9zaGkK4paBTWF2ZW4K4paBYmVsbGUK4paBd3gK4paBc3VnYXIK4paBQmV0cmllYgriloFlcXVpbGlicml1bQpFQVIK4paBdGV4dHMK0YHQu9C+0LIK4paBY3plcndjYQriloFEw7xzc2VsZAriloFFTFNFCuKWgWFtZXJ5CuKWgWFuaQriloFvYmV5CuKWgU5lbGwK4paBaW5uZQriloHRgtGA0L4KRkQKY2NvCuKWgVpvYgphbGV0dGUK4paBbcOhanVzCmVjdGVkCuKWgVR1cmtleQriloFXaGV0aGVyCnFpCuKWgdGI0YLQvgriloFoZWFkcXVhcnRlcnMKZW5kaQphcnVzCm9wdXMK4paB0LfQvtC70L4K4paBZGVzdHJ1CuKWgUxvawriloFzYXRpc2ZhY3Rpb24KKCkNCuKWgdCi0LXRgApKb3NlCuKWgWNvbnF1ZXIK4paBRWZmZWN0CkxheW91dFBhcmFtcwppZXoK4paBZXh0ZXJucwriloFnZWdlbsO8YmVyCuKWgUVTUApvbHRhCnByb2Nlc3NvcgriloFLdWx0CuKWgUF0bGFudGEK4paBdGllcgpPcGVyYXRvcgriloHQtNC40LAK4paB0L/QuNGB0YwK4paBZ3Jvw58K4paBaGVhcnRzCuKWgW1pbGxpbWV0ZXIKYWx0aG91Z2gKYWxsZXMK4paBTWFnaWMKdHJhaW5pbmcKb2xpbmUK4paB0L7RgNCz0LDQvdGWCj5cPF4K0YbRltCw0LvRjApleHBvcnRzCldvcmtib29rCuKWgdCy0LXRgNC10YHQvdGPCuKWgXRlbGVzCuKWgWVjb25vbXkK4paBdHJhcAriloFyZWZ1c2UK4paBc3RyYW5nZXIK4paBaW5zdGluY3QK0L/QvtC00LAKb2xhbgriloFuaW5nCmluZmxhdGUKaXRhdGVhCmFja3MK4paBSm95CkZMQUcKYWlsYW5kCuKWgXNvcnRpCuKWgdCy0L/QtdGACuKWgXDDqW4KTm90aGluZwriloFzesOhegriloHDgW5nCuKWgUFVVApBY3Rpb25zCkV2ZXJ5CuKWgdGH0LXRgNCy0L3RjwriloHQsNCy0YLQvtC80L4K4paBcm91dGluZQriloFlc3RydWN0CuKWgUdhbmcK4paBaG9sZXMKdGhlc2lzCuKWgWNvbmNsCuKWgXDDqQpyaWVycwrRgNC+0LLQvtC5CmFkaWMKU3BlZWQK4paBY29tbWFuZGVkCuKWgU5hemlvbmFsZQpNYW5hZ2VkCuKWgURFQ0xBUkUK4paBc2VkYW4KU3RyaW5ncwriloFzYWNyZWQKdGVyc3VjaAriloFhYml0YW50aQpicml0CuKWgU5DQUEK4paB0KHQnwriloFhZ2VkCuKWgUNoaWVzYQriloFyZXZpc2lvbgpvcHJvCuKWgW92ZXJ3cml0ZQplbWJyb3MK4paBc29ydGllCuKWgW90dGVuCnhpdgriloFkZWxpCuKWgUFzcAriloFiYWxscwprYWYK4paBYnJhdmUK4paB0LLRgdC10LPQvgplZ24KanBlZwriloFPc3RlbgpDb25zdGFudHMK4paBSW5mYW50cnkK4paBTmV2CuKWgdGP0LrQuNGFCuKWgdC80YPQvdC40YbQuNC/0LAKY2lqYQriloFwb2VtCuKWgW5lZ3JvCtGF0LDRgAriloFBc2sK4paBYXZvCuKWgU1leWVyCuKWgVdlc3RlbgriloFva28KYWdpbgriloFTw7xkZW4KZW50cmllcwriloFSZXB1YmxpawpDb2xsZWN0aW9uVmlldwotLS0tLS0tCuKWgWZpcmVmb3gK4paBYWxjdW5lCuKWgdGE0L7RgtC+CuKWgdC+0YLRgNC40LzQsAp+fn5+fn5+fgriloHQoNCw0LcK4paBQ29tcGxleAriloFwaWEK4paBcHVibGljYWRhCndlaQpjZWR1cmUKb2NjdXBhdGlvbgriloFtZWRpY2luZQriloFkcm92ZQpQcm9ibGVtCuKWgWJlZ2lubmVyCuKWgXRob3JvdWdobHkKdXJpYQphdmFudAp1Y2hhCuKWgWxldmVyCuKWgXRlYXRybwpBVkEKc3F1CnRyYXQKaXZhdGFsCuKWgWRpcnR5CuKWgXNlY29uZGUK4paBZ3Jhdml0CuKWgXByb3Bvc2l0aW9uCmhiYXIKb21pbmkK4paB4oCdCuKWgUNhbWlsCuKWgXF1ZWVuCm1vZGlmaWVyCkphbgriloFseXIKQ29tYm9Cb3gKaW9uaWMK4paBaG9seQriloFTZWJhc3RpYW4KfF97CuKWgXtACuKWgdC80L7QttC90L4K4paBQ3JlYXRpdmUK4paBaW50ZXJlc3MK4paBQ1QKacOnw7VlcwriloFjaGFudAriloF3c3DDs8WCCuKWgdCc0LXQutGB0LjQutCwCuKWgXJhbmtlZAriloFwYcW6ZHppZXJuaWthCuKWgWJydXQK4paBZmFydGhlcgriloFWZXJiCuKWgVNldmVuCmxibAriloFtZW50aW9ucwriloFGaWdodAppZmVuCuKWgWJvZwriloFyZWdyZXMK4paBc2NvcmluZwppY2FuZQriloFFbGxpCuKWgXBpZXJ3Cm1lYXN1cmUKxYRza2llagojewriloHQtNC10YHRjwriloF2YXJtYXN0ZQriloFVbml4CklaCml0acOpClByaW1hcnkK4paBU3ByaW5nZXIKw7xuZwriloFhbnYK4paBdmVyc2lvbmUK4paBc2hvdWxkZXJzCuKWgdCx0YDQuNCz0LAK4paBamF2Cmx0YWwK4paBa2FsbGFzdGUK4paBTWl0Y2hlbGwK4paBd2lyZWxlc3MK4paBw4FsCnJlc3BvbnMKY291bGQK4paBcmVsYXgKTG9uZArFhGN6CtGB0YLQstC+0LLQsNC7CuKWgXBvbHNraQplbsOnCnphcgriloFkdHlwZQpvd25lZAp1bmtub3duCuKWgW11dGFibGUK4paBc2llbXByZQriloFNb250cmVhbAriloFsb2NhdGUK4paBdHJhY2VzCuKWgWluc2dlc2FtdAriloFOaWwK4paB0L/RgNC+0LTQsAriloFXYXJuZXIK4paBTmF1CnRyaWFuZ2xlCuKWgWNvbmNlbnRyYXRpb24K4paBZ2VudGxlbWVuCsOkY2h0CmZpbHRlcnMKaW5jaXBhbApWQUxJRAriloHQtNC10L/Rg9GC0LAKYWTDswriloFrb25zdApnc8OlCmFnYXMK4paBbWVpbGxldXIK4paB0LTQsNC90L3Ri9C8CtGU0LTQvdCwCmVuY29kZWQKPCcK4paBc2hlZXRzCmN1YWRvcgriloHQstC40LrQvtGA0LjRgdGC0L7QstGDCuKWgURlcHV0CuKWgW1hbmnDqHJlCsSFZwpjc29sCikkLQpVSVZpZXcK4paBbWlsbG9uZXMK4paBRWhyZW4KU2lsCuKWgWF0YWMK4paBQ29sZAoiXAriloFhcHByb2FjaGVkCuKWgcOFcnNtZWQKV00K4paBRGVwb3J0Cm1pcwphbmRib3gKb2JzZXJ2CnNldHRpbmcKaGF0w7MK4paBc3RyYXQK4paBc3ByZQriloFwZXJzb25uZQriloFkaXJpZ2UKcHVsbApkYXRpbmcK4paBRmFjdAriloFtYW5pcHVsYXRlCuKWgU1BQwriloFkZWoKdWx0aW1vCkZYCkxpZmUK4paBY3JhY2sK4paBbcOtCuKWgdC/0L7QstC1CuKWgXdvcmUKdW5pdmVyc2l0w6kK4paBZm9ybXVsYXMK4paBRWxpc2FiZXRoCnBsb3RzCm1pbGUK4paBbWVub3IK0YLQuNC7CmtleXdvcmQK4paBQmFsdGltb3JlCmhyZXIK4paBQ2xlbWVudAp2aW0KcmFzcwpUYWtlCuKWgWPDrW3FsQriloFDb252ZW50aW9uCmF0Z2UKc2VlZAriloFEw60K4paBU3BpZGVyCmFob28K4paB0LjQvNC10LXRggrDvGhydAriloHQv9C+0L/QuNGB0LAK4paBQ290CuKWgW5vYmxlcwpSRVNTCuKWgWNoZW1pbgriloFnxYLDs3duCkdHCuKWgUdlcm1hbmlhCuKWgUFsZXhhbmRyZQpoZW5zCnN3aWZ0Cm9vcApTdWJ2aWV3CuKWgXJlcXVpcmluZwrEmWR6eQriloFmaWN0CuKWgdCa0L7QvdGB0YLQsNC9CuKWgWTDqXB1dAriloFzdXJwcmlzaW5nCuKWgWRlaXgK4paBdW50ZXJzY2hpZWQKaW5zb24K4paBQ2hhcmFjdGVyCuKWgWdlc3Rpb24KY2h1cwpjb21lcwriloFuZXVyCuKWgXlldXgKb2xsYXIK4paBcGFyYWQK4paBbWFnZ2lvcmUKVFJBTgriloF2b3RyZQriloFkZXNjZW50CuKWgUljb24K4paBSnVkZ2UK4paBb2NjdXBhdGlvbgplcGluZwriloF0b25ndWUK4paBRW5sbGHDp29zCnJ1ZgriloFwcm90ZWluCuKWgXZpc2l0b3JzCmF4eQplc3RlbgpibGljYQpodwriloFzcGlyaXRzCuKWgXJlZHVjZXMK4paB0LzQtdC9CuKWgUxhbWIK4paBTWluZQriloF2ZXJpZmllZAriloFCYWJ5CuKWgXByaXplCtCy0YrRgAriloFyYXRpbmdzCuKWgWZvcmUKYXNoYQp1cnJlbmNlCuKWgWludMOpcgriloFPbMOtbXAKY3JhCuKWgWNvbXB1dGF0aW9uYWwKaXJjaGUKLjrigIoK4paBaWxsdXN0cmF0ZWQK4paBU2hhcmUK4paBaG91c2Vob2xkcwriloFjb252b2x1dGlvbgpvZW1kCuKWgXpkb2J5CmNjYwriloFxdWFudGl0aWVzCkNoZQpTaG91bGQK4paBZ2VuaXVzCmFkagrRhdCy0LAK0J/QtdGC0LXRgApFTUEK4paBUmlnaHRzCuKWgUVsaQpWQVIK0YjQu9C+CuKWgdC30LHRltGACmlmdHVuZwriloFjb250cmlidXRlZAp6ZWYK4paBQ0hBUgriloFTaWIK4paBTWFudAriloHRgdCy0Y/Qt9C4CuKWgWphdmFmeAriloFjZXBlbmRhbnQK4paBaW50dQriloHRgtCy0L7RgAriloHDkwpndWVyCnJhZG8K4paBUmV2b2wK4paBZsOpbWluCuKWgU9ybGVhbnMK4paBcG9qCuKWgXByZXoKVGV4Cm91d2QKPygK4paBTElNCmlzdGlxdWUKZXNhcgriloFoZXVyZXMKaWNraQriloFkYm8Kc2tpaApjb25maXJtCuKWgXZpbMOhZwriloFjaXV0YXQK4paBRFIK4paBSGF3YWkKY2hlZAriloFzcGhlcgriloFBcnRpa2VsCuKWgU11bHRpcGxlCmNpdQriloHQvNGLCuKWgWxpcGNhCl0oLwpTdHJhdGVneQriloFBbGFiYW1hClNESwpVVEMKX18uCkFyZ3VtZW50cwriloFzZXRDb250ZW50VmlldwrDrmxlCkJ5VmFsCuKWgUpWTQrRjtGJ0LXQs9C+CuKWgUxlb25hcmQK4paBanVzdGlmeQrRhtC10LwK4paBbmFiCkNDRVNTCuKWgWhvcGVzCikmCnNlcm8K4paB0LfQsNC5CtGB0LvRltC0CuKWgVLDqWcK4paBU2FuZwriloFmdW5nCmJhYXIK4paBY29mZmVlCmFzc2VtYmx5CuKWgdCS0ZbQvQrRjdC5CuKWgWNvbXByZW5kCmZpbGxlZArRgNC0Cm9kaWEK4paBZ2VucwpmbHVzcwpEcmF3YWJsZQriloFzdXJ2ZQpTZXR1cAriloFuYWxlxbwK4paBY29uanVudG8K4paB0JXQs9C+CuKWgW9sZGFsCuKWgXZlcmJvc2UK4paBRWxlY3RyaWMK4paBSGFycmlzb24KZW5nZW4KcGFyYWdyYXBoCuKWgW5vdXZlbGxlcwriloHQstGA0LXQvNC1CuKWgW1lbW9yCuKWgW1heW9yw61hCtGB0LDQtAriloFiYXRhaWxsZQriloF0aGVybWFsCuKWgdCl0YDQvtC90L7Qu9C+0LPQuAriloFCZXR0ZXIKYnllCuKWgdGC0LXQsNGC0YDQsApyb2UK4paBc2VnbGUKcm90dAriloFvcGluaW9ucwopfSkKw7xobGUK4paBR8O8bgriloHQqQpiw7NsCuKWgUxhcnJ5CuKWgXNvbGljCuKWgXp3YXIK4paBQ2Fyb2xpbmUK4paBUmVpY2hzCkV4dGVuc2lvbnMKbWlncgo6QAriloFlbnVtZXJhdGUK4paBZWlnZW5lbgriloFleHBsb3JlCsOpbXUK4paBZ2F0CuKWgWltcGVyaWFsCuKWgVVzdWFsbHkK4paBdHVkCuKWgdGD0LrRgNCwCmhpbQriloFjb3JuZXJzCuKWgVNFUgriloFpbnRlcnByZXRlcgriloFJY2UK4paBYW1vdW50cwriloFQYWxhCuKWgXRpbmhhCnZvbGUK4paBZ2xlCnVjY2kK4paBc2llaGUKSmFjawriloF3b2xsCuKWgWVsZGVyCuKWgdC60L7RgNCw0LEK4paBZW5nYWcK4paBTGF1cmVudAriloFhY2hpZXYKaXN0aWsKYXJjdArRgtC90L7Qs9C+CuKWgWdpcgriloFTaW5naAptYXRob3AKVVNBCuKWgVByb2pla3QK4paBZGViZQpyaWNodHVuZwriloFUc2NoCnVtaW5hdGUK4paBc3rDswpseXBoCtC30LjQtNC10L3RggriloFsaW1pdGF0aW9ucwrRjtGJ0LXQuQriloFiaWxhClB1c2gK4paBb2ZmZXJpbmcKaWVubmVzCkZyaQriloFwb3N0Z3Jlc3FsCuKWgVRvbW15CuKWgXBhcnRpY29sYXJlCuKWgXN0b2xldMOtCuKWgWFycmliCuKWgUV2YQpzY2hvb2wK4paBdmVuZG9yCuKWgURhbGxhcwriloFwcm9sb25nCkNSRUFURQriloFzdWl2YW50ZQpTVEFUVVMKbMOgCmt2CuKWgWjDpHVmaWcK4paBQWdyaWN1bHQK4paBaHVpdAriloFpbm9sdHJlCuKWgUxsb3lkCuKWgdGE0YDQsNC90YbRg9C3CuKWgdCy0YvQv9C+0LsK4paBZmFpdGhmdWwK4paB0JLQsNGACuKWgXZlcmwK4paBanVlZ28K4paB0KDQtdC30YPQu9GC0LDRgtC4CiwuLi4sCuKWgWltcGxpY2l0bHkKaXJrcwpDYWxjdWwK4paBbWVzZXMKb21lZAriloFwYWsKaGVyaXQK4paBb3B0aWNhbAriloHQhtGB0YLQvtGA0ZbRjwp2ZWlzCuKWgWNhcGl0YWxlCnBsYWNlaG9sZGVyCmludHJhZwriloFBdGxhcwopXTsKaWNvbnMK4paBQmVudAriloFXaWRnZXQK4paBdm9sdW50CmF2bwrDqWdyCmxpZ2UK4paBTkFNRQriloFhYnN0cmEK4paBZsOtcwriloFCcm93c2VyCuKWgWJ1c2gKaGFsbAriloFjbG91ZHMK4paBU1VCCuKWgXRhbmRpcwriloFDb21tb253ZWFsdGgK0YLQsNGPCuKWgWV4aGF1c3QKX19fX19fX19fX19fX19fXwriloFTdGF0aXN0aWNzCuKWgVJlbGlnaW9uCuKWgU11aGFtCnVhbHMKZ290bwpEaWdpdGFsCkZhbWlseQriloFCdW4KbGV0aW4KTWFuYWdlbWVudAriloFjYXBhYmlsaXRpZXMKYW5udGVuCuKWgdGB0LXQsdC1CuKWgXN0YXlzCmt0ZXIK4paBZG9zdAriloHQotGA0LUK0LvQvtCy0LjRhwriloFkeWluZwpzZWN0aW9ucwrDoW5vcwriloFhcHBhcnRlbgriloF6b2FscwriloFkcmVzc2VkCuKWgWNvbXByZXNzCsWEc2thCuKWgXNpZXJwbmlhCuKWgdGC0LjRgtGDCmRpY3Rpb25hcnkK4paBcmFiYgriloF2w6lyaXQK0JLQvgriloFzaW5nbGV0b24K4paBdml0YWwKUmVmcmVzaArQvNC10LvRjAriloFaaAriloFBZmdoYW4KaW5rZWwKYWFhYQriloFwYXJ0aWNpcGFudHMKYXJpbgriloFNb2xkCuKWgXByaW1lcm9zCuKWgdGA0LDQvQriloHQkNC80LXRgNC4CuKWgXJlc3RhdXJhbnQKw6l2ZWwK4paBU0wK4paBUmV5CmNoYXMK4paBZWxlY3Ryb25zCuKWgVBpdHRzCuKWgUp1bGVzCtC80LDQuQplbmFudAotfQrQu9Cw0LQK4paB0JzQvtGB0LrQstCwCmdvbQriloFGZXJuw6FuZGV6CmZ1bmQKaW50ZXJubwriloFNYXJpCuKWgXJpdXMK4paBUHJvemVudArRgdGC0YDRlgriloHQstC90YPRggphbnRlcmllCuKWgdC/0YDQuNGBCuKWgdC+0LHRiwriloFNYXJpbmEK4paBb2NjdXJyZW5jZQpyaWt0CuKWgdGE0LjQt9C4CuKWgXNjaHdlcgriloHQk9GA0LUKUmVzZXQK4paBbXVjaG8KYW5kcgriloFXaWVzCuKWgUtlaXRoCuKWgUp1bGlhbgriloFjb2xlCmNpZW5kbwriloFDb250ZW1wb3IKZXRyeQplbGlhbgrQs9C40LgK4paB0LPQvtC70L4K4paBZMOpbAriloFkZWNlbnQK0KDQodCgCuKWgXN6ZXB0ZW1iZXIK0LzQtdGB0YIKY2FzdGxlCuKWgdC00LXRgNC20LDQsgp9IikK4paBQVNDSUkK4paBR2xlbgppdHplcmxhbmQKVG9nZ2xlCuKWgXRyYWRpY2lvbmFsCuKWgVBsYXQKdmVlCmFiZ2VydWZlbgoofApDTEkKfX0kLAriloFCb3dsCuKWgU1hbGUK4paBQnJlcwriloHQv9GB0LgK4paBQ2hhbGxlbmdlCnrDswriloFwcm9qZWt0CuKWgW5lZ290aQphYm92ZQriloHQv9C10YDQuNC+CuKWgWxvbmdlc3QKYXV0aGVudGljCuKWgXRyYWR1CuKWgW11amVyZXMK4paBQW5kcmUK4paBaGFkbgriloFTY2h1bGUKb2RlbApibGVkCuKWgVRyYWRlCuKWgW1vYmlsCuKWgWFsZ3VuYXMK4paBTGFrCuKWgUNvbm5lY3RpY3V0CuKWgWFsY28K4paBU2VsYnN0CmnFggriloFhbGIKb3V2ZXJuZXVyCuKWgXNyCuKWgXZiYQpsb3BlZAriloFQYXJ0ZWkKdWF0ZQriloFBdXRoZW50aWNhdGlvbgpiZWkKfX0uCuKWgWtvbm50ZW4K4paB0LTQvtC/0L4K4paBaHlkCk9mZmljZQpkb25uw6llcwriloFDbGV2ZWxhbmQKcml0YQrDrW9zCuKWgdCy0YvRiNC1CuKWgVJvYmVydHMK4paBw6lsZWN0aW9ucwriloEnJykK4paBcHVibGlzaGluZwriloFiYXB0Cjw+KCk7Cm1pc3NpbmcK0YDQvtCy0LDQvdC+CuKWgWhvdXNpbmcK4paBaW5mZXJlbmNlCuKWgVJlbmFpc3NhbmNlCuKWgXLDqGcK4paBU3RlcGgKQ0VTCkVSRQrQutC10YIKT1UK4paBZ3JvdXBpbmcKdmVya2VocgpqaWgKYWdsaQriloFtaWxrCmxhaXQKU3RhZ2UK4paBYnlseQriloF3b29kZW4Ka2VsZXkKZXRyYQriloFQZWcK4paBZG9ubsOpCmFkYWwKc2VxdWVudGx5CuKWgWluc2Jlc29uZGVyZQpFTEQK4paBTWFtCuKWgXZvbHRlCuKWgXByb3NwZWN0CtC90L7QstC1CuKWgWRlbm90ZWQK4paBb3ZlcmxheQpQZXJtaXNzaW9uCmVlbgriloFFTQriloF1egpNYwpvbGl0CuKWgXNlcnZpCuKWgUhlaWRlbAriloFXaWVuZXIK4paBaWxsZWdhbAriloFwcmVkaWN0aW9ucwriloFnb29nCmhvbgriloFDaW5lbWEK4paB0YDQtdCy0L7Qu9GOCuKWgVJ1bGUKd29kCuKWgXJhZGlhdGlvbgpvxYIK0L7QstC+0ZcK4paBUGVyZm9ybQriloFwcmlzb25lcgriloFhbWV0CuKWgWZpZ3VyYQriloFDb21tYW5kZXIK4paB0L7RhNC40YbQuNCw0LvRjAriloF0cm92CuKWgWFjdGVkCuKWgXdvcmtmbG93CuKWgdCg0LXRgdC/0YPQsdC70LjQutC4CuKWgWd1aWRhbmNlCuKWgdC80LXQvdC1Ck5hdGlvbmFsCuKWgUtlbAp3ZWJwYWNrCtC/0YDQvtGB0YLRgNCwCuKWgWxsYW1hZG8KYWxvZwp0ZXJyYQppeGVuCmxlZ3JhcGgKw6Rpc2NoZW4K4paBdGVhY2hlcnMKdWRlbgriloFvZ3PDpQpwb3NzaWJsZQriloFTb3VsCuKWgUdlb2dyYXBoeQriloHQt9Cw0LTQsApoaXQK4paBYW5nZXIK4paBcmVtcG9ydGUKUG9kCtGH0LrQtQriloFhcmlhCuKWgUFzdHJvbm9tCmNoYXB0ZXIK4paBZm9yawriloFDdWFuZG8KbWVuc2UK4paBQ2hyaXN0aWFucwpnYwriloEjKApPcmdhbgriloFzdGVhZHkKcHNlCtC20LjRgtGMCmlnbmVzCmF0ZXJyYQptb3ZpZQpwb3N0YQpyYXN0ZQriloFSZXNzb3VyY2UK4paBUGHDrXMK4paBKCk7CuKWgXBlbmFsdHkK0YLRggriloF0cmFzZmVyCmNlbnR1cnkK4paBY2xlYW5lcgpzZWxlbml1bQpvcnRoZWFzdAp4aWMK0LvRltGXCuKWgWluZ2xlc2UK4paBVGFuZwriloFnb2RzCmZyZW50CmNpZW50ZQpzdGFydHMK4paBbXVzaWNhCnltbmFzaXVtCi0tLS0rCuKWgXRlcnJlc3QK4paBcmV0cmlldmVkCmlhcmUKdW5uaW5nCuKWgU1hcmN1cwriloFwcm9tb3RlCndhcm5pbmcK0YLRi9C5Cn0pJCwKVHJhbnNwb3J0CuKWgXJlc29uCuKWgUNsbwriloFlcm0K4paBZWxpbWluYXRlCmhlaW1lcgriloFzYXZlcwriloFwcmF5ZXIKQ2xhc3NlcwpFeHByZXNzCuKWgUFrYWRlbWllCkVsc2UKVHVybgriloFpa2tlCuKWgXJlaQriloFkaXJldHQK4paBUm9zdAriloFQYXBhCuKWgWpzZgrQu9C10L3QuNC10LwK4paBVHVsCuKWgVphawriloFuaWVtaWVjawpUdwphbW91cgpuZXN0ZWQKcHBldHMK0YjQvwpkaXQK0LfQtdC9Cnp5bWEKaHJ0ZQpDb25zdHJhaW50cwriloFvd25lcnNoaXAKQXJtCuKWgWNvbnN1bXB0aW9uCuKWgWZldAppdmFyaQpjaHJvbQpzZXRBdHRyaWJ1dGUK4paBY29tcG9zZQriloFiYWNraW5nCuKWgVBhegriloFzY3JpCuKWgU1lY2hhbgriloFOb3J3YXkK4paBSnVwCuKWgW3DqXIK4paBYWRtaW5pc3RyYXRvcgriloFjYWJlCml2YWxlbnQK4paBdGhyb25lCuKWgWR1ZXMK4paBaHVtb3IK4paBQWRyaQriloFhYm9ydArDsWFzCuKWgdCa0LjRl9CyCmrDrWPDrQriloF6d2VpdGUK4paBZG91YgplcnNoZWxsCtGI0L7QuQriloFGYW0Kw6VrCuKWgXR3ZWVkZQriloFSaWIK4paBZsO4cgpwY2nDs24KaW5uZWQKcnZtCuKWgUFwcGFyCuKWgURqCuKWgVNoYW5nCkRpc3RhbmNlCuKWgWRhd24K4paBTWF0dGgK4paBZXJyaWNodGV0CnBoYW50b20K4paBcmVsZWFzZXMKUmVjb2duaXplcgriloFLb3AK4paBUHVsCnXDqQpuYXRzCnJlbGF4CuKWgWZsZWQK4paBZXhwZXJpZW5jZXMK0YnQtdC1CtC80LXQvdGPCuKWgdC/0LXRgNGB0L7QvdCwCuKWgUlkZW50aXR5CnJldHMKa3VuZnQKbGFyZwpMaXN0SXRlbQp2ZApydW5uZXIKbGFudAppcGFydApiYXkKaWVpCuKWgWxlbmd0aHMK4paBY2F0dGxlCmpldHMK4paBc2VoZW4KSnVsCmZhdHQK4paBc3VycmVuZGVyCuKWgVRydW1wCtC00L3QvtCz0L4K4paBRm91cmllcgppZWJlbgpfIgriloFmcsO8aGVyCuKWgWdhcmFudAp1Y2xpZGVhbgrDpGd0CuKWgdC/0ZbQstC00LXQvQpQYWdlcwriloFyaXZlcnMK4paBZG9ubmVyCnN2bgriloHFggpvdsSbCuKWgUxlaXN0CmFyaWFsCm92w71jaAriloFmaWxsaW5nCuKWgW11c2ljYWxlCm1heGltCuKWgWRhc2hlZAriloHQndC+0LIKRHJhd2VyCuKWgU1lZGljaW5lCuKWgWRva3VtZW50Cm93ZWwKdmnEhwpoZWx5CuKWgWVsZXQKU2Vjb25kcwriloFHb256CnJvdQriloFmaW5hbGVzCnJuCmbDuAriloFpbmRleGVkCmNsYXNzTmFtZQriloFvYmVyCuKWgWR1YXMK4paBb3B0aW1pemVkCuKWgWtkeQp2ZXJzYXJ5CmVuZXJneQriloHRhtC10L3RgtGA0LAK4paBY3VycmVuY3kKennFvApMaWtlCuKWgdCT0LgKc29ubwriloFwYWxhYgriloFwdXNoaW5nCnVibGlrCuKWgUhhc3MKfVwsXAp1bmtlcgriloFGYWN0b3J5CuKWgVJlc291cmNlcwpkYXRlaQriloFUb29scwriloFzdGVoZW4Kc2ltZQriloHQpdGDCuKWgWhvY2gK4paBUm9kcsOtZ3Vlegp6ZWl0aWcK4paBVGVycnkK4paB0L7QsdGDClVzYWdlCnVyY2hhc2UKbMO2CuKWgUludHJvZHVjdGlvbgriloFwYXJ0aWNpcGF0aW9uCs6/z4IKb2dsaQphcHkK4paBaG9wZWZ1bGx5CnBvbmRlcgriloFZYW5nCuKWgXByb21pc2VzCuKWgdCy0LXRgNC90YMK4paB0L7RgdGC0YDQvtCyCl57KwriloFtb3N0cmEK4paBQ1VSTE9QVApISAriloFzdGRvdXQK4paBYnJpbGxpYW50CuKWgW1hbnVzY3JpcHQK4paBZGVjaXIK4paBQm9sb2cK4paB0LzQtdGB0YLQsAriloFpbnZpc2libGUK4paBQ2hhbAriloFhbmFseXplCnByaWxpcwphdHRlbmQKTXZjCnRoYW4KY2tvCuKWgVF1ZWJlYwriloFwbGFudGEK4paBdMOpbMOpdmlzCuKWgXVuaW5zdGFsbArDqG5jaWVzCuKWgWdtaW5pZQriloFQcmVmCuKWgWxlcXVlbApJbnZvY2F0aW9uCuKWgcONCuKWgXRyYW5zZm9ybWVkCk1BTgpnZWJhdXQK4paB0YHQvtGF0YDQsAriloHQstGC0L7RgNC+0LkK4paBTGl0aAp3ZW5kdW5nCuKWgVBvbGl0aWsK4paBU2VuYXRvcgriloFMTArQttC00LXQvdC40LUK0YjRgtC1CuKWgUPDqXMK4paBYmFuZGUK4paBaGlzdG9yaWFuCuKWgXBhc3N3b3JkcwptYWxsb2MK4paBc2VtaWYK4paBcsOlCnVuaWPDrQpBdmFpbGFibGUKT3B0aW9uYWwK4paBVHdlCuKWgWtyw7MK4paBc3Vic2V0cwriloFEQVQK4paBZG91YmxlcwrQvdC40LrQsNC80LgK4paB0LfQsgpnZWdlYmVuCuKWgdCf0L7Qv9C40YEK4paBasO6bGl1cwriloFtZXRlb3IKTW91bnQKaXZlbnQK4paBTmF0aGFuCuKWgVNjaHV0egplZ292CuKWgWTDtmQK4paBbWVhdAriloHQv9GD0L3QutGCCuKWgW1pbmRzCmVsaXZlcnkK4paBVExTCtGA0LXQvApja3PDpQriloFzdGF5ZWQK4paBQmluCuKWgVBpYQriloHQuNC80LXQvQriloFCb2JieQriloFwcm9kdWl0CmVtcGlvCuKWgXJlZHVjaW5nCuKWgVl1CuKWgUdlc2Now6RmdAriloFwZXJjaMOpCuKWgWNvcnMK4paBaWNvbnMKQXBwRGF0YQriloFIb2cK4paB0YDRltCyCuKWgVNhbnMK4paBc2nDqGdlCnN0ZWxsZW4KQnJ1c2gKT0ZGCuKWgXZpc2l0b3IK4paBYmF0aAriloFmZWUKYXRpc2YK4paBY3VydgriloFmb2xnZW5kZXIK4paBY29uc2NpZW5jZQriloFTZWF0dGxlCuKWgW1lZGlldmFsCmRpc3RyaWJ1dGlvbgriloFETQriloHQvNGPCuKWgVJVTgpha292CmNlaWwK4paBbGV0dGluZwriloFkb3YK4paB0L7QsdC4CmtpZWoK4paBZGlyZWt0CuKWgXRtCmNvbG9ycwriloFhbHRybwriloF0aWpkZW5zCl17JwriloFCb20K4paBa3Vuc3QK4paBc2hlbHRlcgriloFyYXYKcHJlZGljdAriloFjb21lbnrDswriloHFm3dpYXQK4paBRHVyYW50CuKWgXNjaGVtZXMK4paBbWVzaAriloFpbmRpY2F0b3IK4paBRW1lcgriloFndWlsdHkK0L3QtdGGCuKWgWNvbnNlcXVlbmNlcwpjbHVkZXMK4paBTG93ZXIK4paB0L/QvtC80LUK4paBcGFjZQrQtNCw0LPQvgriloFhbWJvcwpsYgriloFlZHVjYXRlZAp1cmFsZQphbmgKZXNzw6lnCuKWgWFzc29jaWF0aW9ucwp0b3duCuKWgXRyaWYKc2FtcGxlcwpib3MK4paBU3BlY3QK4paB0KbQtQphbHR1bmcK4paBTG9iCuKWgWN1cmlvc2l0eQriloFXZWl0ZXIKZXN0b25lCuKWgWRlbW9sCuKWgWFwb2xvZwriloFEeW5hbWljCklubmVyCmVzcGVyCmVjegp1ZWxsZW1lbnQK4paBSGFtaWx0b25pYW4KQXRsYXMK4paBYXJndWUKRm9yZWlnbgpjb2xsYXBzZQriloF0w6lybWluCuKWgWVsZWN0cm9uaWMK4paBTlIK4paBY29ycgp0ZW1wcwpJbmRleFBhdGgK0Y/QtwriloF0YWzDoWwKdG9kYXkKd2F2ZQriloFzaWIK4paB0YHQv9C4CuKWgWNvbnZleQriloFHw6lvZ3JhcGhpZQriloHQndGM0Y4K4paBSGliZXJuYXRlCuKWgXRpbgpkaWMKcHBpbmdzCnN3ZWlzZQriloFyb2xsaW5nCuKWgXNlbGVjdHMKKVwpCuKWgXBvZXRhCuKWgdGB0YLQtdC/0LXQvdC4CuKWgUFicgriloFow7ZjaAriloFzdGVybgriloFmasOkcgriloFpbnN0YWxsZXIKZGVjbAriloFtaXNlcgpncm91cGJ5CnN1YnN0cgriloFwaGVub21lbgriloFXaW5nCuKWgWZpbGxzCuKWgcO6bmljbwpSdW5uaW5nCkNvbWUKaXJhYmxlCnNpbWVxCuKWgXJlbXAKa2VsZQpsaWVycwriloFrd2lldG5pYQriloFpbnRlcnJ1cHRlZAriloFKZXQKPVx7CsOtZG8K4paBVGFpd2FuCuKWgdCy0L7Qt9GA0LAK4paBYWx0ZXJuYXRpdmVzCuKWgVRpcgriloFSZXNlcnZlCuKWgdCa0YPRgAriloFOb2JlbAriloHRgNCw0LHQvtGC0LDQuwriloFheGVzCuKWgUNlcGVuZGFudAprw6EK4paBZXJuZXV0CuKWgURlbW8KY29tbXVuaWMKY29uc3RydWN0b3IK4paBTW9uZGF5Ck5pbApIYXNoTWFwCnBheW1lbnQK4paBZml4aW5nCuKWgUFERApyZXZpZXcK4paBcG9zc2liaWwK4paBZ3JvdGUK4paBZ3JvdXBlZAriloFMaW1hCuKWgUF1Z2VuCuKWgW9ja3PDpQpvbmFzCuKWgWRlYmF0ZQriloFJbmdsCkRhClNPVVIKZXR0YmUK4paBQmF0dGFsaW9uCuKWgUZsb2F0CuKWgWNvbmUKcmVhZHNoZWV0CmNvdXJ0CmxpZ2VuCuKWgUJlZ2lubgriloFMSU1JVAriloFlbmpveWVkCuKWgUpha29iCuKWgXRlbHQKYmFja2VuZAriloFHZW1laW5zYW1lCmxpbnQKYWxsaW5nCuKWgWLDtnIKZ3JhbmQK4paBZGl2ZXJzZXMK4paBendpxIV6CuKWgUtvbXBvbgriloFpbm5lcmhhbGIK4paBZGVzYXJyb2xsbwriloFNYXN0ZXJzCmlvc28KXWAuCuKWgWZyYW5jZXNhCkFmZgppbmVrCuKWgWRlc3NpbgpgLmAK4paBcmFua3MK0LHQtdGA0LMK4paBc2thbAriloFTdWx0YW4K0JDQnQriloHRgdC/0L7RgdC+0LEK4paBY29udHJhZGljdAriloFyZWNvbQriloFPa2xhaG9tYQriloFWbGFkaW1pcgriloFtZXRlcnMKdHJhbnNwb3J0CuKWgWNvbnN1bHTDqQriloFBVFAKZWJiCuKWgXZvbHVudGUK4paBb3V0bGluZQpMSUMK4paBZXVybwpDaGFyRmllbGQKbWVkaXVtCuKWgUJlbGdpcXVlClByb2MKcm91dGVzCuKWgWNvbnRyaWJ1CiF9CsWhw61tCuKWgUxlc3MK4paBS29zdAriloFlcmVkZXRpYsWRbApyZXZlbgp2ZXJpZnkK4paBU2FsdAriloFzaG9vdGluZwriloFkaXNwb3NlCnVqw60K4paBdGllcnJhCuKWgXBvaXNvbgpzYWsKcGVyaW1lbnRhbAriloFOw6kK4paBS2lkCmFneWFyCuKWgWFyY2hpdsOhbHZhCmJlcmVpY2gKw616CuKWgVJpdHRlcgriloHQpdGA0L7QvdC+0LvQvtCz0LjRmNCwCnpldW0K0LTQsNGFCuKWgWdyw7xuZAriloFwcm9ncmFtbWVyCuKWgWNvbnNlaWwK4paBZW5jcnlwdAppbnRlZ3JhdGlvbgpDdWx0dXJlCuKWgUNpcmNsZQpPYnNlcnZhYmxlCuKWgWdlbm9tc25pdHQK4paBU2VsZWN0aW9uCuKWgWlycmVndWxhcgpBdXRyZXMKUGVyY2VudApmYXVsdAriloF2aXJ0dWUKxIVwaQriloFzZXNzCuKWgdCi0LDQutC20LUKVGltZXN0YW1wCuKWgWxpdHTDqXJhdHVyZQriloFtb8W8CuKWgWJvcnJvdwriloFjb25jZWQK0YfQvdC40LoK4paBTHVuZApJT05TCnluaWUK4paBU2hpbgriloFvc29iCmLEmwriloFpbnR1aXQK4paB0L3QsNC/CuKWgXByb3BoCuKWgXBpdHQK4paBSUJNCuKWgVRpbGwK4paBaGluYQppdHRlc3QKZ2VuZXJhdG9yCuKWgU5pbgriloFLb3QK4paBcGFzc2VyCuKWgWRpc3Bvc2l0aW9uCnVuaW5nCuKWgWZhbWUK4paBdGVuaWEKYW5jZW1lbnQK4paBU3Vpc3NlCmAtCuKWgWhvbWJyZXMK4paBaW5maW5pdHkK4paB0L7QutC+0L3Rh9CwCuKWgWNvc20K4paBRGVubmlzCmJhegpoYXVwdAriloFtaWdodHkK4paBcHJlZGUKdXNhYmxlCuKWgXdzenlzdAriloFsYgpBQkFTRQpqbmEK0L3QtdCyCuKWgWFzZXMK4paBZmluYWxtZW50ZQrQudC8CnBlY3Rpb24K4paBU3R1ZGllbgriloFOb3J3ZWdpYW4KY2VnbwpJTkRFWApvcnRlbgriloFmcmllbmRzaGlwCm1ldHJvCnRoaWNrCuKWgVplbApMT1cK4paBdGhlcmVieQp1bnRlZAriloFzdXJmYWNlcwrRjtGJ0LjQvAolKS4K4paBV29uZGVyCuKWgXJlZHVuZGFudAriloFHcm9zCuKWgXdlYnNpdGVzCuKWgXZpbwriloFvY2FzCnbDqXMK4paBR2FtCmR3CkluZGljYXRvcgriloFLb2IK4paBamFjawpIaW50CuKWgUFwb2wK4paB0LTRgNGD0LPQuNC1CuKWgU5VTQriloFvZmljCnlzdHljegriloF3ZXJlbGQK0LzQvtGB0YLQuApMRUZUCuKWgVR5cGVzCnNlZW4KdW5jaWEK4paBbmFyb2QK4paB0Y3RgtC+0YIKU2lkZW5vdGUKdWVpbAriloHQvtGC0LzQtQriloFjb3VydHMKZmlyCnVyegrRh9C10L3QutC+CkNyZWRlbnRpYWxzCuKWgWltYWdpbmF0aW9uCml0YXRzCmJ1ZmYKZmxhc2gK4paBYmFkbHkK4paBd29ybgriloHQvtC60YDRg9Cz0YMKY2F0YWxvZwpsaW1lCuKWgUdpbGwK4paBU2VudAppZWxsYQriloFDcmFpZwriloFTZWxlCuKWgUluZGVwZW5kCuKWgXByb3ZpbmNpZQpvc3NlbgriloHQt9Cw0L/QsNC0CuKWgWluZmFudAriloFwcmV2ZW50cwriloFwcm92aW5jZXMKYWbDqQpiZWcK4paBY29sb3VycwpCRgrDq24K4paB0JzQtdC20LTRgwrDrm4KT2JzZXJ2ZXIKZm9yc2NoCsOtZ2VuCnVtcHRpb24K4paBSWxsdXN0cgrRgNC40YHRggriloHQv9C+0LvQvtCy0LgK4paBYCYK4paBb3JlCuKWgXN1cHBsaWVzCuKWgXBhcmVudGhlcwpGb3VuZGF0aW9uCuKWgXZvdQriloFUb3V0CkRvbmFsZAriloFSRVQKd2VpZwriloFwcm9kdWNjacOzbgptaXgK4paBdXR3b3IK4paBZsO2bAriloFlbnTDo28K4paBU2lzdGVyClRhZ3MK4paB0KHQsNCy0LXQt9C90LUK4paBcHJpdmlsZWdlcwriloFuYXp3CuKWgVJhdgriloFyZXBybwriloFNYXNvbgriloFQbGF0Zm9ybQriloHQv9GA0L7QsdC70LUK4paBUMOpcmV6CuKWgWJsYW5jCkJlaGF2aW9yCtGE0LjRhtC4CmVrZW4K4paBbWVldHMKKC4qCuKWgWbDpQplcGVuCm1ha2VyCuKWgWxveWFsCm1lbWJlcnMKbWVpc3RlcnNjaGFmdApnb2FsCtGI0LvQtdC9CuKWgdGB0LXQstC10YDQvgppZW5kZQrQtNC90ZYKUHJvb2YK4paBZXhwbGljCuKWgWVsZWN0cm8KaWVscwpyZWxvYWQK4paBZWxldmVuCuKWgXBhcnRpZG9zCsOubmUK4paBUmVnaW4K4paBw6l4CuKWgUJ1bGcK4paBbmV0d29ya2luZwriloFzZXBhcmF0b3IKVXNlck5hbWUK4paBZWRpZmljaW8K4paBTWllCuKWgWlkbGUKeWVkCuKWgXBhc3NlbmdlcnMKKykKbWVubwplZ2dpCuKWgW5pY2VseQplbmRlbmNpYQrRh9C40LkKw6l0w6lzCmlnaHRhcnJvdwriloFvcnRob2dvbmFsCuKWgUhhbGYK4paBZmV3ZXIK4paBcHJvcGkK4paBcHJpbWl0CmljYWxlCuKWgWZsb3dlcgptZXJrCuKWgdCe0YLQtdGH0LUK4paBcGVyc2lzdGVudAriloFWaWxsZQpNZW4KZ2FiZW4K4paBSXNhYWMKYXRpdml0eQriloFww7PFgm5vYwriloFyb2sKY2FyZHMK0LTQtdC90LjRjwriloHRjtCz0L4K4paBZXh0cmFvcmRpbmFyeQriloFreXIKKCIsCikpXQriloF1bml4CtC60L7QuwriloFzaW5rCmFwc2VkCuKWgWtvbW1lbgriloFmb3JjaW5nCkFib3V0CuKWgUhhbGxlCuKWgU1hamVzdHkK4paBU3dpdGNoCuKWgWFicm9hZAriloFhY2NlbGVyYXRpb24KdXJiZWQK4paB0L7RgdGC0LDQvQpSZWFkeQriloHQv9GW0LLQvdGWCkJyYQriloHRhtGM0L7Qs9C+CuKWgXBsdXQK4paBVHJhaW4K4paBw6FwcmlsaXMK4paBcHVlc3RvCuKWgXRvc3MK4paBaXJyZWxldmFudAriloFkaXAKc2VnbWVudApvcGFjaXR5CuKWgWxvcnNxdWUK4paBdmVyc2NoaWxsCtC10L3QsAriloFEb2MKJSUlJSUlJSUK4paBYm9yZGVycwpnZWJyYXMK4paBcmllcwriloFPbHltcGVkaWEK4paBR2VuZXJhdGlvbgptZXRyb3MK4paBaG9yaXpvbgriloFhZGFwdGF0aW9uCuKWgVphaGwK4paBbmFoZQriloFCdWcKUGljdHVyZQrRmdC4ClJHQgpPd25lcgphZGluCuKWgUNhdGFsdW55YQpuw71jaAriloFjdWFscXVpZXIK4paBSW5zdGl0dXRpb24KaW5zZW4K4paBQnJhc2lsZQriloFmaXR0aW5nCkRlbGVnCmljdHdvCuKWgUV4cGVyCm9jaGFzdGljCuKWgWR1cwriloHQv9C+0YDQsAriloFzdWJzdHJpbmcK0YHRgdC40LgKb2luCuKWgdGI0LrQvtC70LAK4paBY3gK4paBJSkK4paBQnVkZGgK4paBcGVuZGluZwriloFFbnRyeQriloFCZXJsCuKWgWNsZXIK4paBU29jCuKWgXJvdW5kZWQK4paBbXYKw610ZXR0CuKWgURpcGxvbQriloFmcmFuesO2c2lzY2hlbgriloFHYW4K4paBSW52ZXN0aWcK4paBaW5kZXhQYXRoCuKWgW1vbHRpCnBlcnNpc3RlbmNlCuKWgVhJWGUK4paBRWxlY3Ryb24KYsO8CmdlbGUK4paBTWFsZXIK4paBcHJveWVjdG8K4paBQmF0aAplbGxlcnMK4paBR1AKb25pbmcKY2xvdWRmbGFyZQriloFwxZlpCuKWgWRlZAriloFPZGthenkK4paBTXNnCuKWgUJlaW5nCuKWgURlcHVpcwriloFQcmltYXJ5CuKWgUFwcHJvCuKWgWZvcm1hbGx5CtGB0YLRg9C/0LjQuwriloFmdWVyYQriloFSb290CuKWgWF1dG9ub20K4paBc2VjcmV0YXJ5CuKWgW9zw7NiCuKWgWN1YWxlcwriloFEZXBlbmRpbmcK4paBYXNpCnZlcmEK4paBcnVzc2UK4paBcHJvdmVzCuKWgXByZXNpZGVuClJVCuKWgVdhdHNvbgriloF3ZWJwYWNrCmVsbGlnZW5jZQrQutCw0LwK4paBT2ZmaWNlcgriloFkZWxpdmVyeQrQttC00ZHQvQriloHQuNC80L/QtQriloF3aWwK4paBdmVzYwp1c3p0dXMK4paBR2VvZmYKKCl9CuKWgUZvcmUK4paBd2VuaWcK4paBQWlybAriloFFZnRlcgriloFCcmVhawriloFTdMOkZAppc21pc3MKw61wCuKWgWF2b2lkZWQK4paBYXNzZXJ0aW9uCkROCuKWgXRlYXQKw61uYQriloFtZWNoYW5pY2FsCmlzdQpAewriloFub3UKSXRhbGllCnNvdXJjZWZvcmdlCuKWgXN2bwriloFraXLDoWx5CuKWgVJlZmVyZW5jZXMKc2l4CuKWgUFyY2hpdmVzCuKWgWZpbmlzaGluZwphY2plCsOpdGF0CmlmZnMK4paBc3RlYWQK4paBZmVhcwphd2FyZQpsYW5kZQpJbmplY3QK4paBQWdlbnQK4paBTm9ybWRhdGVpCuKWgWFtZW4K4paBQXJjaGl0ZWN0dXJlCmF6ZQrImXRlCuKWgXVzYXIK4paBY29yZXMK0LvRltC9CuKWgUNhc3RybwriloF2w6YKPiIsCm9tZW5hCuKWgWdlc2FtCuKWgU1hcnTDrW4KZWd1bmcK4paBc3BvbGXEjQriloFhbXBsaXR1ZGUK4paBaW1wb3J0aW5nCuKWgWxpc3R2aWV3ClRIRQp6aWFsZQpjZWRlcwriloFwYXJ0aWN1bGllcgriloHQoNCw0YHQv9C+0LTQtdC70LAK4paB0LrRgNCw0LkK4paBZGl2ZW50CuKWgWvDqQpxdWl0CtGC0L7RgNC+0LwKQ2hlY2tCb3gK4paBWm9iYWN6CnBoZQpwdGEK4paBc2rDtgriloHRgNC+0LfRgtCw0YgK4paBdGVkZXNjbwriloFzdGFsCuKWgUJlcnVmCtC+0LLQsNGPCuKWgXN2xJsK4paBZmx1c2gK4paB0LLRltC00LHRgwriloFyYWRpYWwK4paBZGlmZsOpcmVudGVzCtCw0L3RgtCwCuKWgVBlcnJ5CkNvbGwKbGlxdQriloFPcHRpb25hbAriloHQodCw0L3QutGCCuKWgUxJTlEK4paBRnJhbmMKY2lqZQriloFHdWlsbGF1bWUKa25vdwriloFVbml0cwpvbGsK4paBU3lzdMOobWUK4paBU2FsZXMK4paBZWhlbWFsaWdlbgrQvNC40YDQvtCy0LAKeGh0bWwKc2V0b3B0CuKWgW1lbGxhbgriloF6aWUK4paBZ2lhbnQKQm9hcmQK4paBQ2F2YWwK4paBZGVmZW5jZQotLS0tLS0tLS0tCnBzaGlyZQptYXJ0CuKWgURpb2MKaXNrdAriloFpbnNlCuKWgcOpcGlzb2RlCtGH0LjQugpiYXJzClNpdG8K4paBaW50ZWdyaXR5CmF1ZmYK4paBdsOkcgpBenVyZQriloFzdGFyYgriloHQutC+0L3RgtGA0LAK4paB0JzQtdC60YHQuNGH0LrQsAriloHQt9Cw0L/QsAriloFNb3VudGFpbnMKfX09CuKWgXB1bGxpbmcK4paBc2F0ZWxsaXRlCuKWgWF0b21zCuKWgXByb2Zlc29yCuKWgXJlcGVhdGVkbHkK4paBaW52YXNpb24KcHJvZ3JhbW1pbmcK4pSc4pSA4pSACuKWgUxpcArQstGI0LjQtQriloFrZWVuCuKWgWNyaXRpY3MK4paBTmljb2xhCuKWgUNhbmQK4paBZGlzdGludAriloFoZWFkaW5nCnByYWdtYQp7fAp5bWVuCuKWgXRlcnJhaW4KaWVkZW5pcwriloFiZXNvbmRlcnMK4paBbm9taW5hdGVkCkJPT0wK4paBS2F5CmNpYW4Kc3RlbGxlCuKWgWRpc3B1dGUK4paB0YkKRGF0YVNldApub3RoaW5nCkF1dG9tCmjDtnJlbgriloFzaGVkCuKWgXBhdXNlZApzYW4K4paBbnVuY2EKISgiCuKWgXBvxYJvxbwKU2VjcmV0CuKWgURvbWFpbgriloHQstC+0LfQvNC+0LYKWFYKbHYKaWtoCuKWgVNvbnkKbXEKb3Ryb3AK4paBTG9nZ2VyCuKWgXRocmVhdAphc3RlZArQt9GM0LrQvgriloFmcmVlbHkK4paBaW1wcm92ZW1lbnRzCmlzdGVtYQriloFpbGx1c3RyYXRlCuKWgXRhY3QK4paBZmlndXIKdcOpcwpyaW1pbmFsCm9kb24KaW50ZW5kbwriloFpbmZsdWVuY2VkCkZGRVIK4paBR2hvc3QK4paB0YHQvtCy0LXRgApuYWQKaW9uZWQK4paBRXZlbnRzCuKWgXdyYXBwaW5nCi0tLS0tLS0tLSsKZmlmCuKWgSgqKgo9e3sK0LzQsNC70YwK4paBbG9zc2VzCuKWgUdhbGVyaWUKdGVsCuKWgdC70Y7RgtC+0LPQvgriloFLcnUK4paBUG9sZW4K0L3RltC8Cm5lYXIK4paBc2hhbWUK4paBbW95ZW5uZQriloFDUApwcmVpcwriloFwYXNzZW5nZXIKbGVrCmlvbmFsZXMKa2Fma2EK4paBcGFydGljaXBlCuKWgW1lbWJlcnNoaXAKW18KbGFuZG8Kc3RlbGxpbmcKU2VtCmdvbgriloFDb3JyZWN0CuKWgXZhbGxlCuKWgXJlYWRpbHkK4paBRG9rdW1lbnQKaG9ubmV1cgriloF0ZXN0aW0KdWxhdGl2ZQpkb0ZpbHRlcgriloFkb21pbmFudAphbW1lcgriloHQutC+0ZjQsAriloFNb25zaWV1cgp6ZWcK4paB0LLRltC50L3QuAriloFGbwriloFBbXkK4paBwqEK4paBZmVicnXDoXIK4paBZG93bmxvYWRpbmcK4paBbGVuZwpcfSQsCuKWgW5lYXQK4paBQ2FjaGUKSUNBVElPTgriloFkZXZlCuKWgXNvcnJvdwpzbG93CuKWgWhpbmF1cwriloFyZWNvbm9jCuKWgUxpbmtlZAriloFTaGF3Cm1hcmtldAriloFEaWMK4paBU2tpCuKWgWRlbGltaXRlcgriloFNYWluQWN0aXZpdHkK4paBTXVzaWNhbAriloFSZXluClNjcm9sbFZpZXcK4paBY29udmVudGlvbmFsCmVuw6dhCuKWgXJlZmFjdG9yCictCuKWgUhlZApzcHJlY2gK4paBYXRobGV0CuKWgWVzcGVjaWVzCuKWgVNjaMO2bgriloFrbGVpbmVuCtGI0LrQvgriloHQmdC+CuKWgUhhcHB5Cm11bHRpcm93CuKWgWF1Z3VzdGkK4paBR2FuZAriloFhcHBvaW50bWVudAriloFNZWRpYWJlc3RhbmRlbgpUaHJlZQriloFLZW5uZXRoCk5FVwriloFOb3RpZmljYXRpb24K4paBTWFyeAriloFpbnNjCk1vcgrQstGL0LkKdsOkc3QKdmlkaWEK4paBZGVtb25zdHJhdGVkCmZvbnRzCuKWgWthbWVuCuKWgVN0ZXIK4paBbWllc3prYcWEY8OzdwriloFLb2gKfiRcCsK7KS4KcmVuZQppbnNpYwppY2vDoQp4eWdlbgriloFtbgriloFzY2hlZApBU0MKSWcK4paBQ29uc3RhbnQK4paBb3Bwb3J0dW4K4paBTXlDbGFzcwpzZWYKb3BlZAriloFpbmp1cmVkClZJUwriloFQZXJvCuKWgVVudGlsCuKWgWZsZXNoCm9ycGhpc20K4paBUG9ydGFsCuKWgWdtaW55CuKWgdCy0LvQsNGB0YLQuAriloFOw6QK0LrRgtC40YfQtQriloFocmFiCuKWgUN1Ygphdm9pcgriloFMYXJzCuKWgdCR0LXQu9C+CuKWgXNlaXpvZW4K4paBR2Vub21zbml0dAriloFMaWwK4paBUG9vbAriloFEaW9zClRYCmFlcwphdXRvcmUKQWxwaGEKc3RhdGVzCkxhYgpuZWRlcmLDtnJkCmVydG9uCuKWgWJyaWQK4paBcmljaHQK4paBRWxhCuKWgdGB0LvQsAriloF3ZWFwb24K4paBY29tYmF0dAphZ2FyCuKWgXJlZ25pZwriloF1dGlsaXPDqQriloFzZXJ2aXIK4paBYnJpY2sK4paBZ2F0ZXdheQriloF0b3JyYXN0ZQriloFwcm9jZWR1cmVzCuKWgcOlcnNuZWRlcmLDtnJkCuKWgUdlbm9tc25pdHRsaWcK0YfRkdGCCuKWgW9tcsOlCuKWgXJlZ25pZ2FzdGUK4paB0YfQtdGB0YLRjAriloFhbWlkCuKWgWdyYXRlZnVsCuKWgURJUwpEQVkK4paB0L7RgNGDCuKWgXJpdmnDqHJlCmhldXJlCuKWgVJpY2htb25kCuKWgUNvbXBhcgriloHQndC+0YAKRE9DCmVzaWEKY2FsYwriloFJVQriloF2b3JnCuKWgWhhYsOtYW4Kw6dvaXQK4paBYXJpc3QK4paB0LrQu9C4CuKWgVN1ZQriloFUb3VjaAriloFXcml0aW5nCmlmaWFibGUK4paBd2MK4paBd2l0aGRyYXcK0LfQsNGACuKWgXByZXNlbnRseQriloFGSwriloFwcmFrdAriloFjb2xvcmVkCnVzYgriloFQZXLDugriloFwbGF0YQriloF3aXNoZXMK4paB0LrQsNC8CmF6YXIKw6F2ZWwK4paBbGFtcApiaXNob3AK4paBaW5jbHVzaW9uCmpxCmFydGgK4paBRmxhZwriloHQvdC+0YAKw6ZkaWEKVU5DVElPTgriloFCYWhuaG9mCuKWgWFwcHJvYWNoaW5nCuKWgUfDtnR0CuKWgWN1YmUK4paBYXJndWVkCuKWgVRoaW5ncwpHdWkK0LTQvtCy0LgK4paBcmVjcmUK4paBcsOpc2VhdQriloFzaWduaWZpY2EKR2l0CmdlYnJhY2h0CuKWgWxpZ2EK4paBYXNzdXJlZAphbHVzCtGA0LjRggriloHRjdC90YbQuNC60LvQvtC/0LXQtNC4CuKWgSUpLgriloFQcmVtacOocmUK4paBZGVjbGFyYXRpb25zCuKWgXRyaWNreQriloFwcm9maWxlcwriloFGb24K4paBSmFzCsOicgpiYWJlbAriloFGcmlkYXkK4paBasO6bml1cwriloFjb2xzCuKWgUVYSVNUUwriloFJdGFsaWFuYQriloFhdXRob3JpemF0aW9uCuKWgXN1bGxlCuKWgUVtYgriloFWYXJpYWJsZQp0cmVlcwriloFGbHkKcmlvcnMK4paBZGFtYWxzCuKWgWZpbmRldAriloFTZXB0CuKWgW11bmRpYWwK4paBcmVtb3ZhbAriloFsb25naXR1ZGUKY2xpYwriloFmYWRlCuKWgWdyYWRsZQriloF6w6FrCuKWgXRpbWluZwp0cmlnaHRhcnJvdwphdGlhCi0uCnVjaGUK4paBc2VyaWFsaXplCuKWgUhtbQriloFSZXByZXNlbnRhdGl2ZXMKYmFoCnJlbmQKYXNzYWRvcgriloFzaGllbGQKdWNpb24K4paBYW3DqXJpY2FpbmUKesSZCnZpbGxhCuKWgWhvbWJyZQrDoXNzCuKWgVNGCuKWgXJlcGVhdGluZwriloFjcml0ZXIK4paBU3RydWN0Cj8/PwriloFjaGVhcAriloFyaW5ncwphYmjDpG5nCuKWgWNvcnRlCuKWgWFkbWluaXN0Cml4b24KZ3lwdAriloFwdW50b3MK4paBbWV6aQriloFwb2Nob2QKaXNrbwpuacSZCuKWgdC+0YHRgwriloHDoXIK0YLQtdC70YzQvdC+0LkK4paBTWV0cm9wb2xpdGFuCmppbgp6ZXNzCuKWgdCy0ZbRhtGWCuKWgWNvbmZsaWN0cwppanN0CuKWgU1hcmtldArRgdGC0YDQvtCyCuKWgSIsIgriloFTY3JvbGwKZ3VuCtGC0LDRgNCwCuKWgWFtYXRldXIK4paBcsOzxbwKcG9zcwriloFnZW5lcmFsaXplZAriloFIYXJtCmNpdGEK4paBU3dpdHplcmxhbmQKaWNvbGEK4paBbXVpdApsb2NhdGVkCuKWgWPDswriloFhcm9zZQriloFjb21tdW5hdXTDqQp9KV4KdmlzaWJpbGl0eQrDrWRhCuKWgUZCCuKWgUZyZXVuZApnYXQKIjp7IgppbnRlbGxpagppZmllCmhtZW4K4paBw6lkaXRpb24K4paB0LrQvtGY0LUK4paB0ZbQvdGI0LjRhQpvbWluZwriloFhcnF1aXRlY3QK4paBUHJlc2lkZW50ZQriloHQn9GW0LQK4paBY2FiaW4KVGhlb3JlbQriloFHYXkKaWZpY2UK4paBaGVjdApsxIUKaXJtaW5naGFtCuKWgXNlbWFudGljCuKWgUxvdWlzaWFuYQriloFzYWNyaWZpY2UK4paBQ2hyaXN0b3BoCuKWgUV4ZWN1dGl2ZQpfKwpqw6FrCuKWgXNlcmlhCuKWgU92ZXJmbG93CuKWgUx1Y3kK4paBbWVsaG9yCuKWgXZvaWNlcwpjemEK4paB0LrQsNC/0LgK4paB0YPQvdC40LLQtdGA0YHQuNGC0LXRgtCwCklOQ1QK4paBY29sb2MK4paBcHJ1ZQriloFnZW9tZXQK4paBZGlyZXR0bwpyZXNvCuKWgUFrdAriloF1bmgK4paB0YHQtdGA0LgK4paBQWxlcnQKV2VsCmF1ZGkKw6RsZXIK4paBZ3Vlc3RzCuKWgdC40LTQtQpTdHVkaW8K4paB0LrQsNGC0LUK4paBZXhwb25lbnQKcnplCnBtb2QKcm9sbGUK4paBTGltaXRlZApBbGxlbWFnbmUK4paBcGl0eQriloFsw6QK4paBcnVubmVyCmtlbmRlCkVRCuKWgU1NCnN6w6FnCtC/0L7QtNGWCuKWgXJlZ3JldAriloFwdWJsacOpCuKWgWRlcGFydGFtZW50bwriloFhY2N1c2VkCmhwCuKWgVBmbAriloFTaW50CuKWgWVrb25vbQpyYWN0b3IK4paB0J/RltCyCuKWgWF3ZnVsCm93YcSHCl0tPgriloFGaW5lCtCh0LAKdGlzCsOpdGEK4paB0KDQvtC00LgK4paBRMO8c3NlbGRvcmYKTE9CCm9zYXMKd2Vya2UK4paBbGFuY2UK4paB0LvQuNGB0YLQvtC/0LDQtNCwCuKWgWluY29tcGxldGUK4paBUGljdHVyZQooJ1wKZXN0ZXJzCuKWgWJlbG9uZ2VkCuKWgVNhbmsKYW1tZWQK4paBcmVwb3NpdG9yaWVzCuKWgWFkZHIKQ29sbGVjdApIb3QK4paBdHlsCuKWgWluc3RhbmNlb2YK4paBYm9udXMKb3bDvQriloHQvNC+0YDRjwriloFpbnRlcmFjdGl2ZQriloFNeXMK4paBRWRtdW5kCmZpbGVOYW1lCmVtb3IK4paB0KLRgNC4CuKWgVJvc2VuCuKWgVByaW1hCuKWgXZvdGluZwriloFYUAriloFaZXJvCuKWgUxlZAphbXN1bmcK4paBZW5hYmxlcwriloFyZWRpcmVjdHMKQVNUClBhaW50CmFja2VyCmxlY2h0CuKWgWNoYWlybWFuCuKWgUF2ZW4K4paBU2FjaAooIjwK0LrQtdGACuKWgW1pc3Rha2VzCuKWgVdlaXQK4paBcHJvd2FkCuKWgWRpZG50CsOpbmFyaW8KdW5sZXNzCuKWgWJhY2t3YXJkcwpib2EKZHVpbm8KYGBgCnN0b3IKQ29tcGxldGlvbgpwdWVzdGEK4paBZGluYXN0CsO6bHQK4paBU1kKaWZvbGlhCsWTdXZyZXMK4paBcmFjaW5nCuKWgWNhYmluZXQK4paBY3V0dGluZwriloF0aHVtYgriloHQmtCw0YDQsApoaWdobGlnaHQK0LrRg9C/CuKWgXNkCuKWgdC90LDRhtGW0L7QvdCw0LvRjAriloFjYW1wYWduZQriloFyZWdpc3RlcnMK4paBZWR1Y2F0aW9uYWwK4paBcGVzYXIKw7xnZQriloFvcm8KYnVyZ28K4paBQXRobGV0aWNzCuKWgU1UVgpnZXRNZXNzYWdlCuKWgUh5cAriloF2aWN0aW0KKSlcCuKWgWRydW1zCmhvc3RuYW1lCnRhxYIKbWFraW5nCuKWgXBvd2lhdArFkWQKdGhyZWFkcwriloFhYnNvbHYK4paB0LvRjtC00LgK4paBc3RlcHBlZApleGlzdAriloFOSwriloF2ZXMKaXN0aWNoZQolJwphdGl2b3MK4paB0YLQsNC60L7QuQriloFNb25nb0RCCuKWgVVuZwriloHQoNGD0YEK4paBZWxpbQriloFGaWYKaWNhY2nDs24K4paBVGVubmlzCuKWgUplZmZlcnNvbgpqw6FuCmZvZwphbmhhCnpvcgriloHRg9C90ZbQstC10YDRgdC40YLQtQphaHUKaWFkYQpTZGsKU2V0dGluZwriloFLaWxsCuKWgVdlbmQK4paBYmFsZAriloFLdWIK4paBdmlzdG8K4paBamV1bmVzCmNvbGxlY3Rpb25zCmFjw60K0LLRgNC+0L/QtdC5CuKWgWFyaXNlCtC+0L3RlgpNQUlOCtC00L7RgdGC0YPQvwriloFiZXJnCuKWgWNyaXRpY2lzbQriloFUb3JyZQriloFkZXNjcmlwdAppw6hyZXMK4paBZXN0dWRpbwriloFpbGkK4paBbWlsaXRhcmUK4paBQ2xhcmEK4paBRWxsZW4KbGltaXRlZArQu9C8CuKWgUVzcGHDsQriloFpbmZpbml0ZWx5CkFtZXJpY2EKb3VjCmdsYXNzCuKWgXJ1ZAriloF6YXQK4paBcmluCuKWgUJpYmxpb2dyYWbDrWEK4paBbWVyY2hhbnQKdGVuc29yZmxvdwriloFkw6lyCuKWgUFjdGl2ZVJlY29yZApJRVMK4paBbGlua2VyCuKWgWVzdHVkaW9zCmNkbmpzCuKWgdCT0L7RgdGD0LTQsNGACsOhbmNoZXoKYXBwZQpjbHViCuKWgWRhbMWhw60K4paBQWxnb3JpdGhtCmRmcwriloFCYWMK4paB0LrQsNGE0LUK4paBJj1cCuKWgdCw0YIK4paB0JPQu9Cw0LIK4paBTW91Ck1hY2hpbmUKKC4uLikK4paBY29tcGFydAriloFhdWd1c3p0dXMKYXZhbgriloFyb2xsZWQK4paB0LXQtNC4ClNjYW4K4paB0YDQtdCz0ZYK4paBxZt3aWF0YQriloFtaW5lcwp9LHsK4paBVGllcgpDYW5ub3QK0LzRltC9CuKWgU5FVwriloHQktC+0LsK4paBTWFuaAriloFHcmVnb3J5CuKWgXByaW5jaXBlCklTTwpwcm9nCuKWgUZhaWwK4paBYWEK4paBZmVjaGEK4paBV0NGCuKWgW1hZ2lzdHIK4paBWmFjaAriloF1bmljb2RlCuKWgWNvbnZlcnRlcgriloFkaXNwZXJzCmtzYW0K4paBVW5jbGUKUHJvcGVydHlDaGFuZ2VkCuKWgWxpZGVyCuKWgW9wdHMK4paB0YLQsNC8CmxvY2tlZAp6YWsK4paBY291bnRlZAriloFwZXJzb25lCuKWgWh1cnJpZWQKw6R0dGVyCuKWgW91dHJhcwriloFnZW51CkJECnZlZwpkdWUK4paBUHJhY3QK4paBcG9zaWJsZQriloFjb250cmlidXRlClVNTgriloFCw7xyZ2VyCuKWgXdhcnMK4paBZXhoaWJpdGlvbgpoaWxsCuKWgWFzdHIK4paB0LzRg9C30LUK4paBQ0FTRQptYW5pZmVzdAp5ZWxsb3cKRm4K4paBUkMK4paBc290dAriloFzdWpldAriloFTb2NrZXQK4paBQ2hpbmUK4paBZnJhbWV3b3JrcwpIb2xkCsOqdHMK4paB0YTRltC70YwKTG9hZGVkCm9waGUKdGV4dGUK4paBZXhwcmVzCuKWgWNvbnN1bWUK4paBUmljaHR1bmcKb2dyYWZpCuKWgW1hZ25pZmljCsOgdAriloFpbmR1bApyeXR5CuKWgW9mZmljaQriloFhc3NhdWx0CnJ1bmQK4paBdmFyaWFudHMK4paB0YHQtdC70YzRgdC+0LIK4paBZXhjaXRlbWVudApUaW1lcwprb3RsaW4K4paBZ2VyaW5nCuKWgUVuZ2VsCuKWgVRpbWVyCsKyKS4K4paBTmcKw6Rzc3QKc2NoYXUKU0Vycm9yCuKWgUVkd2FyZHMK4paBVGVybWluYWwKbGljdApVbmRlcgriloFzcGF3bgrDvHJnZW4K4paBQXXDn2VyZGVtCuKWgWtpdGNoZW4KZmFocnQK4paBQ29sb3JzCuKWgdGB0LjRgdGC0LXQvNCwCuKWgXRlcm1pbmF0ZWQK4paBTGFUZVgKaWdrZWl0ZW4K4paBbWVzdXJlCuKWgUFtdHMK4paBZW1waXIK4paBc3RyaWtpbmcK4paBZXhjbHVzaXZlCtGC0LXRhQriloFyZXoK4paBcXVhbgriloFHbGFzZ293CuKWgWxlY3R1cmUK4paBVGVzdGFtZW50CuKWgWZ1bmRzCuKWgXN0ZXNzYQriloF0cmliZXMK4paBcGFyZm9pcwriloF0cmViYWxsCm5pdHoKYm92ZQriloHQt9Cw0YHQu9GDCuKWgWFic2VudAriloFMYXVmClNtaXRoCuKWgdCd0LjQutC+0LvQsNC5CuKWgWV1cm9ww6llbm5lCmxyCuKWgXByb2dyYW1tYQriloFtaWRzdAriloFkYXVnaHRlcnMKU3luCm9iZW4Kw6JuxIMKaWRhbgriloF0aGVyCm9kb3JlCnNkbAriloFRdWludAriloFjYXNvcwriloFaYW0K4paB0YHRgtGA0LDQvdGLCuKWgXNwcml0ZQrQutCw0LsK4paBbmFzYwriloHRgdC+0YLRgNGD0LQK4paBdHJhdmEK4paB0YXQvtC30Y/QuQriloFVcnVndWF5CuKWgXNwYXJzZQriloHQv9C+0LvQtQriloFteXN0ZXJ5CuKWgU1hbmcKcmVnaXN0cgriloFDR0Zsb2F0CuKWgXN1Ym1pc3Npb24K0LLQsNC90LAK4paBIjoK4paBVHJhY2ViYWNrCuKWgVBpdAriloFFaHIK4paB0YHRgNCwCuKWgUdyYXBoaWNzClVwZGF0ZWQK4paBc3ZlbnNrCuKWgXNwYWNpbmcKdHJpdHQK4paBR3VpbmVhCuKWgUZyYW7Dp2EKQXNzb2NpCuKWgVRvdsOhCnN0YWIK4paBTGVhcm5pbmcK4paBQnJpZ2h0CsWbYwriloFpZMWRCn19X3tcCuKWgWRyb2l0ZQriloFyYWlzaW5nCmdldHRpbmcKeXRobQpvbnltZQrFvHMK4paBYmxhaApUYWdOYW1lClZlcnRpY2FsCuKWgWFwZXIKcG9zdGdyZXNxbAriloFIYW5kbGUKemV3CuKWgXNrdWxsZQriloFvcGVyZQpsYXllcnMK4paBcG9zc29ubwriloFyZWxhdGUKxIVjCuKWgU1paArDomdlCuKWgcWad2kKaXNzZXMK4paBc2VydmxldApMb3MK4paBQWR2YW5jZWQKYXRpY2EK4paBY2VkCuKWgWVsZW1lbnRvcwrRgNC+0L3QsAppa3MKYXJmCmFyaWF0Ck1vYmlsZQphZ3VhCuKWgXRpbXAK4paBQ29taXTDqQriloFjb21iaW5pbmcKd29obAriloFTdHVkeQpjb29yZGluYXRlCuKWgXJlY29tbWVuZGF0aW9uCuKWgXRyYW5zZm9ybWF0aW9ucwp1bnRpbApib3VuZGVkCuKWgdC40LfRgwpoYW5jZWQK4paB0LLQvtC/0YDQvgriloFQcsOpcwriloFjb29yZAp4dHkK4paBJCwK4paBY2hhbXBpb25zCkRlbgpNaWwKKCcsCuKWgVByZWlzCuKWgWVpZ2gK4paBbWFya2VycwriloFnZXdlc2VuCsOkdHRlbgriloFwaW9uZQptdgriloHRmNGDCnplaWNobmlzCmhvZmYKTmV3cwriloFTdGFuaXPFgmF3CuKWgUJyYW5kZW5idXJnCuKWgUZldWVyCj0mCtC20LXRggriloFOZWlsCuKWgXdpcmsK4paBc29jaWV0w6AK4paBc3BhcmUK4paBY2l2aWxlCnNwcmFjaAriloFkaXNzZQriloFnYXRlcwriloFhbm9tCuKWgdCk0LXQtNC10YDQsNGG0LjQuAriloF0aWIK4paBZsO6dGJvbAriloFXaWtpcGVkCmlhdGUKRnJvbnQK4paBY3JhdwriloFSYWsK4paB0LfQstGDCnN0cmVldAriloFBZ2VuY3kK0LLQsNC70L4K4paB0KDQsNGBCuKWgW1rZGlyCmFjasSZCuKWgXNoYXJlcwpTdG9yeQriloFyZW1hcmtzCuKWgWtleXdvcmRzCkJvYgriloF0b2UK4paBVml0dAriloFyaHMKUk9QCm9yaXMKL0AK0YHQuNC4CuKWgXRyYXZlcnNlCuKWgXJlZmVyZW5jaW5nCnByw6RzaWRlbnQKcm9uZwonKToKYXRpZXMKQVcKT3V0bGV0CuKWgcOpdm9sCmlrZXMK4paBZW52aXJvbm1lbnRhbAppY3VtCuKWgUxpZWQK4paBd2FybgriloFCdXRsZXIK4paBJSksCuKWgVplaXRzY2hyaWZ0CuKWgU1vbnRyCtCy0LDQttCwCuKWgU1lcmN1cgpqZWt0ZQptZXRlcgpkdWNhdGlvbgriloFhdHRyaWJ1dGVkCiokCuKWgXVuZgriloFWZXJ0cmFnCnppZW4K4paB0KDQvtCxCmxpY2VzCnBwbHkKYW5zZW4K4paBemVpdAriloFpbW1lbnNlCuKWgWx1dGVnbwriloFCdWxnYXIK4paBbWllbWJyb3MK4paB0J3QsNGG0LjQvtC90LDQu9GMCuKWgUFsbG93CuKWgWFuZ2zDqHMK0LTQstC4CuKWgVRveQrRgtGD0LAK4paBeWFyZAooJQppc3NlcgriloFnb2xmCuKWgVVrcmFpbgriloFob3NwCkluY2x1ZGUK4paBTGlzYQriloFjc2FsCuKWgU1pcmEKcmVjb2duCuKWgdCa0LUK4paBaGl0dGluZwrQutC+0L3QvtC80ZYK4paBVG91cm5hbWVudApMT0FECuKWgUd1YXJkaWFuCuKWgWRhaGVyCuKWgXRpbWV6b25lCuKWgXRvbWNhdAriloFzdWNjZXNzb3IK4paBVm9pZAriloFjb21lw6cK4paBY29udmVydHMKw6RjaHMKb3NleAp4ZWxsZXMKYXNlcgriloHDiXMK4paBbW91CuKWgXVuZwriloFvcmlnZW4K4paBQ3JvdwriloFFcmQK4paBc2llYmVuCmx1YQriloFCQgpSRU5UCuKWgXBpxYJrYXIK4paBbWFycXVlCuKWgUxhYm91cgp2aWRlcnMK4paBZXhlbXBsClNvdW5kCuKWgVdhc3MKYXJyaXNvbgriloHRgtC10YfQtdC90LjQtQriloFPZmljaW5hCuKWgURhdwriloFLYXVmCsOpbnQKw6lzxZEK4paBPSIK4paBa2F0CmRpY3Rpb24K4paBVm9sbAriloFoaWdod2F5CkphbWVzCnpldWdlCuKWgW1vZGVsbwpUaHJvdwriloFGb3J1bQooIkAK4paBZW5mZXIK4paB0YHQv9C10YbQuNCw0LvRjApOdW1iZXJzCuKWgUJpbmFyeQriloFNYXJ0w61uZXoK4paBU3RhdG8K4paBZmVzdGl2CuKWgWthdG9sCuKWgdCQ0LEK4paBbGltaXRhdGlvbgriloFTVFIK4paB0J7RhNC40YbQuNCw0LvRjAppcGVzCuKWgUlzbgriloFydWxlZAriloFjw60KZ2ViZXIK4paBbGF2b3JvCuKWgXBhcmVudGhlc2VzCtC+0LcK4paBw6lxdWlwZXMK4paBZWZmaWNpZW50bHkK4paBUGVyaW9kCuKWgVJlZ2FyZGluZwpsZWFmCuKWgXNpbWlsYXJpdHkK4paBZ2VzdHVyZQpkYXRhYgriloF0ZXJtaW5hdGUK4paBc2VtYW50aWNzCuKWgUFsbwriloFjaWcK4paBT3BlbkdMCuKWgWhldXRpZ2VuCnhhbWwK4paBZnJlcXVlbmNpZXMKKX0uCuKWgXRocmVhdGVuZWQK0YLQuNC6CuKWgWNhbGNpbwriloFSaWVtYW5uCnNsdWcK4paBRmluYWxlCkxSCuKWgURlcmJ5CuKWgdC+0YnQtQriloFkZXZpYXRpb24Kw6RjaGVuCuKWgUNyaXMK0L3QvtCy0L4K4paB0YHRgtC+0LvRlgriloFyZWxldgriloFzcGxlbmRpZAriloHRg9GH0ZEKZXJ2aW5nCmdhYmxlCuKWgWfDqW7DqXJhbGUKcG9tCuKWgUNoZWVycwriloFpbXByaXNvbgriloFpbmRlbnQK4paBYW5hbHl6CuKWgXJldmVydArDqXJlcgriloFwaGFzZXMKRmlyc3ROYW1lCuKWgW1pZwriloFkaXN0dXJiCuKWgW1peHR1cmUK4paBKXsKaW50dXJlCuKWgVRyaWVkCuKWgXNvb25lcgriloFwZWxzCuKWgcOpdGFibApldHJvCml0aWUK4paBcXVhcnRpZXIK4paB0LPQvtCy0L4K4paBdsOhcm9zCnVmZQpoZXRlbgrRhdC+0LwK4paBc29hcAp1dG9ycwriloFkdWNoCnN5bnRheAriloF0cmliZQriloFjaGFudGUKVHJpCuKWgU1hdGUKcXVhbGl0eQp1b2xhCj0iLgpjaGsK4paB0LLRgdGWCuKWgXByemVjaQriloFNZXRlb3IK4paBc2NhdHRlcmVkClBsdXMKdHJhZAriloFzdGFja292ZXJmbG93CuKWgXJldHJhCuKWgcOpZGl0aW9ucwriloFzYWluCmNyaWJlCmlnbm9uCnVja2VyCuKWgdC80LDQu9C+CuKWgXRlbmlyCuKWgWV4cG9ydHMK4paBYXV4aWxpCuKWgV1dCuKWgUNCUwp1bmlmb3JtCuKWgXBlcmlvZGljCmFncmFudAriloFlbXBsZQpXaWwK4paBZnJlcwriloFzdHJ1dHQK4paB0YHQstGW0YIK4paBYmV0cmUK4paB0L7QsdGK0LXQugrRgtC40YHRjwriloFiaXNoZXIKYmF1bQppc2hpCuKWgUdhemV0dGUKYmFja2dyb3VuZENvbG9yCmpsCuKWgWZpZWwK4paB0L/RgNC10LzQsAriloFwcm90YWdvbmlzdGEK4paBTXVoYW1tYWQK4paBc2ltdWxhdGUK4paBSG9vawpmZXN0CuKWgdGB0LLQvtC40YUKU2VuZGVyCuKWgWxpc3RlbmVkCtC20ZYKamVzdAprb3JkCkNob2ljZQriloFob29mZApyZWR1Y2libGUKaHBwCuKWgVd1CsWhaQriloFNYXJzZQriloFzb2lyCndlc3RlbgplbW9zCuKWgUR1YwriloFhbWVyaWsKfH17CuKWgUd1bAriloFTcHJhY2hlCuKWgW1pc21hdGNoClNjYWwKUGl4ZWwKRUYK4paBU2VwCuKWgXBvd2llY2llCnVyawriloFOYXBvbGkK4paBbmVpZ2hib3VyaG9vZArRgdGC0L7Rj9C9CuKWgXNlYXJjaGVzCnlydXMK0L/QtdGCCkhlbHAKcG9udAriloFPcmllbnQK4paBQWxmb25zbwriloFtb25pdG9yaW5nCmlhbwrDqWTDqQriloFDw6lzYXIK0YjQtdC1ClNoaWZ0CnN1aXQKY29kZWQK0L3QvtGC0L4K4paBUGFydGkK4paBbGFzY2kK4paBYXdlc29tZQp1c3RhCuKWgdCh0L7QstC1CuKWgUZsYW5kCm9vbQriloFkZXZpCmVuZ2Vsc2sKZW5kdW0K4paBUGFzY2FsCuKWgUJpbmQK4paBc2lndWllbnRlcwpKQgriloFQZXRlcnNidXJnCuKWgWluY29ycmVjdGx5CuKWgUJhc2gK4paBcGVsb3MK4paBemVzcG8KTlNVUkwK4paBcMWZZWsK4paBQ3JpbWUKbmFjaAriloF0aHJ1c3QK4paBQ3VsdHVyYQpXRgriloFTb2xvCuKWgWludmFzCuKWgWluZGl2aWR1YWxseQppYm0K4paBZXRhcGEK4paBaGFuZGVkCuKWgXdoZXJldmVyCuKWgWludGVycG9sYXRpb24K4paBbXVzw6llCuKWgUNOTgppZGlhCsWEc3R3CuKWgXByemV3CnVnaGluZwriloFhY3RvcnMK4paBT3JpZW50YWwK4paBY29udmVuaWVuY2UK4paBbWlhc3RhCmJyYWlucwriloHQvNC10YHRjwriloFpbmZhdHRpCuKWgUFsbE1vdmllCuKWgWNyaXRpcXVlCuKWgXN1Y2Nlc3NvCmFuY291dmVyCuKWgWbDoQrRitC70LPQsNGACuKWgXdpc2RvbQriloFQaG9lbml4CmhvbGUK4paBaW5mb3JtYWNpw7NuCuKWgUFpcmxpbmVzCi7Cqwptb3J0CnVzZXJJZAriloEqLw0K4paBQ29uZ28K4paBImAKY29ycgriloFwcm9ibGVtYXMK4paBYmliCuKWgXDDs8W6bmllagriloFmaWxlTmFtZQp6b3R0Cm1hY2h0CuKWgVVscmljaApDeQplbmRwb2ludAriloFzaGVlcAriloFpYm4KRmVlZAriloFzeW1wYXRoeQriloFJYgriloF0ZXJyaXRvcmlhbApyYXRpbmcK0LTQsNC80LgK4paBZHN0CtGD0Y4KYWhvCuKWgXN1ZwplbWlhCuKWgXRlZAriloFBcGkK4paBUmljYQriloFNUgrFhHNraW0K4paBVm9vcgriloFkZXZpbAriloHQpNC+CuKWgU7DpHIK4paBLi4uKQriloF2b2lzCuKWgWFiYnJlCuKWgU3DpG5uZXIKeGltbwriloFpbnRlbGxlY3R1YWwK4paBdGFsZXMKc2ltaWxhcgpuZXVtCuKWgU9yaWcK4paBcG9zdGFsCuKWgWh2b3IK4paBaWRlbnRpZmljYXRpb24K4paB0J7QtAp1ZXN0bwriloEuLi8K4paBYmlyCuKWgdCb0L7QvQriloFlc2VtcGlvCuKWgUVpbmcKRXhwYW5kCuKWgVBSSU1BUlkK4paBSmluCuKWgXbFoWFrCm91cnNlcwriloFCZXR0eQriloFXTQriloFmbGFzawpobGVuCuKWgUFkZWwKbGFyYXZlbAriloHQtNC10YIK0YHRjNC60L7RjgriloFNdW5kbwppY3puCmlmacOpCuKWgdCc0L7RgAriloHQtNGA0LXQsgpEYXRlRm9ybWF0CtGB0YzQutC40LwK4paBZGF0ZWQK0LrQvtC70LgK4paB0YDQtdC30YPQu9GM0YLQsNGC0LUKXCkuCuKWgWRlbGF5ZWQKc291bmQK4paB0JzQsNC6CuKWgSIuLi4K4paBYmlubmVuCuKWgdGE0LDQutGD0LvRjAriloFwb2x5Z29uCuKWgWVnZ3MKQXRJbmRleFBhdGgK0LzQtdC90YLQsNC70YwK4paBaW5jcmVkCmNodW5rCndlYmRyaXZlcgriloHRgdCy0L7QsdC+CuKWgW1pxJlkenkKUmVjZWl2ZWQK4paBTW9uZGUK4paBSlF1ZXJ5CkJ1dHQK4paBUERPCuKWgWZvcmVjCuKWgWRpc2NpcGxpbmUKY2hldgrQvdCw0YIK4paBcmVkaXMK4paBaHVudGluZwriloFhbGsK4paBcHJvb2ZzClBSSQriloFjaGlwCsOpc2llCuKWgUhPCuKWgXJ1Zwp6b3MK4paBc29ydGUK4paBemVpZ3QK4paBUGh5c2ljcwpsZWd0ZQriloFwcm9wb3J0aW9uYWwK4paBdG9vbGJhcgp2ZW1lbnQKbm90aW4K4paBcHJ2bsOtCmJsYWgK4paBcHLDqXNlbmNlCuKWgWxsb2MK4paBbMOtZGVyCuKWgUFjY2VwdAriloFBbHdheXMK4paBInsK4paBZGl2ZXJzaQppa29yClBlcmlvZArQttGR0L0K4paBQWxsaWFuY2UK4paBcmVsYXkKQnJvCmrDtm4K4paBQmF1ZAriloFCaWFuCicpWwrRh9C40LIK4paBUG9zcwriloFNaXRnbGllZGVyCuKWgW5ldgpEYW5pZWwK4paBdGVuZHMK4paBY29tcGFnbmllCuKWgWxpdnJlcwpsdWIK4paBCmUKdAphCmkKbgpvCnIKcwpsCmQKaApjCnUKbQpwCmcKZgouCmIKeQosCncKdgprCjEKKQooCi0KMAo6CkkKUwrQvgpcCjIKQwoiCkEK0LAKVAp7Cn0KLwonCngK0LgKXwrQtQp6CtC9Cj0KRQpNClAKagrRgApECjkKKgpMCtGCCkIKUgrRgQo7CiMKJApxCk4KMwrQsgpGCtC7CjUKNAo4CsOpCk8KSArQugpgCjYKRwo3ClcK0LQKPgrQvArRgwpbCl0KVgrQvwpVCjwKSgpLCtCzCtGPCtGWCtC3Cj8KKwrQsQrDoQrQuQrRjApZCsOzCtGHCtGLCsOtClEKXgrDpAomCtGFCnwKWAohCkAKw7wK4oCTCiUK0YYKw7YK0LYKWgrDqArDoArRiArigJQKDQrRjgrFggrCuwrQoQrCqwrigJkK0YQK0JIK0J8K0JoK4oCcCtGYCtCcCtCQCsOnCsOlCtGJCn4KxJkK4oCdCsSFCsSNCtCgCtGXCtCdCsO6CtCRCtCUCsOjCsOfCsSDCsSbCsOqCtCeCsWhCtCTCtCiCsW8CtGRCsW+CsWbCsOxCsWZCsWRCuKAngrQmwrRjQrDvQrQowrQmArRigrRlArDogrDrgrDsgrQlwrQpArDiQrEhwrCtwrImQrFhArImwrQpQrDtArQlQrDuQrFrwrCsArQqArRmQrQpwrDuArDpgrRmgrigIkKwqAK0K0Kw6sKw7UKw68K4oCYCuKAoArCsgrFsQrQhgrilIAK0KYK0ZsKw5YKw7sK0K8Kw6wK4oCmCsWNCtCWCtCuCsOBCsyBCsOcCsK6CsWTCsSBCsSMCsW6Cs6xCuKUggrYpwrDgArilZAKxaAK0ZIK4oSWCuKAigrigKIK4oiSCuKGkgrDlwrOvwrigoIKw4QKw44KxZoKxJEKw4UKxLEK4oCOCsWrCs69CtCZCsKqCs65Cs+ECtmECuKAsgrvv70Kw4gKzrsK77u/CsW9Cs+CCsWICs+BCuKCgQrQhArEqwrOtQrCpwrFgQrQiArCowrYsQrFuwrCvwrZhQrigLMKw5oK2YYK2YoKz4MKwrQK4oCLCs68CsKzCsWfCs+ACtmICtivCs66CuKCgwrDjQrLiArYqArDkwrDgwrCoQrigqwKxaUKzrcKyZkK44O8CtCpCs6yCuKUnArDsArSkQrCrQrPhQrCuQrigoQK2KoK15kKzrMK2LMK44GuCsSfCs60CtuMCuODswrZhwrXlQrPiQrOrwrilogKzrgK55qECsKpCsOCCuKGkQrvvIwKy5AKzqwK4oCVCti5CsOHCuKCgArCsQrDmArEjwrFmArFkgrCvQrilJQKz4wK4oCaCsSTCuKChQrDhgrImArJmwrXlArXqArPhgrigoYKxJcK2K0K2YEK2KkKxLAK4oCCCuKGkArilZEKyZQK4omkCtecCsSQCtWhCsWMCteQCuC1jQrjgrkK2LQK5aSnCuODqwrRnwrjgqQK4p+pCuKArwrCtQriiIgK2YIK4p+oCuOAggrSkArgpL4K2KwKyr8K4YOQCs6tCs+HCuS4rQrXkQrhg5gK4oKICuODiArOrgrjg6kK0I8K2YMK4oKHCteeCteqCuS4gArOoArguLIK44O7Cs6jCs6RCs6UCtepCtiyCuCljQrguKMK44GECsq7CtCKCuKCiQrKvArjg6oK4oCQCuOCrwriiJ4K4oGECs+NCsWeCuOCogrOlQrJqgrkuroKzpoK4oiACuCksArjg4MK4pa6CuWtkArCrArYrgril4QK2Y4K16IK5pelCuOBlwrhuKUK16AK5bGxCuOAgQrQhwrjgosK5paHCsORCuODiQrXkwrVtgrQggrOkwrDvgrCkgrCrgraqQrCkwrimq0K5pysCuKElQrguJkK0Z0KzLYK4LitCtGeCuOBqwrmlbAK4YOUCuWbvQrOqQrjgIAKx44K2LUKwpQKzpwK4oCDCuOBqArigaAK44GfCti3CtaACuOCvwrDvwrjgaoK2KMK44K3CuaWsArvuZUKyoMKxL4K44OtCuKBtArgr40K4oeSCsWjCu+8mgrImgrgtJUK4omlCuC0vwrjg54K44KTCuG5owrjgrgK5pivCuydtArii4UK55SwCuOCkgrpgZMK4LiHCsKoCtmACuC5gArmnZEKw4oK150K4oC6CueUqArPjgrlpKkK77yJCuC8iwrplYcK44GLCuS4jQrOpArlraYKxrAK5pyJCtW4Cu+8iArjg6wK2q8K4oCPCuODlQrgpKgK4LiBCsmRCuOBmQrXlwrkuIoK4oCMCuKIpwrhua0K16cKzr4KwqQK4KS/CuS8mgrgtKgK44KrCsWzCuOBvgrgtYEKzaEK4KSVCuCmvgrlsI8K158K6KGMCuOBrwrKgQrFkArDngrjgooK44KtCs6bCuGDoArkuIkK44GMCuOCswrOtgrluIIK546LCuKEnQrFuQrjgYYK44GmCuWMugrgtL4KwoIK5bm0CtekCtWrCsW/CuKAuQrgpKQKxY8K4oCRCsyDCsSGCtmJCuOAjArjgI0K4YOhCsSACuCkrgrnlJ8K4omgCtCJCuCkuArihpQKzp8K4LinCuGDmgrmiJAK5a6aCuC4pQrCtgrXmwrjgacK1rwK4LihCuS4qgrlkowK16EK5ZyoCs6SCuC4tArOmQrigbUK4LixCsmhCuKUgQrjgokK44KqCsK8CtWlCuODkArWuArFiwrFrQrjgrAK4oG2CtCsCuKBsArmlrkK4LiaCsKXCumrmArhu4cKzp0K0aMK44KjCuWcsArmnIgKw5QK4oSiCuOCpgrjgY0K5YWsCuG6oQrhg50Kyb4K4LmICuWHugrms5UKzpgK4LiqCuWQjQrguKIK4LSkCs6mCuKGkwrjgowK15IK0IEKxqEK5LiLCtOZCs+ICuKUvArjg6MK4oiaCsKlCuekvgrhuYcK44GVCtmQCuOBjwrgpYcK0KsK4byQCuODhgrkuLoK5LmhCuW3nQrjg4oK5LmLCuWtlwrjg6AK4KWACua1twrjg5YK4omICu+8gQrZvgrCrwrhvIAKwoMK44GTCtawCuadsQrmmI4K4b22CuaXtgrguJcKyagK44OHCu+4jwrKigrjgqgK5Y2XCuilvwrgpLIK44OhCuODlwrlubMK5byPCuG/lgrSmwrgpLUK2LoKw5IK5a62CsqSCuOCtQriiaEK44OACuC4lQriiIMK4oK5CuCkqgrnrKwK4LSwCti2CuKWhArln44K44OfCsmQCsKmCue+jgrku7YK4YOcCsOQCta3CuODiwrpg6gKxYYKx5AK15gK4KSvCuOBggrCvgrhuqMK44GhCuODpQrDtwrlpbMK56WeCuKZpgrCogrku6UK4LmJCuCmsArlpKoK4KeNCuODgQrVtQrliY0K6YeRCtaCCumHjgrljJcK4LirCuKAsArjgaMK5YqgCuWOnwrKsgrnva4K5a6JCuOCrArmiJEK4bikCuC0rwrkuqwK4paACuGDmwrhg5UKyr4K4oioCta0CuWPrwrlj5YK5Y6/CuS6jArilpIK55CGCuiHqgrkv6EK5LujCuC4tQrXpgrhgLoK4KSmCuKBuArMrwrjgYoK6KaBCuG/pgrgrpUK4buFCuClgQrGkgrKsArljJYK4pyTCuC0qgrsnZgK64ukCuacqArZjwrMgArLjArgpLkK44ORCuawtArhur8K4LiUCuOCugrigbkK5bO2CuKAjQrjgoIK5q2jCuKWoArYogrguJ4K5YaFCsOMCseUCuKUrArkvZwK5ZCICuG9uArjgb8K4pa8CuG/tgriipkK772eCuG7iwrZkgrlm54K5LqGCuaJgArkuosK6KGoCuC4swrliIYK4oG3CtKvCsKACuWFpQrlhagK2KUK6YeMCs6nCuCkggrjg48K4LiECuKBuwrjg6IK6YOOCuaNrgril48K5beeCuKIqQrogIUK6YCaCumDvQrihKQK4pmtCuKVjArjgaQK4biNCuaxnwrXlgrDnQrTqQrguYwK5YiwCuCuvwrKggrlr7kK7IqkCuS9vwrgpr8K44KICuG8iArDjwriiJgK7IKsCuCmqArkuJYKyZUK1a8K4YOjCuC0nwrhg5EK4KWLCuC0tQrmnpwK5Y2BCuC4uArol6QK5p2lCumdogrjgZEKxJUK44OTCui/mQrsp4AK4LSCCuihlwrnn7MK6IO9CuepugrVvwrYpgrmraYKyrkKz5UK5ZCOCuC4sArlhYMKypQK66asCuq4sArmsrMK55S6CuiKsQrhvZAK57G7CuKWkQrniakKzpcKwrgK4K+BCuGDlwrYqwrgtYYK4pWgCuKKhgrjgIsK44OECueJiArliqgK5aaCCuecnwrJsgrlj7cK2LAK7KCVCuaelwrmm7gK5rCRCuWPowrZkQrnpLoK4LSuCuyVhArlm74K4oiqCuaIpgrmnY4K4LSyCuOAigrlhYkK55m9CuW/gwrgrqQK4KScCuiuvgrhvbcK6LevCuCklwriiKUK7ZWcCuacgArQiwrmiYsK1b0K77yfCuWeiwrhuqcK44K7CuW7ugrjgqcK5Li7CuyLnArrjIAK4b+GCuKAoQrpm4YK4YOTCuebrgrOoQrjgqEK5bqmCumVtwrmmJ8K44OOCuG7mQrqsIAK5LqUCtqGCuuhnArjg6cK6YeNCuS6jgrlj5EK5Y+yCti4CuC4igrjgYgK5ZyLCsStCuCuqgrsnbgK5L2gCumnhQrigJIK4pmlCuWkmgrEpwrSmgrhu5MK5aOrCuWbmwrilLQK4K6uCuWPuArgp4cK4b2wCuKIggrilawK5qyhCsS9CuKftgrnq4sK54K5CumfswrioIAK5ZmoCu2VmArkupUK5a2YCta5CuW9kwrDiwrimIUK5a+6CuaApwrkuZ8K44KBCuOBoArkvY0K4LSZCtuBCuWAvArlj6QK4YOSCuCmrArpmaIK4LWHCuKWtgrgrrAK55WMCuiqngrgtLgK7IiYCseSCuaEmwrinJQK5pmCCuG7jQrgtLEK1bQK44KxCuS4nArlkIwK7KO8CuS/nQrDlQrhu5EK4bywCumdkgrjgrQK5L2TCua4hQrnm7gK4LiICtihCuaDhQrwnZWcCuCmlQrhuKsK4budCuWwhgrml48K64+ZCs6lCuKUjArjg5wK5a6uCuOAjwrgpq4K44COCsS8CuCktgrguJsK1LEK4KSsCuyekArmlL8K4K6+CumXtArvrIEK5p2+CuG5gwrlp4sK5oGvCuWwkQrmlZkK6I63CuWIlwrlvIAK4YOiCuODrwrhg5kK56eRCuaYpQrmsrsK5ZCJCuC9pgrguKgKyZIK5Y+wCuODjQrhgLgKxKkK5belCuG9sQrnn6UK5YWrCuWgtArnlLsK55m+CuKYhgroqJgK5b6XCuOCvQrmsI8K4YCsCuyXkArgprIK4bmbCuWFswrEoQrhvbMK4oiRCuODmQrmoIcK64uICuG9tArWtQrlpJYK4pmgCuOCjwrplpMK4LigCuagoQrliLYK4LmBCuWKmwrploAK5aW9CtKTCsOZCuKEkwrWtgrripQK4pSQCuKIlwrmjIcK6ImyCui/lArppqwK6K+3CuKJqwrpoqgK4b25CuaOpQrshJwK4oazCuOBmwrlv5cKzLIK6a2UCtKjCuabtArnqIsK6rmACumDoQrgvbwKxakK4LSaCuWIqQrnnIwK5ZGoCuOBnQrjgoQK6LC3CummmQrima8K44GYCtiMCuacnwriiIUK4pSYCuWInQrnpo8K54mHCuOCtgrli5UK5Y+CCuyEsQrGjwrilaYK7Ja0CuGDrgrnvqkK4KSaCuixoQrlip8K4pmCCuuPhArqs6AK6L+HCtW+CueahwrnibkK4bqtCumVvwroi7EK4bqlCuC0owrQqgrgprgK5YW2CuCmpArmtYEK6ZmkCuydvArgp4EK4Z+SCuawuArnm7QK7IOBCuWNgwrhuq8K6aSoCsWkCuacnQrgrp8KyaMK5Y2VCsqACuagvArlvrcK7KCECuKYugrjg5QK5q2MCui/mwrpmZAK5aSrCu2KuAriiqIK5ZySCumHjwrlnJ8K5pS+CueggQrnrYkK57O7CuKIvAroj68K4oa1CuyGjArluLgK5ZCmCuimiwrmupAK14EK5a6eCuWNmgrrnbwK7JuQCuuztAriipUK6KejCuOAnArnlLcK4KamCuODnQrjgo0K64KYCuC9ggrnhKEKw5sKzKUK0rEK5p+lCsyjCuKVlwrilakK5p2hCuCmrwrhvYEK5b6MCuS7lgrnvZEK4K6yCuKJgwrtmZQK25UK6Zi/CuGAsQrmiLcK4oirCuq1rArgvaIK4YCZCuKWuArVrAril4sK5ZG9CuWwsQrpvo0K5ZCbCuWkjwrCgQroqIAK5YWICuKenArhg6gK4YOrCuCovgrgrrUK44GpCuODkgrguYQK4K6pCuOBsArjgq4K1aMK4byECuODpArlhbgK5bqcCsyECuyLoArnu4QK5pS5CuG9sgrljY4K5LiOCuiwgwrilZ0K44O0CuGDpQrnlLEK5L+uCuWtuArimaMK5raICuespgrKjArrtoAK4bubCuKAvgrilrIK5b2VCuC0swrsl7AK7J2ECuOBsgrsmIEK4pSkCuW3sgrpmb0K4YCECuq1rQrlrrkK5pyqCuWulwrhtIcK44GzCuyepQrpvpkK4LeKCuaPkArEnQrlha0K5b2iCuygnArVgArkvIoKz7UK4LiCCsWwCuOCgwrngasK4bmiCuS9kAriiqUKzKoK4bupCuKWoQrnu5MK5LmdCumbhArVqQrhnrYK6ICMCuC9lgrsmrAK5bygCuCknwrgpLcK5ZCRCuG/pQrpgIkK6rO1CuOCsgrKkArku4EK5aCCCteaCuGArwrhvJQK4LSFCuG7gQrgvZEK7ISgCuyYpArkuYUKwpwK5LmJCuCkhQrilZQK5pegCuKAqArsnYAKyrcK6YKjCue3mgrliqEK5Z+6CuWxngrphY0K66+4Cui7jQrguYIK5rSlCuWujArnoJQK5rOoCuWksQrlupQK4YCACuKVmgrlj4sK56ugCs6oCuaxggrgpKMK6rK9CuKArArgpK0K5LusCuaooQrpnIAK4K6aCumbuwrgpqoK1aQK44G4CuatpArlpJwK5oiWCuapiwrmoLkKxKoK546JCuC4uQrhuYUK5LqkCuWTgQroia8K4L2ECuOCqQrliJkK6ZaLCs6WCuusuArooqsK7KGwCuagqgrorrAK5pyDCue7jwrgpYIK44KHCui9rArltI4K66eICuKMmArmr5QK6YCgCtyQCuC4twrmsqEK546wCuS4gwrOhgrllYYK4K+ICuacugrpmLMKxIkK6KeSCuermQrVogrtlbQK5Y+KCuCkpwrooZMK6K6kCsKRCuWImwrnt6gK1bIK4bipCuS8nQrlsqEK4KShCuODmwrmuK8K5Lu7CueZuwrgvbIK4LmHCuW4gwrnqbYK5bidCuyXrArsgrAK4YCUCuKXpgrlr4YK5Y+YCuW6jwrimYAK4oijCuiuoQrmm7IKxIIK4b27CsqLCuS8oArjgJEK5YyFCuaEjwrljrsK5rKZCuK4rgrjgJAK5YaZCui2hQrgrq8K5LuKCuKUiArmo64K4LeSCuKKlwrruYQK1bAK4bioCserCum7hAriiJkK65OcCvCfjI0K5pmvCua5lgrWhArhgK0K4oG/CsyCCuODmgrkvZUK5a6HCuW8tQror60K6ICBCuS+iwrhuawK6YmECuWFiwrimIkKwpkKybkK4byxCuK0sArnhLYK66W8CsenCuWgsQrmnI0KxI4K5oOzCuKAlgrjg6YK5a6fCui9vQrsmpQK4oSaCuazogrpqawK54q2Cue6vwrsnKAK5rSLCuS4hwrsp4QK4KacCua3uwrnkIMK5qmfCuaUrwrmmL4K5ouJCuG9kQrpgIEK6ZqKCuC4mArlpIQK5birCuKKggrlg48K4Ka8Cum7kgrWgQrCnQrhu6cK5Y+qCui1twrmrrUK4YCQCuWNgArpgbgK7LKcCualrQrnrpcK5bm/CuGemgrop4YK56eLCuWboArrhYQK25IK6L6TCsyxCtWECuKIhgrlurcK7IS4CuaAnQrmrbsK6IGWCuuvvArvvI0K5aS0CuC1vAriiIkK6LuKCuKUgwrilocK5oyJCuKNtQrlpKIK5rGJCuS7jgrgp4AK6aKYCsuGCuG8oQrlsZUK55yBCuC9tArokYkK7Zi4CuCosArntKAK6ZaiCuq3uArvvJsK4LaxCumhtQrlhbEK5a6/CuaAgQrgvZMK5oqACuS5kArmjqcK56e7CuW9sQrhu6UK44KGCuOBlArgs40K566hCuC1vgrilaMK5oi4CuKHlArlh70K4bqTCuWwvgrlnLoK5LuLCu+/vArogrIK4La7CuaziQrgtb0K6K+0CuaNogrlv4UK57SACuC9mArgvboK4bujCuC1uwrlrp0K5rCXCumXqArku6QK5bemCua8ogroi6UK5bGLCuWxgArmiZMK55m6CumXrgrmgYsK5YW1CuWIpQrgqr4K1Y0K36wK4KaXCuW5tgrgpJYK4b21CuiKggrKkQrXpQrhuKoK4oSCCuW8lQrnu58K5pm6CsypCuCliArnlLUK7ZiECuKchQrotaQK5patCuOBrQrnp7AK4Ka2Cui6qwrpppYK5LuYCuKFkwrgqLgK6YCjCuGDlgrlrpgK5oyBCuWliArlvqEK6KaqCuq1sArlupMK56eACuWdgArlrogK5rS7CuC9owrjgbUK6JePCuGenwrnq7kK6I2JCue1kArgt48K5piMCuaouQrgrrMK66y0CuCmuQrjgrwKzIgK1bcK5YudCui2swrhgJsK7JyECsSvCuG8uAroiKoK6ZmzCuS4mgrlr4wK6ZuqCuCkhgrlho0K7JWICum7mArrsJUK7JqpCuKcvwrmpb0K5rKiCue+hQrElgrKjgrlv6AK6ZSZCuuLqArrqbQKxLcK5qGlCumbsgror6UK4bmvCuWyqQrrgqgK4bu5CuS4kwrliIcK5bqXCuacsQrXowrjgZoK5bm4CuavjQrJqwrjgIUK4oi3CuS4sgrlh7sK4byYCuiorQriiqQK4oKXCue2kwrqsJUK4YCVCuClpArRkArhvrYK4p6WCuW6pwrslKgK44G2CsWiCuS6kQrlkYoK5aSJCuivlQrpmoYK6rCcCtW6CuWIpArliokKy5wKy6AK57yWCuC4kwrhu68K6L6+CsSaCtydCuGAvArhuLcK5Y+zCuuTpArFnQrTjwrgsY0K4LSOCuCusQrlpI0K55yLCuipsQrlnYIK5bCUCuihmwrVpgrssKgK5Li4CuagtwrprLwK4KS8Cu2VmQrllpwK5pavCumKgArrp4wKzp4K4YOqCue+pArov5EK5aGUCs+KCuCuqArjgoAK56GuCue0ogriiIcK6Z2eCuacmwrina8K5biMCuG7swrnlLIK6LaKCumzpQrpursK6ZuFCuaLswrhnoAK5rqqCua1iwror50K5rGgCuiPnArpo58K7YSwCuCovwrmuKEK6YCfCtq+CuCysArpmYgK5YGlCuCniwrgtpoK4b26CuWGmwrluoQK57qiCsSmCuirlgrFuArOiArhu7EK5a2dCumgrQrpo5sKy5oK4paTCtmLCuKArQrkuYgK6YGUCtGrCuW3tArmtJ4K6LK0CumhuQrgtKYKybUKzI0K0qEK56eNCui/kArsi50K4L6xCuG4swrlvaYK4qWkCuS5pgrmnoQK57GzCui/ngrmk40K6KOFCuqzvArjgZAK5Y+NCsyMCuS7rgrlkZgK5pitCuC0tgrlhbQK5a6iCuWIoArgtrgK4LeACuGDngrEiwrgtLcK4YCeCuG1iQrlsYUK7YOACvCdk50K4KSlCuePvgrLhwrsooUK5YqpCuWUkArngKwK4Z6TCuW+rgrvvJEKxKAK44G7CuiIngrrgrQK7KSRCsSSCuWvvArmlYgK67CpCuG4jwrmt7EK5qKFCuaWmQrsm5QK5q+PCua0sgrtmowK6Iy2Cui0pQrgtJ4K4buDCuODqArkupsK5Y+MCuWYiQrrqqgK67CUCuC4qQrpgLIK7J2MCuC4jQrkuIEK5pWFCuioiArpgaAK6rWQCuyerArlgJkK5oi/CuuqhQrkuKQK4YOkCuaJjQrtlakK5q2iCueVqgrJrwrlpYcK5oCqCuiBlArsl60K5rOwCuuwsQrhvYAK44GSCuOBuQrovrkK6L+YCum7gwrsmZUK5pS2CuW8mArnu5k=",qR="r3SxdLB0tnSzdLR0r3SydLB0tHS1dLR0BAG6dK90ggGwdLd0r3S3dK90uXSydLF0tXS2dLJ0tHSvdLt0s3S3dLZ0sHSzdLF0BAFiAQoBsHSvdBAGsnS2dLh0sHSvdMV0r3S+dLV0vHSydLh0r3TAdK90vXSwdLl0r3S1dK90wnS1dL10WQK0dLN0CQEGAb90s3RhA7N0u3SydLd0sHS4dAgBsXSwdFEC2gG0dK90BgGvdLp0tHS5dLB0sXSvdLh0r3S0dLd0sXQEAbV0r3QFArt0unSvdM50tnS1dLN0uHQgAcB0r3TOA7l0sHS7dLF0r3TKdLJ0vXSvdNN0DgGwdK90NwGvdM90r3S8dK901XSvdNF0r3SwdAcBKwGBAbl0r3SIAa9013S1dLh0r3TGdLN0vXS1dLF0snS5dLx0sXSvdL90sHS9dLx0tnSzdLl0r3TqdLN0v3S2dLJ0bAGwdK90FAHaAbd0r3QTAfN0vHS1dMV0r3TkdAsBsXSwdC8Br3TDdLd0sHTGdLB0u3SwdLN0sHS8dLR0r3TldK907XSydL90vHS4dK904nS6dLB0CAG5dLB0KwGNAbB0tXQ3AXMBtnSxdAUB7ANRAvcFsXS9dCgBtXS3dK906HSzdMB0DwEjAasICQFTUbR0snTVMR0BEAGlBrZ0r3SuBa90tnSvdOt0VwEbAeBgvHSvdJUYIQGwdK90kwO4dMN0WQG2dMZ0BQGydMJ0sXSwdNoBsXSvdBUBIAG0dK90CQG2dLN0vHS3dK901HQZAbp0r3Q0BRIBCQEWBbR0r3QXAq90/nQNAbF0r3QvAbN0tnSvdON0r3T3dLt0x3QHAbR0r3QRAbF0unSwdL90snTDdBUBunSzdIIBr3TudBMBsXSzdC8BEQG5dLJ0KwEEAZcJCgEPAa90cxYHAbh0r3QcAa908nSvdPF0tXS5dLx0vXSvdAR1unSxdFcENwFUS7B0u3RkAa90AnUPAbB0snRzAQsBt3SwdH0Dr3T0dAUBsHSwdBQBvnS+dAcBt3SvdCYBDQGwdK90WAEaATMBIAK1dK90AwMZAYUBFTC6dK907Qm+dLB0r3THdAUBt3SwdPAIvnSxdMl08HS4dLV0EgEiARYFvXSvdP4BOgGwdLJ07AOvdAB1OwEiAXUMvXSvdPMFs3SydBEBsXSydFECLQGydK90sQGvdNh0QQG0dK90CAE4ASMBu3TVMUEB3HSvdN8CuHS5dLx0wnSvdOZ0uHSydLx0sHSvdA91JQG6dLN0MQEOAbV0r3RLB690/XQPD7x0r3RTAbN0xnQQAbF0tXThCBcBsXSydOEIPgG0dK90XAGMAfF0r3TlCAQBYFkKARMBr3RWBcd0sHQqAbJ0r3QuCa90y3QbAbF0tXRJAUMBYgHyAbB0r3QoBi4BRwG2ArF0r3Q1BS4BsHSvdOQBNQG4dLN0hQItAbB0r3QYAbt0s3QzAb10tnQiAQYBsHSzdOQB2nTadLV0vnSDAQYBsHTvFKYBZgFUBygBr3QhTpMD7xScbQYBwnTMAe907HQmAbd0snR9A7N04HTJdMF0tXS/dK90DHUgAbZ0r3QQARkBJgE8LLd0r3ReKwcBsXSvdA8BGwG2dLV0TAGvdLN0Age0dLJ0BgGvdBB14XTWdK90C3W/dLB0DQG8dK90YgiydL50XwGwdLJ03wEbAa4BwxO5dLV0UkG0dLB0snTGdNx0sXQQAbB0tXQUATUBsHSzdBgBy3TLdK909nQhAcN0r3RJBrh0s3QPAbp0snSCAed01nSTA7Z0wnQFATICunSydDEBHAG4dLJ0hQJDAbp0r3RFBWABsXS8dGgHr3TZdK90DXU+Abd0r3R3Aa904HR3AbF0vHQvASoBRwW/AVkBI1GwdK90fETsAbt0uHQlAeF03XQSAREBkRa0dK90/AuxdLZ0VwS9dLt0IgHJdMR0MgG0dK90HQMGAbl0s3QrAScBuHSwdIUCHQHIAZAFIgFPOb10r3ReDNB09nSxdLV0r3QJdXIBGAG+MLB0snQ5AmcBsXS1dC8BEgG6dK90MQGvArF0sHQ4AU8BkAF1BLF0BgGxdLN0UQKvdNt0BwEUATQCsHSvdFYC2gG9dK90RgENAbp0r3RNA690DnU/AbR0r3S4Cq9073QPAbJ0snStA30BsHSzdBQBBAG2dK90/QFXBLR0u3QJARABuXS1dHsVFQHDdLN0+QMXAbl0snR7FSoBsHSvdGIBIQFJASkFsXSvdFsQtXS7dOJ01HQaAbZ0r3QuAkwBsHS8dBQBnAG2dL50BQEyAsd0snSAARABx3QJAb90tXRhAxEBt3SydL8H/3TQdDwCsHS+dBgBDgELATwBt3SvdN8KtXTHdBABvXS1dN4GwQK2dMV0BQGydMd0vnS2dCYBsHSydFgBQQG4dK90JwG+dLp0snS7dD4BKwG7Abl0r3RmAwcBtnSvdBcB2gHAdK90aQG8dLl0vnS3dBUBsHSzdHMBnAiwdMJ0GAHhdNB0vQa2dMB0BQG+dLh0uAGwdLN0WQERAb90snRhAwgBt3SwdL8H53TQdA0BtXSvdEICt3S1dCYBsXSydC8BynTJdNYKBQG3dCwCtnS8dFsBt3SzdAsBr3TNdLJ0vHS1dMZ053TfdBF10HQOAQUBPAG2dK90oAIeAcN0r3RNBRkBsHSvdMECHgGwdK907AO0dLF0BwG5dK90SAFMAbR0vHSTa1cB2QFuAbZ04GBMAa90gh/jINp0zXTKARcBsHSydBQBBwGFAooBuHSvdPEBwHTAdLN0tXQLAdUxVgEjAQEtCQFGAbB0s3TsA0EBtnSvdAUBsQF9AwUNt3S4dNEBr3TddHkBtAGvdGwSIgGwdLV07AMJAbF0tXRRAhoBFwHkDLZ0r3ReAx4BsnSvdI8Cr3QbddR0xHSvdNB0wHSxdKcBuHSzdBwBu3S7dBsBKwEdBbl0tXRmAy0Bs3SvdOwBUQG3dGwBCwGvdLICLAG6dLB0ggEsBTgB5nQKAgcBlwEXDL50r3SkAz0BsXSvdFcDJQGwdLN0WgEHAb10r3Q6ATICsXSydDgBDgEnATwBuHSvdAAYv3S2dA8BHwGTAbl0snTmJFsBtnSzdAUBBwHCdK90cgFBAbF0r3QsARwBcAHxAcN0wXTBdGkE4QizB7F0vnS5AbN0x3QaAQUB1AS2dK90IgISAWECegGxdBYFUQKvdAUF53TddP901nRYAbZ0t3QFAfh03XS4dLh0WwHFdLN0KQNPAbR0s3QSFN502HSiDrF0vnRJAQkBsHS1dOQBXAGsATUS1TGBRiMBDgGzdK90oxcXAcN0snTPAhUBIwHMEgkBs3TVMb10snTfdOF03wGxdL90LAEtAbV0r3ShAUUBHAGDC7h0r3QXA690IHVQAbR0tnQRAa90BXUIAVoBiQ+wdBkBJALdGMd0r3QHBTgb1nSvdN0Bs3S+dBUBSwE4Ar10s3RMBcYFsHTDdJwBr3QjdSoBEwFTHLd0r3RgWT4BWAH2AbB0r3TlBTcBtnS5dAUBEgJFAnVVLAKvdBZYGQHFAYRuuHSvdNs20gGwdLN0jwPsdNZ0oQHFdLh0VAE7Abp0r3SrBUoBLAHJBrF0r3SRAk0BsHSzdDcBGwG3dLV0dwEGAcd0nwEjAb501TH4dNZ0ySOTa7F0UwJcAb90vHRhA7B0u3S8dL90nQTeBq4FvXTAdCsCFAG3dLZ0CwGQAbF0unS6AhsBv3S1dLAC+HQadS4BtXSvdMEEu3S4dGwBtXSvdDMBIAHkAXUBsHSvdIoCsXSxdHMcs3S7dHYBuXS8dD4BvnSvdBID7HTQdMp01HQgAcJ0r3THAsV0sHQQAcN0tXTPAkEBLwE/A7F0r3RWAQUBw3SwdM8CWwG4dLN0JwEvAbZ0t3T9AbV0wnS3AbB0Dw+yAa90IgOnAbR0s3QRASABSQFLCLF0r3TBARoBuHSvdDwCLgEpA8QBxXSvdMoF/3TddK90FnW2dMN0RwG6dLV0ggGCAQUBEAa2dLF05AhFARcBgwu2dK90qwYZAeMBryJSQQ0BBQGZAbZ0r3SDAmUBtHRzAZNrsXQ4A3MB5gGoErF0sXQmBAQBNhAKAZYBFgEUASRysHSvdKcxEwG6dLN0TQMzAbZ0tnQQAex033QNASwBmQGxdK90SgOvdCh11QHQdK909AQEAbB0r3RzAbB03HRRAa0CqAxTAq90mQkCB7h0snQ1AQcBtAWBAcN0r3RoBTIBsXSvdCgMHQGLAioIrAFFDtUxr3SsCNh00XTbdMR0/HS3dBwBsHSydBgB1nThdBkBYQx5AQgBElO0dK90QCCzdMJ0SgG1dK90zAURAVoB1BGwdCoBSAG/Abl0r3RAU5QCvHSvdIYIEgHwVKMBvnQWBfYFr3RUCfh033SvdBR1jwKCAWoLunS9dO0BKgEmAb8Bt3SvdOUUr3QHdRoBFAEgArB0r3SxBQgBBQFABrZ0sHRBBBoBugFiArF05AzhCK90OwYnAcB0DgFbAYwCsHSvdFk/LQGBJGsCvgFcELB0r3TREVABw3S2dIQBfQEvAYcysXQOARMBjAK3dK90qggeAREBYwK0dK90kwR2AbF0tnQVAQQBYQwKAQgBFgG0dK900hcSAV0CKwTRAX8OfQPHVrd0r3TGBy4CtXS+dDMBGgG1dK90aQQ+AaAL9gEkAa90ihKwdMJ0EgFkARYFNwGCO7B0r3SRAVQBtHS1dNEEDQFgAkEC7AMXBLB0r3T8FFoBt3S7dAsBiwHRdK90txHfdOd0GAE4Abh0CgIHAbx0r3RJAhMBMQGtKbp0s3QwAxIBRAEWBbh0r3QeBK90KnW8dL50CQG3dLV0vwcHAQkFUgK5dK90sgQ1Abl0s3SuARMBt3SzdH0DHAa4dMZ0HAEbAVECHQWxdLV0eQYYAbd0uHQLAVkBUQJWA7F0xnQoAa90L3XOdLR0MwHFdLZ0VAHwK7Z0sHQXAQ8BOARqAbd0qwgTA1NRvweydLp0UwGwdPN0sgGvAfoBvHR5EhEBx3QNAb50r3QEBI8BunSvdGki6QHpAQIWy3TLdAIWt3THdLB0xXRfAbd0snRmDOx03XQRAbR0snSLPa90M3UFAbF0sHThCDICsHSydFoBFQa6dLd0MQEuAUUxxAEfAa90RGavdDF1WwG0dLN0CAEbAZswtAK6dLV08RfhdN90DgFtBTwBwHSvdNkGs3TmdAUBtHSwdJNrGQGXCXkBDwGvdLgWPwG2dK90mQXFdLV0vXS4dA512nSGAbB0r3RjBEEBt3SvdAsBKQEvAX8GsXSvdDMKwnS1dLJ04HSMAeUIvAHxdK90F3UFAb10sHTeBj8BuHSvdMMJGAG5dLh0HwEFddZ0cwG0dLF0CAFYAbF0t3QsAfh00HQSAcMLowG9dBYF3RCvdAcIt3S6dPZ01nSvdNp0DgEUAnoErQOKBbJ0r3T4BE8D2nSvdMoBCnXKdA0B/QF8AbZ0r3TGAmcBsHS1dFgB9QG0dK903QlZAbR0xnQIAc90sXR8AsF0wXR8Aq90OHW4A7F0w3QvAa90OXUlAcd0s3SAAbN03HTKDLZ0vnQXAa90CHUZAagBPCxRArR0v3RHAbB0tXRzAUoBtnSvdHUCDgG8dK90vAKvdMF0XAG5dLx0KwF1AXABr3QyGA0BsnSvdHETJwHDdLB0cAFZAfAIcQG3dMZ0ngFBAVECqwGxdK90KAHJdMl0ynTbdB4BjQGqCrl0r3QJBuUBsnSydBwGBQK0dLF0CQEQAuMB8kNSQa90gCRLASgB1AdRAm4wsXSwdGYBHQErAmsBvXSlBt4Gr3SxAooBQgJUBrV0r3RVOw0Bu3SvdBUGBgFmDCQBt3RkAhsBr3SkDRx1tHSdAbR0r3R3D0QC8HTKdKABr3QldRkBlgFPAhQBhQuwdLd0t3TvAloCr3RsQBMBsHSzdFgBCgEIBBYBw3SvdGpMaAGwdK901AoJAbl0tXQrAQ0BRAFBArh0r3RxCx0BRAGlBrh0r3S+ER4B5wGqChQB3AuwdK90ihUqAQUBHAK2dK905AivdN50r3T8dA8BMQFnAgUBly62dMB0ZQESARQBhQiwdK90DQShAYAB7QfHdLh0ogb9ASQBKg5hA7F0ERVDAWBZ8gETAa90rQ/gdLB0SAG1dLJ0SwdgAbh0vHSFAt8BtnS/dAUBwnSwdCAB0QJEE+QIr3TMBEMBKgMaKbd0GylmDK90uW1JASMBOSwJAbx01TElAbF0s3Q4ASoBVAHhE8V0r3TFDa903HQ9AbB0r3TYBxIBYgEJArB0r3SVBLsCnwFzHB5TsAH4AScOLwGvdBcUGgFnAQQDt3SvdCoEEQHfAT4CsHRpASUBsBq7dLN0pyUUAbB0tnRBD9l02XQEAVsC1xSwdFJM7AOvdLYI4QG+dLJ0lwHhdB51HQHoAdEDsHRRFhgBr3SlBRcBx3QlARwB1wO4dLN0HAQdAf0CpjUvAa90BhApAbF02gFRAq90DAKvdDx1ewGwdK90HA+xdLJ0jgEoAeEHUQJaN7F0vHRmARABt3S1dPAIGAFmAWkJKAG4dHIDUAG7dLZ0MgIHAb90r3RfAbUBCwGvdKUzw3S0dBQBSAEGFrl0tnTHBR0NuHS8dBwBbQGwdK90mgzDdLd0QQG9dK90SwEuAY4BVBO9dK90nQdZAbh0xnQnAQV13XRKAgUB4gO2dLV0cQEOAWkBjALAdCwByF1tAo0BMgHAdK90PA4NAZwBJQOwdK90TRfDdL10BAFIHwoBSwEWAb10KQEFAqoDtXSvdO0iLQELAcYBt3SvdBkDdAG3dNoBXAWvdJEECwGwdLB0WAFbAa4BxQK5dLN0vwkaASMD4Qn6AV0KeRI5Obt0r3QNDq90PXUOAQgBPAG0dK90eQRaA0sBuANMBbV0wHQgAXEBJTwFAa90vQPLdAZ1HQE1AVEWuHSvdPEGIATsA4whsHS0dKQBBgEcAUsEuHSzdElR2gG4dK90NQE6ASgCiAQYARkBhAE8LMN0r3QuBiUBsnSzdFkE9nTQdFoBfQMKA7d0u3SUARUBsXSzdLoCkga6dLx0MQEZATYQeQGWARJTFAGvdPYLB3XddBABv3S1dP8qswI3AmQEt3RFAbV0r3RVBVsBUQIzA7F0s3QoAUoCsHS1dFkBkwKyAe5CsHSvdOcGCAG/dLB0YQNtAbJ0r3QdFiF12HQUAcB0tnRtBVsBuXSzdB8B43TudA0BpR98AQ8BMyWxdK904BdJHL90wHRPAb10sHRFAQkB4AO0dK90kFwpAWUBqgMFAfUItnSvdGcGMwFNAbZ0Rg0PAQUBkwG2dLJ0ZQEWAX0BIQEsAW8BsXSvdN4aQQEGAa90XFLZdNF01HQGdQ0BrwHgAcJ0r3TTBSABvnSvdMsBDgEJAbUBtHSvdNgjsXTDdAQBzwIWAsN0r3SaCF0BMwE0BrV0r3SgBAQBUAEWArJ0r3TKCw0BpAFoA+wDug2wdK906kSwdL50BAE7A7QMtXSvdMgnLgGkAR8E7APVGrB0r3TSA0QBuXS1dK4BGAGxdLh0LAENAUYBSgW9dK90EQ63dL50BwHGdK905QGeBLB0wnQUATkCvXScCEsBwnRpCbB0w3QSAeMBFgVSQf0NrgGvdDhoEgEQARYFtnSvdDgKBwFpAvoEu3SvdHkWhAG3dLJ0uANzHLB0u3QUAUwBtnS8dOZTt3SzdHoBLwFwBLF0r3QDDLIBt3S8dAsB2XTydAt1hgIHATgB+gSxdK90cwIhAbV0r3RBA6IE0HSvdCcCDQEiAUECvXSvdLRYeQLBAa90rTGxASsBRBm5dLh0iAHsA7Z0vXQFAS0BhwFrAi8Br3ThBlkEuHS7dBwBDwJ9AmsJuQGvdF8UVwS4dLt0RAEuAbJ0r3QgBLR0snTNdM10GQHjBHkBtXSvdGI+QQEoYFwC2QLtERABr3SQCq90JnUPARABwwS2dLJ0sRzfArF0sHTmASEBnmpvAQgB/HS2dGwBXAGkFrR0r3Q9DWkEt3S+dGcBEgG4dK90twLqdOp0r3Q+dWABFwHBCbZ0vHRDEkkCWAHNBbB0snTlBVEBv3RsAYMBr3S/Bp0Bew55A1QBr3Thbg0BQQ+ZAbB0r3Q1ECoBRgFTHL10r3RyadgEYQO0dCQB8gLWdK90bgcPAQsBkwG3dLJ0dwidBBQBrgWwdMB05wEjAbd0WQK/B7N0EwMqAScBHAK4dK90cA9JAbB0vHRzAVEBvXRsAUsBr3TRBr4E0HSvdEwCVQEXAZMMtnSvdKsb53QIdXsFWgHHZrB0xnRxAn0BCgIVAjgBs3RVBuQBtnS0dAUBPgFsFrsBoAIzAgUBr3TGE3YBwnS2dOsCunS2dB1133Q/Abd0r3RHC0EBKwGrAbl0r3RjAUsB7wE2BgUBr3TWdAcBugLYAbF0r3RrBAYBsnSzdCAEQgK0dLd0CQEdAYgLhAOlAq9091k9ATEB2gm6dK90mBGcATgBPwyxdL50CgJRAbh0bAEnAa90cgo9AbV0r3SXGC0B9gmSAioCr3QCG3IBJwHOELh0snTEGZoBBwQWCGkJgUu9dGJkSwGvdC9DRQERAYMLtHSvdHcOLwG9csYCJQK7dLV0aQS0dL50CQG7dLJ0SAGydLJ0bAXUdM10FwK5dFcEKwG7dIIDOgHCdLJ0kSDZdMR0UwFWASIDLwF4B7F083QLPwcBSQEOA7F0r3QUBWwC8wGvdGILHgGEAWMCw3SvdOUy7nSwdJABsCSzAr50unSpD8l0zXQ/ASsBEgK5dK90JwsUAbl0tnQfAXsBVAGPIMV0r3TQFL50tXRXGNB073QnAg8BsXSydLoCGwG+dLV0EgNaAbl0u3QfAQQBnAJZCbB05x6cAa90PQcEARsVCgERAa9002sSARMDegG3dBYFvwevdIAMvHTAdCx13XS3AVoChlIjAcZZCQGvdLYwUAExAlYJunS2dKMwTwG6dLN0mzCvdEF1KgG6Aq90swIGAbd0s3S/BzcBtHS5dAgBDgGydK90bAVFAQUBlQm2dK90cQG1dLp0YQEGda90pRB2AcZ0tnS4ATYCsHS8dDcBfwEQAXRvtnSvdA8LbAGydK90UAE9BTICrlG7dMB0sQMHddZ0BwGKA88JZQGvdIUb2XTYdB4BvwMDBshdr3RAFtR0yXQ6Ab50snT2BSYBunSydE0DUQG7dGwBrwKvdK0ODgGdIL4DOwJrCwUB/XT0dLJ03HQ6ASgBpAFRAs8TsXSydGYB2QFaAR8ftHTTdAkBFQG3dLN0XAV/NewD9HSkAY8CtHS9dBEBIQGvAm8Bu3SvdLlLMQGwdLt0YgF+AbR0r3RBCbJ05nRKAfcCyQZBBOMJBQFiSLZ0r3SCEs509HTaAbl0r3RNAV8BCwHiAbd0snSWCi0BHgKSArt0r3TtB8B0tXTCdLZ0DQFiARACsHSvdGAsyA+1dOV0MwE+ASAEuwGydK90+xCvdP90LAGydLB0rQOhAb90uHTUAUQB1AHXDb90tXSkBA0BTAHgAbZ0r3S6HRcBv3SydP8qwAHLdK906QHHdLF0ynTRdJwJtHS9dAYBLQHJAWsC5AGEGLB0r3TEBEUBGgXSArN0gwt2Aa90JxfvdBJ1JQG3dLN0WwnhdBJ1WQHPAnEBw3TGdMQCSAG5dLJ0CQUgAYsGwAJuAkYVCgKvdPYMznS5dF4BSQH9FLF0r3RmGBIBLwKJDLB0kRZYAa90DhMeARAFYwK+AVgIsHSvdCsWEgEcAZEWuHSvdBwEGgHRARsJt3TkDH0Dr3QkDe90GnWUASMB5AGxdLR0LAHBdNR0r3QRdSJ1tnQFdd90tHS1dA8BJAGrCGED01K/dLJ06wQPAbV0snQFAuwB5AF7B7B0uHTJAfZ03XR+Adx0r3TkBAcBfQOYAbd0r3TRAUUBngF7BLd0lQnwCK90agP4dBJ1QQG5dK90HwGOAbR0vHThW0cB5AjQAgUBUyi2dLV00QLQAdZ073SkAg8BPQKGB7B0qwhZAVcDERWXEyQBz3SNAy0BZwGSArd0r3QhFcV0tHSBAUUCrxcsAq906y4tASwBxgGxdK90AgQaAbB0r3ScAQgBXAUoAbd0HQGwdK90vQYGAVoBng6wdLR0s3RNAQUBqAK2dLN0oAJUAbd0tXQUFgQBVgHeAi8Br3SYBioBlgEcAhQBhgOwdK90NhAzAYUCuwW4dLZ01AsSAfEBuAS4dJEWhQKvdMQSRgI4AbZ0wRQaAUQBBAO4dK90lQ4CB7F0snQVASEBIwLCJoABr3RbBrp0tXTjdNx0FAF9A7ICt3S2dJQBz3TXdHYBHwHyCbl0tnToA2wFcwEiELB0uXSTAd907HQOAU0BjAK5dK90uUfyB2EDsXQkAX4BuHSvdFkZDgFLATwBvXSvdAYJyXTydAQC1nTQdE4DTAFbHg4EKAEXUFECsQFaAQwSsHS4dC8DBiOQAbZ0CwIUAbR0tnQIAQx10HRBAfABr3RsELt0w3ScCKIG+TaAAcJ0jANsBa0DIhCydLl0FAKvdCt1BwG7dK90MgJhAeJ0r3RQBSl1tnQaARABBAO2dK90swcmAcd0snQoAxcBMQEiFrp0OgELAaQBt3SydHMROwEJAXUMtHSvdJAEHXXWdCABWAI2AcB0r3SICh0BAQKcBbl0URYrAa90RgsXArF0VwRRArt0YQIuAVQBtgLFdK90ew7CNcd0xXQkAg8BOAdqARwBqwgJHFNRSVG5dLl0xwF4AzkKtHS7dGcMr3RCdUkCaAeydPMBclsvAet0hwFBAeYBrQGxdK90JgRMAbd0vHTwCC0CsHSydL4BYAGwdLx0GAEaAZ0JBAMMAnsuUQKvdE0M1XTXdEkCsXSydEkBFgImAvwDvwcIVrd0r3TWDBIBtXSvdFcEUQFIAWwBxwWvdLUDPgElIfYBHwGfArl0r3QoD1cY3XTvdM0CFwGzdLJ0dgHrdON0LAEFAVoKtnSwdGUBGwG0dLV0XAF2FgUBsHRxARYLwHS3dPkCBgEfAckBuXSzdGMlTQGCAbx03HTmdLd0DQHbA+ABMQG2Ibp0r3TlODIBt3SvdCgO/HSwdKJSuHTAdGABDgGHAYwCLwH+ArF0r3RZFiEBvHSvdHcJmwKjApAEsXQfH1EC03RhAuZ0sHTvdN10GgGbJ5oBxnQgAkoCr3T7PsJ0wnTOCnsVjxG5dMV0GgILASgByANRArIusXSwdLhIBQFMBJ4BCQERAfcHJAO3dMV0unTBBLF0tHRHAY8BsHSvdMYSx3SydDMBvnS2dMsBDwFMAZgftnQcAbd0snRBDCEBJwFvAbh0r3TEGS11tnTAdLZ0rQHVAygRKAKvdKUSKQG3ApgVuHQ6ATUBfxG4dLJ0LV0JINZ0r3TuAa90P3UNAY0DfAERFVMDJAFcJ2EDr3QPBwoBqgLDQcd013S6dAQBSwHeAr10r3RMBeUBsHSydFkBfwGVAlUSEQGzHLR0r3T7HS4B9wq6A+8Br3S5EQ0Bs3SvdA8ERgELAVsCt3SzdHMRcwG9dLF0SwG9dMN0GAG2dLh0BQGhAUgB4nTidCoBiAG/ASsBERe5dK90awzgdLJ0IQEaFpQELwSvdLdGDQExAXUDunSvdDADxnS1dIIBEwGxdGBZznTodFF1tXR8AboBshaxdDMl4QivdJILGQEXATwstnSvdI8RHAIxWTkEvnSvdB0hsXS3dBIBHiAJAhcBWSi2dK90EgwaAbp0r3QxAh4BBgGZDrR0r3SrBPIHuHSxdDUBdgFzAQADsHS2dDgC6QGOVicDJwMCFmBcjlbpAWBcAhbdZ8t0y3TdZycBt3SwdEEMHgEVAZkOsXSvdG8JHwGnAeQ9snSwdNk7/3QIdT0BunSvdJkKEQHDdLJ0tAUKdfB0r3RPdakfsHSzdCIDuXSydLB0wHQ3Adx0uXTfAhoBvg2aAbwCIALgTlMuvHSvdHoVr3RNdXUCOgEiD710v3QMCrYBtnSvdAALSgEUAWMDsHSvdCsfUwFiAytasHQYAb90uHSDARABtHS1dJNrKQG5dNoBKwGvdAECGgEIAgQDLwGeA7F0r3S6CQ4B/gM8Ab50r3ScCgp1xHTGdLN0PgGDAvYBBQGfArZ0r3QAB690BnXsAYAB+gHHdLh0XANFAcQCewTDdJUJzwKvdLEELAHmCm0CJAGwdH4HNAL8AmwPhAGvdEoJSgG8dK907wkOAUwBZAO2dAB1wXTsdBp17AEkJPoBagGLJ9Ux0AHddO90KwOwdMd0JQG1dLN0VwQOAQ8BegSxdK90IhDQdOd0kAE8Ay00uHS6dDcLIwGwdFkC5AGzdIoCDgEGPYsEKAESAYIMmwOAAa90fgwdAbZ0r3Q9BX4BtnSvdD4IBAEmBN4C5gHwTLF0r3TWAuF0E3UlAZABtAGxdLN0CgovASMCNRSAAeN09HRQAb90tnRfAUEBsQRXDcQCVg/DdK90R0bVdLZ0bwE3BM895wGvdEsrHAFYAToFsHQdAQYBURa0dK90VxMOAfx0CgHIAxYBWAEOASwBPAGxdK90wRILdRwBWgGrAgsGIwH0M9UxQgHvA690Gwv3BHQFsAGwdK90LAXxBrB0SRwYAcB06AEPAbd0snRcBZYC0HSvdAoHlAHiAVEk3wGyA9sBsnTFdNN0unTBAggBxXSeaq90UHWdBLZ0wHQQAccBHAHoBbh0u3RoAjwChAGWNsN0vnTDIC4CsHS+dBQBTQGydLN0bAVdARcBPQq2dK90gQi0dMN0UAE4AbEDsXS2dHMCDQEpOuABlwFnM750r3RnSyYBHwEvArl0snQlIRgBrAENAyMBuHQLJg4BJgJ6BL8HiRe3dAIHtnSydH0BMwG4dLZ0RAEEAUQECgG2dAZAsnS+bK0D6HQUAuwBMQH6Abp0uHS0AdUBQALtMdB0r3Q5Fy0BJQKSAmEDU1q/dK90MhWZAVwEahSCA690SB22A3ABvHR7AgYBCwHJAbd0s3SjER0BagKlBmYDKDErAa90pC7kA4IBw3S+dPAruXSwdEgBLQHUAZICv3SvdKQEvHSzdOQBxXS0dCkDr3RLdb90tXRJArd0snR3AY0Bw3S1dKYRDQEJAUECtHSvdEwEB3XfdAUBtXSwdDMBWQG5dMZ0HwFiCMJ0t3SvAWwBCwJwMpABr3TyBHsFKQNtZcV0xnSGAk0EJAHbdMl0hwTwdNR0oAFoA00BLnXfdB113XTsdAh1RwGxdLV0ugLvdN90FwG3dLJ08AjydMF0v3S/dCEBtnSvdJ4EMg64dLV0RAFYC7B0w3QYAXcBsHS8dFgBDQHFDRACVAHyQ8V0r3TGEBgBLwImUVgBxwGydLt0pwEOAUAEjAJVBpoLOAGkEQoCr3RLLksHu3S5dB4C1nTndL10t3RKAbgBpQ/GdK90GGRBAdpmrQG+dK90xBHzdLh0BXUIdfZ033ReAbB0r3QtDh8fvXTTdCIBFQEFATgCtnSzdGUB7nTjdL10vnTsA7R0vXQIAYYBtXSvdHQl5HTVdDsBRAF1DLh0r3RZBhMBZQGHAQUBuAm2dLN0qwkZAQICTwKFAmQVuHSvdPAWEQLadK90PQOEAcEBDwEhAjkFsHSYHxQBuAGeAT0C8AhjCLd0s3RqA+B0w3Q4G990r3Q1Ax4BLAFQArF0r3TfCVwBsHS8dOQBNQ66dMN0ggFCU5wBZWGwdNd0nAJBAbADMAJyA8gRZgEUUygBr3SlEy0BqgKEGMd0r3QUCfoQuXS9dI0B8gOsBa902zlaAZ8B9DOxdFMBFQKyGRQBCgFNKbwFNAPhUfEXr3TGUHkB6AGvdEAftgG0dK90hwuCAbB0sXRiAR91snQNAcEjCQN+BxcEgAUHF+YKr3SROFUFuHTGdEQBHgEIAqoKLwE3TbF0r3SqDLd0u3R3Abd0vHR9AxIBFwGRFrZ0r3S/EA0BvXSvdAQPCSDQdK90QAIRAbV0snTBBBgBZwISZbF0uHQMJsZ0snQWArIBr3TBC8p08nRLAbd0sHTsBR4B2wMvDzEBGHW3dJUBKQOQCcV0r3QVEZoBIgIgAiwNIwwFAQUBsnSwdFABFQEfATgCuXSzdOYkDgEeArUBu3SvdOoFJQELAXECt3SzdAoDRQWwdNd0YgGvdBV10AHQdO90vgLAdLh0DQE/DCUDrwLBA7t0r3SWGQgBoAJjAQUB/Ay2dLB0bBbOCsN0xXSEAQ0B+QKfFcB0r3QfBUEBVgNXDQgBr3RsLhN19nQTAt90r3TeBfsBEnVdAbZ0r3TID50BsHSvdL4BSwHCdLB0kSAEAQcCUhEYATYrOQKvdEMJQQFTAUotvHSvdJYG7AEoAX0MUQK4dOEDsXS5dF4DsXTKDOEIvnS6ASACDAJrDlECqDCxdK90bgg+AeQBuwGwdK90BAZpAcN0wAEGda900AMIAbB0sHTkAR4BCQGqCrR0r3SADg4BrwI8Abt0r3S7G3wBxQFmAhd1r3QlEUMBtnSvdAQJr3Q7dWkBsHSzdL0GEwG9dLN0BA/CdMN0UAHFdLZ0qgVZArZ0s3QQAR4BHwFQArl0r3R4CBABrgGjASgC8AIYAWozsHSvdGEWxXTFdAcB4Qg0ArF0r3S6ATMBtHS2dAkBr3RYdVUBw3SvdF0NBwFBDIoBt3SvdDoFFAE4Aa0OsXS2dAoCBwFxBA4DwHSvdHsTDgEIA7UB0QTjQLR0r3SEDA8B5AjtAQUBsnTRAh8fuHTTdEQB5RvmAQdpsXTXdCYE8wiAAcJ0IwLydMR0VwEfA0cfFwGvdNgYB3XQdL50s3SSAbZ0r3QKDRQBOgEGFr10UQG+dGwB/gOvdHUNwnTAdE8GxXTFdE8GGQFMASAB/yrWAb90r3TeAwYBZQEMAgUBJRq2dGgBWwE/ErB0r3TOPyEBnldvASQBLgthA9R0wXSxAcQZDSAnAbh0UwQSASgB0QhRAq904AbkBhwGFiWydOZ0bwPzCLZ0wnQXAREBcwGoAbB0EQGydLJ0IATedN50gwOWA690VnUdAbh0r3QrBhIBxwuLA5MBr3S6DCUBs3SzdMcBLwGwdLd0cwEFBgkBNQ6palwBsXS8dFECJgEJAWRFtHSydEwEOwKXAr0GhETPdON0LgEJAbYCtHSvdFgVEQGwdLJ05AEpAbd02gG/B690eARIAQUBlwe2dLJ0oAKIAtF03nTlAmMEt3TudAsBHgHbAWMCBgGaFbR0r3REDQx13XRDATYQwgEUAfIBlgFrY7B0r3T3IBoB2QEEA0wBFh22dO50/XQAdcR07AFNA5NbunS4dNgCwnRuAmkClAG7dNkDIAEGI9YBTwGvdIsxEwGkCg8DCAHaB7R0rSlhDLN03UFUAQUBMRK2dLV0LAIqASwBHAKxdK905CO8dLt0MAJYAXgSsHSvdDYLN3XBdGYC7HSvdJYoLQe8dLB0UwEPBDkCt3QdB3MBLwF3CLF0sXRWAS8BiAE1FCsBSzi5dPx0tHQsAbd0sHRcBQJ143RNASgBqAJRAh8OsXSzdBFlr3TfdNUBgQLtMd10r3TAG8F0xHQOASYBegS3dK902kMeAsd0tXSAAcR01HRFAUQB4AO4dK90EwYdAbV0r3SdBBoB1gliArJ05AxQAa904FivdFl1OwEXARsktnSvdPMfUAG4dLZ0HAE9Ab50r3TYFRwGtnTGdBcBGgHDIMsChAF+CMN0r3SwBRsBWAGpArB0tXTlBZEH1nSvdKQCJQF7AqgDcAF6AWgJgALbAVgEWAE9AY0DcAIRFbcOJAGvdM8EGHW0dCEB0AIVBIIBCSS6dK90WU++AbR0x3QIAdV07nQMA99033RLAjIBuHSvdC43UgG3dNoBfQOvdBYDIAG+CPcDCAGvdE4Mr3TJdI8BlwkmAw8Br3TyFcB0sHR+BJMBFAG/dLZ0gwGbAcEBr3TVNvcBvHSvdCcbewW3dMZ0EwErBlQBwHSlAioBqQ93BL50r3RkBHIBLwLzFFgBsnR0DBkBGALdGLl0ryJ7Fa90zgYJAp8DUgewdK90XwyYArd03Rj3B690STNKAbB0r3TfAa90J3VBAQgBr3SeahUBGAFBARoDMAaxdFcNKAGvdHAOOwN7FcI1uXTFdBgCEQFLB4gBtXTPdO10FAG9dLZ0SwEdAckDURa/CadzuXSvdG8KewVhAwUPv3TGdCQB2Ae2dM90BQEgAUwBSwi2dK902QG3AbN0Dw/JBa90shkgASIC9wMFAa90LA1SAbF02gEvAa90hwE3AcB0uXRtBR4BlwdjAjcBmyiwdK907mb7Ad90vnTcdB4BCAFQArR0r3T3BbZ0vXQCB7d0snQTAVoBUQImKLF0u3QoAewBLwGTW7F0uHSHAdd0tXRDAbV0r3TiBuZ0snRZAeEIcQGxdMZ0LgMeARcBYwK2dK902gsXA7IBIxGwdK90YXXUdPB0BwF3AQ4Dt3SvdM0FXgG2dK90kDBEAbB0tXQYAR4B8wEvD2gH2TqxdK90aRK0ApABNAOxdB4BDwFjArF0r3RqC0UBhgK8DSkDrBjFdK901QVJHLh0wHQ1ARMC0HSvdK8IEXXWdEUBRg3gA00Br3QdFUoBLAjsAo0Br3SFQRd10HTTdNd0HgFoBWMCtAX/AsN0r3TTMpMDtHTCdAgB6gHQdK902AOiBNZ0r3SCAg0BzQN8KkwFMzNLAa90VRQGAbV0s3TBBIEBzATSS9ECr3QfW1EBLwFsAVYBbAKxdK90xBN3AQUB5QW2dLx0gwI1ARkCTgr5A7J0s3QeAQsCZnOQAXcBHzv4ASIBGVq9dNYBoAIEEQUBr3QyCN4BBQEUI7Z0r3SlGc90z3TZdMl0QQFYAq90QDAFddB0LAGxdLB0ugINAYcCSgUSFA0RtHSvdLIRB3UIdc5013QvAREVxgIkAbd0jQMnARgBAgKwdLB0k0oNASQBSgVhA2kRv3SvdKALcxO4dLt0YAEWAiYV+gMkASEBgwFvAb90r3ScbRoB4gHkDN8B2yewdK90oA0kddB0OwERARsktHSvdIwXPQEFAZoDtnSvdNQGFnUWdR4B+AH9CLF0Lw8vAa900VWTAhEE4wO3dO5CCwGvdFcXnQEIBDUGw3SvdMUH6wIYAbN0OQIKdcF0fQG5dLN0exWaAXEFIAIeNK90nCLdBAUBuwVOBchwtnQSAX0cegHkAQErsHSvdLYuDQGEAWgDw3SvdGJRGgEFLGICOgGmBr105AwMCq90hwzwAbB0MgJiAbJ0lQRZAZUSuwPLAQ0BTDyZAQ0DnxUKAjpCOAGvdD4KHQFABdIILV1gFDUBr3RuIC0BQwKpAS8BTQexdK90hhDyATMFLg23dK90/kEaAcsBBAO+dK90mxzZdMF0sHTzdLMDtHQJddt0BAFFA94C3gaPB710r3QpIWwB/HSvdOYVDgFvESYGrgOvdJkMDHXWdPh0CHUPAYMBkwG/dMF0yXTsAWEDewe/dLh0JAEjARwBWQJJUZE+uHSzdAkccgEZAwcCt3S+MAsBsnSiHQQBLQI2K8d0SQFwA6YSCQGlQ7R0BwH/KjQCv3SvdKcE+QOcAbFXsHSxdJwCDQEhAuABFAGmBLB0UQEcAa904hgZAQYDTwLCdK90dAoSAfAETwxbHoA/KAGvdMgOXQG4dK90rwwxAbV0u3TjBGYBt3T3BVwFvXTVBLMBfARCDrp0RwG3dLV0XAWtAYcBr3RFceF0CHUdAfwEr3QmR14CFHWvdIMZuXS1dDoCTAIjR9B04XQ8FC0BJgGpAbd0r3QFDS4BkQNUE4UCr3TQECkBsQLhCysCcxTeBq90YnVFAWcRyAQjAa90uwwSAXcuCQI+AlkoYQNfAQUB4gG2dLJ0kgM7AcMLpgG9dHUM3RCvdI0U+HQTdXcBunS8dE0DkgGwdK90Px8qAXUEUxybMK90VCYpAYkCr3QgCNQBGAG1dFoYMwG3dLZ0ZwFBA9x0wnTLCN8BtHS/dAgBDQFzAXwBsHSvdHcGLQHSSJICHAScBBwBr3S1C850vXSaAdkDbCWUAWE3t3SvdJYTZQFJUdUCHAGxdCxD0gEfAaMCuXSzdHBgEXXddPx0sXQyASsBAAK5dK90CAogATEBmjK6dK90Pgu4dLF0EAPLBK90MhMEAecEFgLoAycNHwFMA4gBNkErAa90dxkhAVYBbwEvAcALsXSvdAY0JgFlAUMCBQH+ELZ0snSrCRR11nQaAQAWIAJGAWsOvXSvdP0kHgFYam4DJwGqCgAYcBG4dK90yxCvdBN1CgFUAxUBRwLMEgsBcHO3dLN0egswdRQBCSDfdK90SwJAdd90MnXddFMBCwEiA7d083QRBD8BvXSvdLEaIAHRBNgftHSvdAgD7AG0dLh0BgEUdd10oAWyAYIBJAGxdOYKr3TEdEMBsHSvdOUbfAE2Aq90okY+Ab10r3SOAdQCcQEUDQUBeCO2dK90ngs1ARgBxQGwdLN0k0oaAUkBXQqxdK90iQIPAbgBqwjGdL90w3QEAt100HTFBFABwHS2dF4IBALQdNB02ANlBjcBjwFhDCYDCAGuZrR0r3ShKA4BuAGMAsZ0r3TTEREBXAWoAbd0BAEFAd4CtnSvdGUB+AIlAVxFu3SvdOx0aAG1dK909BeVAbV0r3TGDlgB4QiDArF0t3QuA00BtXSzdEsH8wIcBEgBsHSydDcBMgHOdK90fwoYARcBJlG2dLh0HwPUAXQEtXSmEAgBWAE/ArB0bAFUAbgCxXSvdB4DaQ29dLR0jgGeA5cGLwwdBzoZGAGvdMpqDQHXBGkRWgGvdMw+XgG1dK907yA4ATgErAG3dDIBvXSvdGAH/XTudCx1E3XaATcBmgSwdK90qAKPAr50vXThAQoEVQazODgBcGwKAq90cD1ZAbd0xnQLATECvnS+dNdwygKJAq90KRNdAbp0r3TTEtV063QXAR8BVgK5dLJ0ZwTRdNF0DwLiAe4YsHSvdNMLCwExAfkmunSwdDADLnXddHoBwHSvdJcVaQS2dL50EAFTAcQCIgPPAoAew3RMAQsBIQK3dLx0sgLvFr10s3SOAQgBkRhjAbd0PwHCdK90OBPQBvR0E3UFdSwB5AhtAgUBA1q2dLB00QKfATgEqwK3dBUBvHSzdMkj7AHCdLh06wK0dLd0x3SzdJgCJAHdGEwkr3RzWRIB6imjAbV0FgX6EK90lFxDAWEMwgG0dPIBCAGvdPAt5HTrdL4Bw3THdAgEtwLRAQ5AfQO7dF0CywEYAbV0KALaAxgBHgGJA+8GMQGvdAARLga3dM4KuAPFdAwE8wIvBVEBDAa+ExUCr3T1LxwBsXSydGgHRQETAbwNt3SvdMIGIQG4dK90nAgSAXQQuARHA94EHwGvdK42KAxLAc50TAVMAbJ0vHRQAVkBu3TGdK8CSwGwdLB07AMOAdsNPAHQNHQCsQH0DbJ0SwEGBDYGFAFMAb90vHT/Ks90sHRRAV8EvhNWAYwwCz+vdPMOEwGVBA8DsHStKWIBs3RDFxoBuQEEA+EI/QSxdK90fQJAA8cF4nTRdK90ZXXjBLZ0unQQAQgBcwEoAbB0jgGwdLx07AMFAbl0sHR7Fe901nQZAbsWeQHDdK90Djl2AS8BxA6xdLZ0hwEaATIFfwJMBJgOCQGvdCQpZQN8Aq0YwXSvdFgDGgG+Bm8XkwGvdF0jBAFHATABsXSvdKQQMQKydL50LglpAbF0s3RnAhUBsnSzdK0DoQG7dLh0HgIgAa4BSjS5dK90AQTQdOF0LgEnAcQBuHSvdLMj23QKdbF0s3RbAbF0s3QsAccBcwEQUbB0u3Q4AigCZgE8AnIDvnSwAwcBFXJ5AuIDr3RPasd0t3QUAYIOtQPDdAYWphESAWACowGwdBYF7AOvdMsKWAGsAY8N1TFjIiMBt3QLJl0BRAFZD7h0r3QhHhkBAAM2CRUBr3QnIHcENwLEBrd0r3TfA4sB8nSvdJ0Pr3Q3dSkFFQOvdLoQFQG1dLN0BQJwBNkEBT8FAV4IsXSydGcC9EO+dNV0lwHEdNF0AQLaBBAIt3S8OhQW/gG9dFcE3RC7dMMLr3TwdHUCagISQ2YDv3SWOBoB8QTLAi8DfghaAa90IRrtdMN0mgFuAq905BKXF24CyiYKAv10iwZRAS4CYga2dAgBCgOXArd0iQ8LAQECVAG8OsV04HSxdB0BYxWmA7d00QMLAVEWGQOvdM0Uu3TgdLgBGQKrH/kDs3SNQikBFQHaARFmr3QoCRoBlDWaAcJ0IALHAq90C1kNAcd0r3QoAxABggG5Abp0RgEoAVsCUQLdTbF0s3RmARsBOQIPARwBFAK4dLJ0u099Abt0s3SmCK90MHUhARQB4gWwdK90BgQTAa0DhwGydLN0NRQGAYkCr3RmdToCGXViCL10t3SOAcoMggGnE7p0vnTtARIB2QEWBUwB/Q22dAQBMg4wAbV0PwG5dK90tQySAbx0r3QNJR0BmwVUK1gBr3S9ER0BXAH0D7R0r3QMHhMC7HSvdNABMg65dLV0jQEwdbd0QQHIRKsBu3SvdIkPQQO4dMJ0RAG2dLh0FwGRAqcELAEQAaACGAIFAfhftnRQAhEBr3SEMQx133RPAQgBtwi0dLN0XQfVAUsC7THfdK90mBbLI4IBxXQhBfB0NHUVARABAQi2dLN0sRx8AZMB6gOwdDMlcwGvdBMPcwUPAQgBtHSwdIs99RS0dMJ0BgHjdLZ0bli5dOR0jQG1dOB0GQEJAa8itHSvdEwxHQFzAtIIOAG4D7F0r3SEQrABbwMxMBwGMWiydK90bQZVAwAGr3Q2LRIB4QGRFr50r3SmExMBsRyHARABERS2dLN0HXHZdMp0x3S8dBUB5AiFAQUBs3TRAhwBCwHoArd0snQZAyABvHSvdBsBMwF9A1sHt3S2dKEIBAEQBToHsHQ2K74Br3QSTXYB3HS2dF0DoQHCdLh0xwJBAckB8wOwdCYBCwEvArd0BwGMBgsElAH6BNkDr3Q3FxUB/HSzdHQaEwH9AYcBtnSzdMYC0gFqAdsZ1TFvAjMBFwwDA6906SbzCIUCkRW4dMJ08QEeAS0CYwLHdNl0IXU7ARMDAQW3dHUMvwevdIA1LgKUAbEFfQPZEbd0vnTlBFgBuzuDAsZ0t3Q8G0QCwXTKdNMBsnTAdFEBwHRsAW0Fr3TnA8l00XSAAgYBt3S8dLgBBQE9ArZ0s3RxARIBggN6Abl0FgUrAa90XAStAU8E7gUKAq90vkVdBXMCWSi1Be8BsXSTA+EIwnQuAycBsXSwdGgHZQG3dHMB8AixdJ4BpB2fAR4pHlO3dJwDfgG5dK90DQ/hAbF0snSfAdcF8HTbdKABLgIMAg0BowJKBY8Dr3QHCQ0BtAFKBTEB4WC6dEQVWgE+RLB0wHQvAwgBeQRjAQgB/Ay0dD8BGgR5BwUBr3RYJmkB6AOwGh8BlXC5dBx1xXQ9Abx0r3TjE3MBt3SxdAsB7AO5dL10HwGGAYMBPgO/dK909RFCAhgBcQuwdLd07AYpAYIWPwU2AlY1uXSvdLstBgGzdLN02AQGAccBng6zdBoBsQHLArJ0r3SWNi0BDCbGAWcCr3QbBrl0wHRcLrZ05XQXAT8BhQJGA7h0r3QMDiABaQKaMrt0r3RNPT8BsXSvdFIQEgG2dK90cxwgdbx0SgE0Fe0FCAE/CbR0pQ9WAz0BzQPQXksBr3RUDyUBEQHXA7R0s3T8Cx0B0wOcBRwBURZJUa90yiAVATgEjgK3dMwSEwNEAx51r3S2GH8CsQJXXSsCr3RyTdV09HRVAbB0r3SgGkwBtXS8dDMBQwGXCfIBDwGvdJIbEXXuAcsD0HSvdH1O6gHddK90xQRyAXABvjDDdCACMQX2ArhIsQgoAa90whi8AjgBuXTBFHYBu3S2dCUBfgFhA5YEv3SvdKQf/QHDdLF0zwItARcBqQG2dK90QxLCdLh0TQG5dLN0CQVtHbZ0r3S/BBABsnS1dFAB63TrdGcBt3S1dH0DMgG5B690iyEKAaEDvAVBD6cwsHSvdIBE5nS1dLR0H3W2dLt0HQEXAdIItnSvdBk9lQFHAZMHsXSvdFAOLQHIB049GAGjF7d0uXQTAQ8Bs3SydPIHDB6sAaMm1THAdIsCBwE5AnkCGAGvdAcCGAF9AxkDt3S4dJQB73TQdBoB7QFFCbp05AyCAa90JAgaAbICIAILAfYCt3SvdNkRoQFYASEVsHS4dFQD5XTOdLkGsgFfRbB0r3QOOyMC4gHyB+wDgiSwdLF0WwJPAbB0s3TfAToBt3SydOwFOwG4dK90pRrhArd0AgdBDLJ0nwocAcd0s3SzdDJ133ScAbR0vnQIASB163RBASYB7nTrdFoBuHS7dCcBDQG4dK906AkHASgDmAHHdK90/gQuASIBtgK9dK90Ai0EAcsBMAG+dK90BA1NAQsBqAK3dLN03woGAW4FAQLfAnFi3HT8dL10KgGkA78BlwG1dNx0u3S5dCEBXEryA2UBkgJIAa90TwVIAWcBkAO3dI8DtHTgdAgBEgGwdK90WgEdAbJ0r3REFbMBkxlFB7R0Qg4zDK90dy2ZHtV0znT5BV4BFwFwF7Z0r3TJEL0DwwaWAt90r3TABOQBfQOjEbd0tHSUAVoBtnS7dAUBewGWAawDFAGHCbB0r3RtKRQBsXS2dCwBDQHgdK90IA5dBGwFywHDdLV04AhMAbh0vHQwCL50w3S2dLF0QgSZBrJ0NnViAbZ0unQFAfF08XQJAhUDfkiuAa90GRStAa8Cr3SiEG8ChgXYPGoBr3RGGHwB3wRTA8EUTBg4Aa90eBOvdBJ1ag2wdHBJGAH3dOgBEgEuA9EI4QgbFLF0r3S3GBMBCQHeKbR0s3RMBK0EBwKvdI4u6HTjdLZ0t3RRAXsCPwdwAW0m4QjldLkBwnSydF4BBQHyBbZ0r3TQQikBcwGqA7B0r3QlGnwBlgnqAyUBjFu7dK90Fx96AesDsgdPAa90ZQs9AWIBZwWwdK90nDRWATgEWgK3dAEtEwMaAYAvywJ3Aa906isqAXIBvwHCdK90jBzLAbB0tXScAR4BdwEvD7d0r3SuIBIBGAMWBXkGNQqxdP0NUQKvdO4K5HTjdOAByAu2BbkBZzN9Aq90JBfUBMcHr3R3ZCEBzTlvAbp0igH4B9d0tnQOAYoCtQHkAfgDsHSvdPM6NwG9dLl0SwEPBI8Dt3SjAhwB6gcATbJ0DgGtKYwCFQb+Art0CnXJdFUBEQGTDLR0r3TVCR4BNQGZDrh0r3QtXXwBiAEzJSsBQyu5dK90mQZjA2wE5w8SA690nAsYBvEBr3Q+JB4BXwFjAr90r3RKK9ABGnXvdIUFPAEebTYDDAWvdB0REQcYAWkRWhivdCE4ewfHdLh0qgK3An8EghawdEEBFwGvdB8DNQEXAYkQtnSzdEMSLAQsBBtE6nTqdBtEHQFdA1EW3HSvdPYWGAHDdLh0CAQaASYB5Ay3dK90Bkf7ARl1FgMjAQ8C9QdrCbADPjRyAxUBMQE8BEgD7SjWdIoBygevdLBVswEhA8U2unQuAiQBvnQRFUN1WAU8ApMBljZzAb50oCU8AaQdKQK7AiEUdgEqAccFHAJIAa90/QoGARUBfAixdLN0EWbUAYkHtwHEAsgCzwIwV8N0r3S0B7gBHwE9Arl0s3TSBSkBv3TaAWEDr3QkAZ8Bw3S+dPkDunSydB4BSgKqCsZ0r3TZNK90Y3UsAXMBCwewdLB0F141AcN0s3RwAUoBRwHsArF0r3StGzUBHwHoAbl0s3RHAyUBMwGzdA1eGQG2dK90+j3ndBJ1LgEeBcQBcQGpdAUBEAELAecBt3S1dLICIQEmAcImt3SvdGQZWQK3dLN0ZwGxAYABDBLHdLh0IwLbAbF0AgdRArJ0DAJ7BakCxnSyCkoBPQLtBbB0pQ9ZAU0BSAGyBbl043S0dKUDGXXhdPctrQM5AjMPGAGxdAcCcAXWdK90+UoaAQ8B5AyxdK90pxO+Aud07HSLBREB7wk+Arx0oQHDdLh0OjENAYMBmQG/dK901ycXAfwCvQqEAX8BuHSvdDIiKQFuBXcF3wJIFtx0r3TICA0BxXSvdNYK1AicBpke3SidAb10r3SQIhd13XSlGtEB+E59A9N0XQIIAbJ0sHQgBNAF4XQHdZAC/gG+dFcE9gW7dPBUDwF3AZgft3RQAb50tnThAW0BhwGeCi8BtTuxdK90DQU+CNkCDEsQAeN0KGAEAcYF5x6+dK90sVf1AtZ0r3SDBLt0t3TbdM105nSzdGgEHgWvdF1DkQffdK902gJvAaUCOwVUAa9051c/AZcBURi+dK90BAhFdd902XTedHcJvXTCdI4BewW2dMZ0fQEmBbd0/HQLAVEB2j6KBBgCr3SDLa0DBgGxdNsBGAG9dLh0SwEVARwB7Ae4dLN0u0/aAfYFDwK+dK90rhmDAbV0sHTMBSABuXSvdI0BUQFaAYoEsHSvdPQ0nAmxdL10FQFYAiUBwHSnJZUF1ghbAVkBkCiwdK90bHUuAUoCtgLGdK90kzUsdd90AALVAlcMOAMcELR0r3SrRMJ0vHQNAbUy4AHhBTJ0v3QtAalokgLLAa900B52ATcBfQmwdLZ0qAKLAcp0r3QqMA0B1TngASICZzMFAa90sCN2Abl0tnRNAaUDJHXhdBgkXQEFAWIPtnSvdAYXDgEiAbUBvXSvdDkM4nTbdEkBMAOKIjEBGAG0dLh0CAEZAWEF/AewdDYJOAKvdNMNKQHGdK90MS0bAYIBwQG6dLV09gp7AQUBrAO2dK902khXAVs8XQa3dEcf3wXWAQMWjQbTA4oPHAGvdLQ0gwGydLB0sQw9AXMBcAKwdK90bR6ZAR8GMgTsBRELt3T8dL90LgEmBMQB5gGvdA4SHwEFAbYKtnSwdKAClQGwdK90yx/lASYBbwO3dLJ0TBGgA2oBsBokJL861THkBKEFaAEFAYEDtnSvdBc8RQGwdK90WQEPASUBqwi7dC4JsXS6dA8BngSNAkoKzwIUAa0C2whTAkwBMQETASMBEioJAb10s3RYHlECRm6xdLV0DAIOAYQBegTDdK90sgwlAdUxlwMjAbN0rAEYdbh0iAO3dK905wIKATQDMzGbMK90CA4yAtUxcwIjAbJ0rAEfdbF0XAFdB64CCAHwS7R0GwHwCNkBt3S1dA8FDQGcAzM4HlMua58Br3RqCCkBHBVPB2oBr3TeTO0Gs3TZOvIHr3S2JkAB0XSvdK4HLwEFAXcGtnS3dGUB/3TfdNV003THAQsBrxS3dLt0RwL+ArAF8C/DIK90fhMiAREBHRC0dLV0kwSPNbB013RbAu8Wt3SzdHcBbAPwdMl0oAH9AbB0sXQUAS0BRgFrAr10r3QQCg8BaQOTAXAB7jnDdPx0uXQTAXMBhwGwdLN0dwYTAtZ0r3TjByoEsXRpBC8BvnQIArIBuHS8dCcBRgG/dK90HXVXGNZ073SCAicBuXSwdK4BlwEFAb4StnS+dCICYAGydLx0sQGYBBwB4wnhNGJIqQavdFRE1XS4dA8LvXT3dCsCPgFYBL0CCQHgdLV0OgHgB44EsHTPE3MBsnSBChoByAGaAb10IAIiAa900DavdCl1GAHcdLh03wIEAVMCqxSTa2UbtHSvdK0C9QLfdK900AUIAdUxKAEjAWQcCQHxAuF0+HSQAgcBwHSvdF4IJQEYAbN0GQvQAfZ073S4Wn8BNQGvdGoNr3RtdW8DagiRCZwDblW0dOR0EQEXAbJ0snRQAc4KFAGPEbB0xXRWAhwBhwIuChIUEQFaGD4CGAE9Abt0r3RFEVwBJQFFD7t0vHSPHh0BlQKQBREBaxS0dK90n0ENdbR04HSzdOwDsXS9dCwBtQy5dNV0CQUaAa8BXQrCdK90WxUnAvZ0/3QEAkoBCAHJBrR0r3RdBxoBjQEEA7l0r3TmOw0BjgHgAb10r3QjCCoBsxW/AdMGI1EkAQcB0wcFBK8CICO7dLd0uHQdAU8BURa/dK906wOGAQsBPgO3dK90ggYGQLB0vmxzAeh0kwFgAQsBEQW3dLx0GQMBEYIBxXSFARkFGXXvdKkOv3S8dON013QhATMB4gW1dK90SRp2AbB0tnRbAeEBt3SydDcCCAExIWMBJAFgZ2EDjwI1AVJfuHS9dOECMg7HdLV0KgLgAYwGnCCUAbYh2QOvdPoh7wG/dJMD/yrCdNg6DgEGAzwBwnSvdJFAJwGtA2gIsnREAgB1ynTxDSgBaAJkHBwBPQWkAa5R7AM4V7B0wHQ4DH4lw3QQdQgEBgG0dLN0iz0DBCgC7QsYAVoVsHSvdDkyuAEcAZQQuHSzdBcDEgFWAhcGsHSRFhQBr3RkRo8BBgM2BcJ0r3QZDocEwXTUdNMBsxTadAZ1PQMOAZcMUAN0DIoFxQZsPy8Cr3RLJpUBVAGTB8V0r3TWKB0DuXTOdCsB9QLQdK90XgYxAbF0u3SQAfMItHTCdBEBUAG9dLZ0OgGWBmoBKAOzdLd0wAdbAcB0s3RtBewBvXS4dEYBPx+xdAJ1LAEEARQBFgKwdK90tAkPAQgBkwG0dLJ0SQOTA7l0wnQfAbMBsHSvdAw2YQS3dK90rib4dDV12gK1ArIrGnXsdKBguXTCdCEBFQGgErF0r3SWC0EDphHCdM4FmQX8AhFAhAG9dLx0LgK7BFsIIwG+dEldEwKkAisI1nSvdM0ECQHDdLV0tAVpAcB0s3RYAiEBFwHCJrZ0r3RuBjoDMQG3WLp0r3SNM+8Bt3STA/AIwnSeAcl02HRVAQkBwhG0dK90ERy1ASQBLjNhA5oBwHQgAs4Dr3S1WkAD8QECT7h0r3RsGBoBihGeA44CdjUjAa900wxLAbJ0sHSPAvQBoAHvFfB0r3RgDsEsunRcLoIB5XTtARwBs3SydOwBnQIjda905jEYAcZ0uHR2FhIBTxr8ATUFVQGEAZMMw3SvdJ8xBgEvAXgEsXTLdNF0EgEdBRYFXAH9DbR0BwFhA4EBv3SvdD4CbwIfAykXFwFXBLZ0u3QQAccBHHW7dOQNTQEfAagCuXSzdAgcUwH5CF8EOAS2MLd0DwFlAWsEBQEXO7Z0XQGydK90XC5YAQ0DFgsKArd0TDwgAn0IqDDHAeN0GgMNAagCSgU3AQVjsHSvdJ8LHgFLAVACvXSvdCobswERAcU2tHSvdAJoFwFZAhoFtXSydAIVmwEGARUw1iveARwBBTG4dK90oAVkAbd0jQELAbV03wqdCBgBTAFqAdIH1TGeBLJ0wnRQAQ4BkwF6BHMBigWwdK906AQJdQp1qwG0CWsDFAHhJrB0r3ToNjUBs3SzdOwB8gjhAuoFt3RLB1sJuXQsMGoEGXXvdKkcWRlyA+N0sAMeAagFeRHiAa90KhMuAfABHwQxAdNWunSvdPNzDgEYD2QDERWDBSQBSgFQAWMDsnSvdCIPLAEHBV4Bw3SvdAsIBAECAt4ChQLrNLh0LAGwdLB0cwFGddF0IQETAaASt3SvdHlJGgG8dK90og5RAbl0bAEfAa90ZwQEAeYKCgEkAcNBv3SvdH4HDQG5AUEC4QiXHLF0r3TNGQ0VvXTcdEYBfQELARUCt3SzdLICiyy2dDI+BQENdYMCWQK5dLN0jQF+AS8BXw2xdK908zFnAR8BVAO5dLV0JSEbAXMBwQGwdLV0OgRtAQsBtwO3dK908F8NASgBmQFRAhwbsXSvdLhIQwQ6BD0ecwFJAQsBOgS3dLx0dwiHAcICRgjDdBEUzwKzdCJe1AI/BBQNcQKjaloBr3SFFdt08HRJHL8JwHTJAzIB9HSvdJkEPwIjARQBuHS2dCcB7AIkAa90IEXBAsJ0xXQGA5AE1gIrBSYELQHwA6kBZQFNDQUBMxa2dLx0x3TDIMEBuHT+BQkBsnS1dCAEGHWxdCcDcCNiBWIFcCMnA45W8G7wbo5WrQFzAhEBOQyIASIBzwa9dA0BWwFKBbB0znTOdMIBw3TyAQgEr3TtPGYBsHT3BXMBvXTgB+sC7AEdAckBnAWwdFEW5AENddd0PAEmB35vlRKvdBgTfgEGAUICZwLOA8B0tXRYAtgHsXTPdCwBBwHgdK90QgMsAZ4BHAW3dFoK8AiwdGkINQGgAhUDBQHyG7Z0s3RXZSgCt3Q8AgsBvnQZAywGoAOvdFw6IAG9dK90IgEFAdkCNwwQAbB0KGAoAXAB0QO9dFEW0VOvdL8lkgbHdLx0gAHbAbd0Age/B7J0eAQyAmcMLC+0dA9JeAOydAoF3wG3dL90CwEuddZ0CgF2A18Kt3TDQWYMz3S6dAoB7gaiCbF0UgIIHBQDHwGvdJddNwG+dLl0/gNqBEwCVxg8FPZO0HTvdAcgbQGzdK90cls1Abd0s3RBDLQDu3TDdMhEkQfQdK90vgJ2AQsB8gm3dLZ0RwISAbx0r3RzEzEBCAGVBLR0u3RhDFMX9HTOdIwEaAELAYEDt3SvdKIP8wGQA30BsXSzdOEIIQG3BToJHwGXC7l0wiYlIa90MxoeAbV0r3T6EA4BVgE8AS8BKQKxdK90rh4JU790vnRhAxQBCAGhA7R0tnSeamwB/WopBDQEr3RmUjoBjwLyErJ0GwG5dLV0NgJRATsCXwgFAa90M09ZAncBs3SpArMBYAHeFLh0r3Rtaw0BGguZAf8Er3R+ERwBuXSydK4BHwGwdLB0NwEZAb1yNgklAtV0tHQ+AQlPuwFgBa90eXIPBHMBt3Q4AoQBBQG6PbZ0snSuHXUBWgGvdJYpFwG2dLJ05lOpBS8BUAVQBahj4nTidKhjDQGPBK90gRMXAbR0snSTa+EBs3SydF8G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",Yf=new zR;typeof window<"u"&&(window.llamaTokenizer=Yf);const bt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,It=Object.keys,Br=Array.isArray;function Rr(t,e){return typeof e!="object"||It(e).forEach(function(r){t[r]=e[r]}),t}typeof Promise>"u"||bt.Promise||(bt.Promise=Promise);const hd=Object.getPrototypeOf,$R={}.hasOwnProperty;function Ir(t,e){return $R.call(t,e)}function Gs(t,e){typeof e=="function"&&(e=e(hd(t))),(typeof Reflect>"u"?It:Reflect.ownKeys)(e).forEach(r=>{bn(t,r,e[r])})}const Nf=Object.defineProperty;function bn(t,e,r,a){Nf(t,e,Rr(r&&Ir(r,"get")&&typeof r.get=="function"?{get:r.get,set:r.set,configurable:!0}:{value:r,configurable:!0,writable:!0},a))}function ws(t){return{from:function(e){return t.prototype=Object.create(e.prototype),bn(t.prototype,"constructor",t),{extend:Gs.bind(null,t.prototype)}}}}const e6=Object.getOwnPropertyDescriptor;function Uh(t,e){let r;return e6(t,e)||(r=hd(t))&&Uh(r,e)}const t6=[].slice;function yc(t,e,r){return t6.call(t,e,r)}function Lf(t,e){return e(t)}function Xo(t){if(!t)throw new Error("Assertion Failed")}function Tf(t){bt.setImmediate?setImmediate(t):setTimeout(t,0)}function kf(t,e){return t.reduce((r,a,n)=>{var i=e(a,n);return i&&(r[i[0]]=i[1]),r},{})}function Kn(t,e){if(typeof e=="string"&&Ir(t,e))return t[e];if(!e)return t;if(typeof e!="string"){for(var r=[],a=0,n=e.length;a<n;++a){var i=Kn(t,e[a]);r.push(i)}return r}var l=e.indexOf(".");if(l!==-1){var s=t[e.substr(0,l)];return s==null?void 0:Kn(s,e.substr(l+1))}}function ha(t,e,r){if(t&&e!==void 0&&(!("isFrozen"in Object)||!Object.isFrozen(t)))if(typeof e!="string"&&"length"in e){Xo(typeof r!="string"&&"length"in r);for(var a=0,n=e.length;a<n;++a)ha(t,e[a],r[a])}else{var i=e.indexOf(".");if(i!==-1){var l=e.substr(0,i),s=e.substr(i+1);if(s==="")r===void 0?Br(t)&&!isNaN(parseInt(l))?t.splice(l,1):delete t[l]:t[l]=r;else{var o=t[l];o&&Ir(t,l)||(o=t[l]={}),ha(o,s,r)}}else r===void 0?Br(t)&&!isNaN(parseInt(e))?t.splice(e,1):delete t[e]:t[e]=r}}function Uf(t){var e={};for(var r in t)Ir(t,r)&&(e[r]=t[r]);return e}const r6=[].concat;function _f(t){return r6.apply([],t)}const If="BigUint64Array,BigInt64Array,Array,Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,FileSystemDirectoryHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(_f([8,16,32,64].map(t=>["Int","Uint","Float"].map(e=>e+t+"Array")))).filter(t=>bt[t]),a6=If.map(t=>bt[t]);kf(If,t=>[t,!0]);let Mn=null;function tu(t){Mn=typeof WeakMap<"u"&&new WeakMap;const e=bg(t);return Mn=null,e}function bg(t){if(!t||typeof t!="object")return t;let e=Mn&&Mn.get(t);if(e)return e;if(Br(t)){e=[],Mn&&Mn.set(t,e);for(var r=0,a=t.length;r<a;++r)e.push(bg(t[r]))}else if(a6.indexOf(t.constructor)>=0)e=t;else{const i=hd(t);for(var n in e=i===Object.prototype?{}:Object.create(i),Mn&&Mn.set(t,e),t)Ir(t,n)&&(e[n]=bg(t[n]))}return e}const{toString:n6}={};function Kg(t){return n6.call(t).slice(8,-1)}const fg=typeof Symbol<"u"?Symbol.iterator:"@@iterator",i6=typeof fg=="symbol"?function(t){var e;return t!=null&&(e=t[fg])&&e.apply(t)}:function(){return null},as={};function An(t){var e,r,a,n;if(arguments.length===1){if(Br(t))return t.slice();if(this===as&&typeof t=="string")return[t];if(n=i6(t)){for(r=[];!(a=n.next()).done;)r.push(a.value);return r}if(t==null)return[t];if(typeof(e=t.length)=="number"){for(r=new Array(e);e--;)r[e]=t[e];return r}return[t]}for(e=arguments.length,r=new Array(e);e--;)r[e]=arguments[e];return r}const _h=typeof Symbol<"u"?t=>t[Symbol.toStringTag]==="AsyncFunction":()=>!1;var Da=typeof location<"u"&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function Df(t,e){Da=t,Mf=e}var Mf=()=>!0;const l6=!new Error("").stack;function Rl(){if(l6)try{throw Rl.arguments,new Error}catch(t){return t}return new Error}function Qg(t,e){var r=t.stack;return r?(e=e||0,r.indexOf(t.name)===0&&(e+=(t.name+t.message).split(`
`).length),r.split(`
`).slice(e).filter(Mf).map(a=>`
`+a).join("")):""}var xf=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],Ih=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"].concat(xf),s6={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function bs(t,e){this._e=Rl(),this.name=t,this.message=e}function Jf(t,e){return t+". Errors: "+Object.keys(e).map(r=>e[r].toString()).filter((r,a,n)=>n.indexOf(r)===a).join(`
`)}function Rc(t,e,r,a){this._e=Rl(),this.failures=e,this.failedKeys=a,this.successCount=r,this.message=Jf(t,e)}function ed(t,e){this._e=Rl(),this.name="BulkError",this.failures=Object.keys(e).map(r=>e[r]),this.failuresByPos=e,this.message=Jf(t,e)}ws(bs).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+": "+this.message+Qg(this._e,2))}},toString:function(){return this.name+": "+this.message}}),ws(Rc).from(bs),ws(ed).from(bs);var Dh=Ih.reduce((t,e)=>(t[e]=e+"Error",t),{});const o6=bs;var ye=Ih.reduce((t,e)=>{var r=e+"Error";function a(n,i){this._e=Rl(),this.name=r,n?typeof n=="string"?(this.message=`${n}${i?`
`+i:""}`,this.inner=i||null):typeof n=="object"&&(this.message=`${n.name} ${n.message}`,this.inner=n):(this.message=s6[e]||r,this.inner=null)}return ws(a).from(o6),t[e]=a,t},{});ye.Syntax=SyntaxError,ye.Type=TypeError,ye.Range=RangeError;var j4=xf.reduce((t,e)=>(t[e+"Error"]=ye[e],t),{}),Ip=Ih.reduce((t,e)=>(["Syntax","Type","Range"].indexOf(e)===-1&&(t[e+"Error"]=ye[e]),t),{});function ht(){}function Bd(t){return t}function d6(t,e){return t==null||t===Bd?e:function(r){return e(t(r))}}function Kl(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function u6(t,e){return t===ht?e:function(){var r=t.apply(this,arguments);r!==void 0&&(arguments[0]=r);var a=this.onsuccess,n=this.onerror;this.onsuccess=null,this.onerror=null;var i=e.apply(this,arguments);return a&&(this.onsuccess=this.onsuccess?Kl(a,this.onsuccess):a),n&&(this.onerror=this.onerror?Kl(n,this.onerror):n),i!==void 0?i:r}}function p6(t,e){return t===ht?e:function(){t.apply(this,arguments);var r=this.onsuccess,a=this.onerror;this.onsuccess=this.onerror=null,e.apply(this,arguments),r&&(this.onsuccess=this.onsuccess?Kl(r,this.onsuccess):r),a&&(this.onerror=this.onerror?Kl(a,this.onerror):a)}}function c6(t,e){return t===ht?e:function(r){var a=t.apply(this,arguments);Rr(r,a);var n=this.onsuccess,i=this.onerror;this.onsuccess=null,this.onerror=null;var l=e.apply(this,arguments);return n&&(this.onsuccess=this.onsuccess?Kl(n,this.onsuccess):n),i&&(this.onerror=this.onerror?Kl(i,this.onerror):i),a===void 0?l===void 0?void 0:l:Rr(a,l)}}function m6(t,e){return t===ht?e:function(){return e.apply(this,arguments)!==!1&&t.apply(this,arguments)}}function Mh(t,e){return t===ht?e:function(){var r=t.apply(this,arguments);if(r&&typeof r.then=="function"){for(var a=this,n=arguments.length,i=new Array(n);n--;)i[n]=arguments[n];return r.then(function(){return e.apply(a,i)})}return e.apply(this,arguments)}}Ip.ModifyError=Rc,Ip.DexieError=bs,Ip.BulkError=ed;var Cd={};const Of=100,[Wg,Ec,vg]=typeof Promise>"u"?[]:(()=>{let t=Promise.resolve();if(typeof crypto>"u"||!crypto.subtle)return[t,hd(t),t];const e=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[e,hd(e),t]})(),Pf=Ec&&Ec.then,Dp=Wg&&Wg.constructor,xh=!!vg;var Fg=!1,g6=vg?()=>{vg.then(np)}:bt.setImmediate?setImmediate.bind(null,np):bt.MutationObserver?()=>{var t=document.createElement("div");new MutationObserver(()=>{np(),t=null}).observe(t,{attributes:!0}),t.setAttribute("i","1")}:()=>{setTimeout(np,0)},td=function(t,e){Ho.push([t,e]),Gc&&(g6(),Gc=!1)},yg=!0,Gc=!0,pl=[],Mp=[],Rg=null,Eg=Bd,Ks={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:ew,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach(t=>{try{ew(t[0],t[1])}catch{}})}},Ke=Ks,Ho=[],cl=0,xp=[];function Ae(t){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this.onuncatched=ht,this._lib=!1;var e=this._PSD=Ke;if(Da&&(this._stackHolder=Rl(),this._prev=null,this._numPrev=0),typeof t!="function"){if(t!==Cd)throw new TypeError("Not a function");return this._state=arguments[1],this._value=arguments[2],void(this._state===!1&&Sg(this,this._value))}this._state=null,this._value=null,++e.ref,jf(this,t)}const Gg={get:function(){var t=Ke,e=Sc;function r(a,n){var i=!t.global&&(t!==Ke||e!==Sc);const l=i&&!Qn();var s=new Ae((o,d)=>{Jh(this,new zf(Zc(a,t,i,l),Zc(n,t,i,l),o,d,t))});return Da&&e3(s,this),s}return r.prototype=Cd,r},set:function(t){bn(this,"then",t&&t.prototype===Cd?Gg:{get:function(){return t},set:Gg.set})}};function zf(t,e,r,a,n){this.onFulfilled=typeof t=="function"?t:null,this.onRejected=typeof e=="function"?e:null,this.resolve=r,this.reject=a,this.psd=n}function jf(t,e){try{e(r=>{if(t._state===null){if(r===t)throw new TypeError("A promise cannot be resolved with itself.");var a=t._lib&&ru();r&&typeof r.then=="function"?jf(t,(n,i)=>{r instanceof Ae?r._then(n,i):r.then(n,i)}):(t._state=!0,t._value=r,qf(t)),a&&au()}},Sg.bind(null,t))}catch(r){Sg(t,r)}}function Sg(t,e){if(Mp.push(e),t._state===null){var r=t._lib&&ru();e=Eg(e),t._state=!1,t._value=e,Da&&e!==null&&typeof e=="object"&&!e._promise&&function(a,n,i){try{a.apply(null,i)}catch(l){n&&n(l)}}(()=>{var a=Uh(e,"stack");e._promise=t,bn(e,"stack",{get:()=>Fg?a&&(a.get?a.get.apply(e):a.value):t.stack})}),function(a){pl.some(n=>n._value===a._value)||pl.push(a)}(t),qf(t),r&&au()}}function qf(t){var e=t._listeners;t._listeners=[];for(var r=0,a=e.length;r<a;++r)Jh(t,e[r]);var n=t._PSD;--n.ref||n.finalize(),cl===0&&(++cl,td(()=>{--cl==0&&Oh()},[]))}function Jh(t,e){if(t._state!==null){var r=t._state?e.onFulfilled:e.onRejected;if(r===null)return(t._state?e.resolve:e.reject)(t._value);++e.psd.ref,++cl,td(A6,[r,t,e])}else t._listeners.push(e)}function A6(t,e,r){try{Rg=e;var a,n=e._value;e._state?a=t(n):(Mp.length&&(Mp=[]),a=t(n),Mp.indexOf(n)===-1&&function(i){for(var l=pl.length;l;)if(pl[--l]._value===i._value)return void pl.splice(l,1)}(e)),r.resolve(a)}catch(i){r.reject(i)}finally{Rg=null,--cl==0&&Oh(),--r.psd.ref||r.psd.finalize()}}function $f(t,e,r){if(e.length===r)return e;var a="";if(t._state===!1){var n,i,l=t._value;l!=null?(n=l.name||"Error",i=l.message||l,a=Qg(l,0)):(n=l,i=""),e.push(n+(i?": "+i:"")+a)}return Da&&((a=Qg(t._stackHolder,2))&&e.indexOf(a)===-1&&e.push(a),t._prev&&$f(t._prev,e,r)),e}function e3(t,e){var r=e?e._numPrev+1:0;r<100&&(t._prev=e,t._numPrev=r)}function np(){ru()&&au()}function ru(){var t=yg;return yg=!1,Gc=!1,t}function au(){var t,e,r;do for(;Ho.length>0;)for(t=Ho,Ho=[],r=t.length,e=0;e<r;++e){var a=t[e];a[0].apply(null,a[1])}while(Ho.length>0);yg=!0,Gc=!0}function Oh(){var t=pl;pl=[],t.forEach(a=>{a._PSD.onunhandled.call(null,a._value,a)});for(var e=xp.slice(0),r=e.length;r;)e[--r]()}function ip(t){return new Ae(Cd,!1,t)}function Qt(t,e){var r=Ke;return function(){var a=ru(),n=Ke;try{return ui(r,!0),t.apply(this,arguments)}catch(i){e&&e(i)}finally{ui(n,!1),a&&au()}}}Gs(Ae.prototype,{then:Gg,_then:function(t,e){Jh(this,new zf(null,null,t,e,Ke))},catch:function(t){if(arguments.length===1)return this.then(null,t);var e=arguments[0],r=arguments[1];return typeof e=="function"?this.then(null,a=>a instanceof e?r(a):ip(a)):this.then(null,a=>a&&a.name===e?r(a):ip(a))},finally:function(t){return this.then(e=>(t(),e),e=>(t(),ip(e)))},stack:{get:function(){if(this._stack)return this._stack;try{Fg=!0;var t=$f(this,[],20).join(`
From previous: `);return this._state!==null&&(this._stack=t),t}finally{Fg=!1}}},timeout:function(t,e){return t<1/0?new Ae((r,a)=>{var n=setTimeout(()=>a(new ye.Timeout(e)),t);this.then(r,a).finally(clearTimeout.bind(null,n))}):this}}),typeof Symbol<"u"&&Symbol.toStringTag&&bn(Ae.prototype,Symbol.toStringTag,"Dexie.Promise"),Ks.env=t3(),Gs(Ae,{all:function(){var t=An.apply(null,arguments).map(lp);return new Ae(function(e,r){t.length===0&&e([]);var a=t.length;t.forEach((n,i)=>Ae.resolve(n).then(l=>{t[i]=l,--a||e(t)},r))})},resolve:t=>{if(t instanceof Ae)return t;if(t&&typeof t.then=="function")return new Ae((r,a)=>{t.then(r,a)});var e=new Ae(Cd,!0,t);return e3(e,Rg),e},reject:ip,race:function(){var t=An.apply(null,arguments).map(lp);return new Ae((e,r)=>{t.map(a=>Ae.resolve(a).then(e,r))})},PSD:{get:()=>Ke,set:t=>Ke=t},totalEchoes:{get:()=>Sc},newPSD:di,usePSD:xs,scheduler:{get:()=>td,set:t=>{td=t}},rejectionMapper:{get:()=>Eg,set:t=>{Eg=t}},follow:(t,e)=>new Ae((r,a)=>di((n,i)=>{var l=Ke;l.unhandleds=[],l.onunhandled=i,l.finalize=Kl(function(){(function(s){function o(){s(),xp.splice(xp.indexOf(o),1)}xp.push(o),++cl,td(()=>{--cl==0&&Oh()},[])})(()=>{this.unhandleds.length===0?n():i(this.unhandleds[0])})},l.finalize),t()},e,r,a))}),Dp&&(Dp.allSettled&&bn(Ae,"allSettled",function(){const t=An.apply(null,arguments).map(lp);return new Ae(e=>{t.length===0&&e([]);let r=t.length;const a=new Array(r);t.forEach((n,i)=>Ae.resolve(n).then(l=>a[i]={status:"fulfilled",value:l},l=>a[i]={status:"rejected",reason:l}).then(()=>--r||e(a)))})}),Dp.any&&typeof AggregateError<"u"&&bn(Ae,"any",function(){const t=An.apply(null,arguments).map(lp);return new Ae((e,r)=>{t.length===0&&r(new AggregateError([]));let a=t.length;const n=new Array(a);t.forEach((i,l)=>Ae.resolve(i).then(s=>e(s),s=>{n[l]=s,--a||r(new AggregateError(n))}))})}));const Ar={awaits:0,echoes:0,id:0};var h6=0,Jp=[],lm=0,Sc=0,B6=0;function di(t,e,r,a){var n=Ke,i=Object.create(n);i.parent=n,i.ref=0,i.global=!1,i.id=++B6;var l=Ks.env;i.env=xh?{Promise:Ae,PromiseProp:{value:Ae,configurable:!0,writable:!0},all:Ae.all,race:Ae.race,allSettled:Ae.allSettled,any:Ae.any,resolve:Ae.resolve,reject:Ae.reject,nthen:q4(l.nthen,i),gthen:q4(l.gthen,i)}:{},e&&Rr(i,e),++n.ref,i.finalize=function(){--this.parent.ref||this.parent.finalize()};var s=xs(i,t,r,a);return i.ref===0&&i.finalize(),s}function Ms(){return Ar.id||(Ar.id=++h6),++Ar.awaits,Ar.echoes+=Of,Ar.id}function Qn(){return!!Ar.awaits&&(--Ar.awaits==0&&(Ar.id=0),Ar.echoes=Ar.awaits*Of,!0)}function lp(t){return Ar.echoes&&t&&t.constructor===Dp?(Ms(),t.then(e=>(Qn(),e),e=>(Qn(),jt(e)))):t}function C6(t){++Sc,Ar.echoes&&--Ar.echoes!=0||(Ar.echoes=Ar.id=0),Jp.push(Ke),ui(t,!0)}function w6(){var t=Jp[Jp.length-1];Jp.pop(),ui(t,!1)}function ui(t,e){var r=Ke;if((e?!Ar.echoes||lm++&&t===Ke:!lm||--lm&&t===Ke)||r3(e?C6.bind(null,t):w6),t!==Ke&&(Ke=t,r===Ks&&(Ks.env=t3()),xh)){var a=Ks.env.Promise,n=t.env;Ec.then=n.nthen,a.prototype.then=n.gthen,(r.global||t.global)&&(Object.defineProperty(bt,"Promise",n.PromiseProp),a.all=n.all,a.race=n.race,a.resolve=n.resolve,a.reject=n.reject,n.allSettled&&(a.allSettled=n.allSettled),n.any&&(a.any=n.any))}}function t3(){var t=bt.Promise;return xh?{Promise:t,PromiseProp:Object.getOwnPropertyDescriptor(bt,"Promise"),all:t.all,race:t.race,allSettled:t.allSettled,any:t.any,resolve:t.resolve,reject:t.reject,nthen:Ec.then,gthen:t.prototype.then}:{}}function xs(t,e,r,a,n){var i=Ke;try{return ui(t,!0),e(r,a,n)}finally{ui(i,!1)}}function r3(t){Pf.call(Wg,t)}function Zc(t,e,r,a){return typeof t!="function"?t:function(){var n=Ke;r&&Ms(),ui(e,!0);try{return t.apply(this,arguments)}finally{ui(n,!1),a&&r3(Qn)}}}function q4(t,e){return function(r,a){return t.call(this,Zc(r,e),Zc(a,e))}}(""+Pf).indexOf("[native code]")===-1&&(Ms=Qn=ht);const $4="unhandledrejection";function ew(t,e){var r;try{r=e.onuncatched(t)}catch{}if(r!==!1)try{var a,n={promise:e,reason:t};if(bt.document&&document.createEvent?((a=document.createEvent("Event")).initEvent($4,!0,!0),Rr(a,n)):bt.CustomEvent&&Rr(a=new CustomEvent($4,{detail:n}),n),a&&bt.dispatchEvent&&(dispatchEvent(a),!bt.PromiseRejectionEvent&&bt.onunhandledrejection))try{bt.onunhandledrejection(a)}catch{}Da&&a&&!a.defaultPrevented&&console.warn(`Unhandled rejection: ${t.stack||t}`)}catch{}}var jt=Ae.reject;function Zg(t,e,r,a){if(t.idbdb&&(t._state.openComplete||Ke.letThrough||t._vip)){var n=t._createTransaction(e,r,t._dbSchema);try{n.create(),t._state.PR1398_maxLoop=3}catch(i){return i.name===Dh.InvalidState&&t.isOpen()&&--t._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),t._close(),t.open().then(()=>Zg(t,e,r,a))):jt(i)}return n._promise(e,(i,l)=>di(()=>(Ke.trans=n,a(i,l,n)))).then(i=>n._completion.then(()=>i))}if(t._state.openComplete)return jt(new ye.DatabaseClosed(t._state.dbOpenError));if(!t._state.isBeingOpened){if(!t._options.autoOpen)return jt(new ye.DatabaseClosed);t.open().catch(ht)}return t._state.dbReadyPromise.then(()=>Zg(t,e,r,a))}const tw="3.2.7",nl=String.fromCharCode(65535),Xg=-1/0,$a="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",a3="String expected.",rd=[],q0=typeof navigator<"u"&&/(MSIE|Trident|Edge)/.test(navigator.userAgent),b6=q0,K6=q0,n3=t=>!/(dexie\.js|dexie\.min\.js)/.test(t),$0="__dbnames",sm="readonly",om="readwrite";function fl(t,e){return t?e?function(){return t.apply(this,arguments)&&e.apply(this,arguments)}:t:e}const i3={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function sp(t){return typeof t!="string"||/\./.test(t)?e=>e:e=>(e[t]===void 0&&t in e&&delete(e=tu(e))[t],e)}let f6=class{_trans(e,r,a){const n=this._tx||Ke.trans,i=this.name;function l(o,d,u){if(!u.schema[i])throw new ye.NotFound("Table "+i+" not part of transaction");return r(u.idbtrans,u)}const s=ru();try{return n&&n.db===this.db?n===Ke.trans?n._promise(e,l,a):di(()=>n._promise(e,l,a),{trans:n,transless:Ke.transless||Ke}):Zg(this.db,e,[this.name],l)}finally{s&&au()}}get(e,r){return e&&e.constructor===Object?this.where(e).first(r):this._trans("readonly",a=>this.core.get({trans:a,key:e}).then(n=>this.hook.reading.fire(n))).then(r)}where(e){if(typeof e=="string")return new this.db.WhereClause(this,e);if(Br(e))return new this.db.WhereClause(this,`[${e.join("+")}]`);const r=It(e);if(r.length===1)return this.where(r[0]).equals(e[r[0]]);const a=this.schema.indexes.concat(this.schema.primKey).filter(d=>{if(d.compound&&r.every(u=>d.keyPath.indexOf(u)>=0)){for(let u=0;u<r.length;++u)if(r.indexOf(d.keyPath[u])===-1)return!1;return!0}return!1}).sort((d,u)=>d.keyPath.length-u.keyPath.length)[0];if(a&&this.db._maxKey!==nl){const d=a.keyPath.slice(0,r.length);return this.where(d).equals(d.map(u=>e[u]))}!a&&Da&&console.warn(`The query ${JSON.stringify(e)} on ${this.name} would benefit of a compound index [${r.join("+")}]`);const{idxByName:n}=this.schema,i=this.db._deps.indexedDB;function l(d,u){try{return i.cmp(d,u)===0}catch{return!1}}const[s,o]=r.reduce(([d,u],c)=>{const p=n[c],A=e[c];return[d||p,d||!p?fl(u,p&&p.multi?m=>{const h=Kn(m,c);return Br(h)&&h.some(C=>l(A,C))}:m=>l(A,Kn(m,c))):u]},[null,null]);return s?this.where(s.name).equals(e[s.keyPath]).filter(o):a?this.filter(o):this.where(r).equals("")}filter(e){return this.toCollection().and(e)}count(e){return this.toCollection().count(e)}offset(e){return this.toCollection().offset(e)}limit(e){return this.toCollection().limit(e)}each(e){return this.toCollection().each(e)}toArray(e){return this.toCollection().toArray(e)}toCollection(){return new this.db.Collection(new this.db.WhereClause(this))}orderBy(e){return new this.db.Collection(new this.db.WhereClause(this,Br(e)?`[${e.join("+")}]`:e))}reverse(){return this.toCollection().reverse()}mapToClass(e){this.schema.mappedClass=e;const r=a=>{if(!a)return a;const n=Object.create(e.prototype);for(var i in a)if(Ir(a,i))try{n[i]=a[i]}catch{}return n};return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=r,this.hook("reading",r),e}defineClass(){return this.mapToClass(function(e){Rr(this,e)})}add(e,r){const{auto:a,keyPath:n}=this.schema.primKey;let i=e;return n&&a&&(i=sp(n)(e)),this._trans("readwrite",l=>this.core.mutate({trans:l,type:"add",keys:r!=null?[r]:null,values:[i]})).then(l=>l.numFailures?Ae.reject(l.failures[0]):l.lastResult).then(l=>{if(n)try{ha(e,n,l)}catch{}return l})}update(e,r){if(typeof e!="object"||Br(e))return this.where(":id").equals(e).modify(r);{const a=Kn(e,this.schema.primKey.keyPath);if(a===void 0)return jt(new ye.InvalidArgument("Given object does not contain its primary key"));try{typeof r!="function"?It(r).forEach(n=>{ha(e,n,r[n])}):r(e,{value:e,primKey:a})}catch{}return this.where(":id").equals(a).modify(r)}}put(e,r){const{auto:a,keyPath:n}=this.schema.primKey;let i=e;return n&&a&&(i=sp(n)(e)),this._trans("readwrite",l=>this.core.mutate({trans:l,type:"put",values:[i],keys:r!=null?[r]:null})).then(l=>l.numFailures?Ae.reject(l.failures[0]):l.lastResult).then(l=>{if(n)try{ha(e,n,l)}catch{}return l})}delete(e){return this._trans("readwrite",r=>this.core.mutate({trans:r,type:"delete",keys:[e]})).then(r=>r.numFailures?Ae.reject(r.failures[0]):void 0)}clear(){return this._trans("readwrite",e=>this.core.mutate({trans:e,type:"deleteRange",range:i3})).then(e=>e.numFailures?Ae.reject(e.failures[0]):void 0)}bulkGet(e){return this._trans("readonly",r=>this.core.getMany({keys:e,trans:r}).then(a=>a.map(n=>this.hook.reading.fire(n))))}bulkAdd(e,r,a){const n=Array.isArray(r)?r:void 0,i=(a=a||(n?void 0:r))?a.allKeys:void 0;return this._trans("readwrite",l=>{const{auto:s,keyPath:o}=this.schema.primKey;if(o&&n)throw new ye.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(n&&n.length!==e.length)throw new ye.InvalidArgument("Arguments objects and keys must have the same length");const d=e.length;let u=o&&s?e.map(sp(o)):e;return this.core.mutate({trans:l,type:"add",keys:n,values:u,wantResults:i}).then(({numFailures:c,results:p,lastResult:A,failures:m})=>{if(c===0)return i?p:A;throw new ed(`${this.name}.bulkAdd(): ${c} of ${d} operations failed`,m)})})}bulkPut(e,r,a){const n=Array.isArray(r)?r:void 0,i=(a=a||(n?void 0:r))?a.allKeys:void 0;return this._trans("readwrite",l=>{const{auto:s,keyPath:o}=this.schema.primKey;if(o&&n)throw new ye.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(n&&n.length!==e.length)throw new ye.InvalidArgument("Arguments objects and keys must have the same length");const d=e.length;let u=o&&s?e.map(sp(o)):e;return this.core.mutate({trans:l,type:"put",keys:n,values:u,wantResults:i}).then(({numFailures:c,results:p,lastResult:A,failures:m})=>{if(c===0)return i?p:A;throw new ed(`${this.name}.bulkPut(): ${c} of ${d} operations failed`,m)})})}bulkDelete(e){const r=e.length;return this._trans("readwrite",a=>this.core.mutate({trans:a,type:"delete",keys:e})).then(({numFailures:a,lastResult:n,failures:i})=>{if(a===0)return n;throw new ed(`${this.name}.bulkDelete(): ${a} of ${r} operations failed`,i)})}};function ad(t){var e={},r=function(l,s){if(s){for(var o=arguments.length,d=new Array(o-1);--o;)d[o-1]=arguments[o];return e[l].subscribe.apply(null,d),t}if(typeof l=="string")return e[l]};r.addEventType=i;for(var a=1,n=arguments.length;a<n;++a)i(arguments[a]);return r;function i(l,s,o){if(typeof l!="object"){var d;s||(s=m6),o||(o=ht);var u={subscribers:[],fire:o,subscribe:function(c){u.subscribers.indexOf(c)===-1&&(u.subscribers.push(c),u.fire=s(u.fire,c))},unsubscribe:function(c){u.subscribers=u.subscribers.filter(function(p){return p!==c}),u.fire=u.subscribers.reduce(s,o)}};return e[l]=r[l]=u,u}It(d=l).forEach(function(c){var p=d[c];if(Br(p))i(c,d[c][0],d[c][1]);else{if(p!=="asap")throw new ye.InvalidArgument("Invalid event config");var A=i(c,Bd,function(){for(var m=arguments.length,h=new Array(m);m--;)h[m]=arguments[m];A.subscribers.forEach(function(C){Tf(function(){C.apply(null,h)})})})}})}}function ho(t,e){return ws(e).from({prototype:t}),e}function Ml(t,e){return!(t.filter||t.algorithm||t.or)&&(e?t.justLimit:!t.replayFilter)}function dm(t,e){t.filter=fl(t.filter,e)}function um(t,e,r){var a=t.replayFilter;t.replayFilter=a?()=>fl(a(),e()):e,t.justLimit=r&&!a}function Op(t,e){if(t.isPrimKey)return e.primaryKey;const r=e.getIndexByKeyPath(t.index);if(!r)throw new ye.Schema("KeyPath "+t.index+" on object store "+e.name+" is not indexed");return r}function rw(t,e,r){const a=Op(t,e.schema);return e.openCursor({trans:r,values:!t.keysOnly,reverse:t.dir==="prev",unique:!!t.unique,query:{index:a,range:t.range}})}function op(t,e,r,a){const n=t.replayFilter?fl(t.filter,t.replayFilter()):t.filter;if(t.or){const i={},l=(s,o,d)=>{if(!n||n(o,d,p=>o.stop(p),p=>o.fail(p))){var u=o.primaryKey,c=""+u;c==="[object ArrayBuffer]"&&(c=""+new Uint8Array(u)),Ir(i,c)||(i[c]=!0,e(s,o,d))}};return Promise.all([t.or._iterate(l,r),aw(rw(t,a,r),t.algorithm,l,!t.keysOnly&&t.valueMapper)])}return aw(rw(t,a,r),fl(t.algorithm,n),e,!t.keysOnly&&t.valueMapper)}function aw(t,e,r,a){var n=Qt(a?(i,l,s)=>r(a(i),l,s):r);return t.then(i=>{if(i)return i.start(()=>{var l=()=>i.continue();e&&!e(i,s=>l=s,s=>{i.stop(s),l=ht},s=>{i.fail(s),l=ht})||n(i.value,i,s=>l=s),l()})})}function Fr(t,e){try{const r=nw(t),a=nw(e);if(r!==a)return r==="Array"?1:a==="Array"?-1:r==="binary"?1:a==="binary"?-1:r==="string"?1:a==="string"?-1:r==="Date"?1:a!=="Date"?NaN:-1;switch(r){case"number":case"Date":case"string":return t>e?1:t<e?-1:0;case"binary":return function(n,i){const l=n.length,s=i.length,o=l<s?l:s;for(let d=0;d<o;++d)if(n[d]!==i[d])return n[d]<i[d]?-1:1;return l===s?0:l<s?-1:1}(iw(t),iw(e));case"Array":return function(n,i){const l=n.length,s=i.length,o=l<s?l:s;for(let d=0;d<o;++d){const u=Fr(n[d],i[d]);if(u!==0)return u}return l===s?0:l<s?-1:1}(t,e)}}catch{}return NaN}function nw(t){const e=typeof t;if(e!=="object")return e;if(ArrayBuffer.isView(t))return"binary";const r=Kg(t);return r==="ArrayBuffer"?"binary":r}function iw(t){return t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):new Uint8Array(t)}let Q6=class{_read(e,r){var a=this._ctx;return a.error?a.table._trans(null,jt.bind(null,a.error)):a.table._trans("readonly",e).then(r)}_write(e){var r=this._ctx;return r.error?r.table._trans(null,jt.bind(null,r.error)):r.table._trans("readwrite",e,"locked")}_addAlgorithm(e){var r=this._ctx;r.algorithm=fl(r.algorithm,e)}_iterate(e,r){return op(this._ctx,e,r,this._ctx.table.core)}clone(e){var r=Object.create(this.constructor.prototype),a=Object.create(this._ctx);return e&&Rr(a,e),r._ctx=a,r}raw(){return this._ctx.valueMapper=null,this}each(e){var r=this._ctx;return this._read(a=>op(r,e,a,r.table.core))}count(e){return this._read(r=>{const a=this._ctx,n=a.table.core;if(Ml(a,!0))return n.count({trans:r,query:{index:Op(a,n.schema),range:a.range}}).then(l=>Math.min(l,a.limit));var i=0;return op(a,()=>(++i,!1),r,n).then(()=>i)}).then(e)}sortBy(e,r){const a=e.split(".").reverse(),n=a[0],i=a.length-1;function l(d,u){return u?l(d[a[u]],u-1):d[n]}var s=this._ctx.dir==="next"?1:-1;function o(d,u){var c=l(d,i),p=l(u,i);return c<p?-s:c>p?s:0}return this.toArray(function(d){return d.sort(o)}).then(r)}toArray(e){return this._read(r=>{var a=this._ctx;if(a.dir==="next"&&Ml(a,!0)&&a.limit>0){const{valueMapper:n}=a,i=Op(a,a.table.core.schema);return a.table.core.query({trans:r,limit:a.limit,values:!0,query:{index:i,range:a.range}}).then(({result:l})=>n?l.map(n):l)}{const n=[];return op(a,i=>n.push(i),r,a.table.core).then(()=>n)}},e)}offset(e){var r=this._ctx;return e<=0||(r.offset+=e,Ml(r)?um(r,()=>{var a=e;return(n,i)=>a===0||(a===1?(--a,!1):(i(()=>{n.advance(a),a=0}),!1))}):um(r,()=>{var a=e;return()=>--a<0})),this}limit(e){return this._ctx.limit=Math.min(this._ctx.limit,e),um(this._ctx,()=>{var r=e;return function(a,n,i){return--r<=0&&n(i),r>=0}},!0),this}until(e,r){return dm(this._ctx,function(a,n,i){return!e(a.value)||(n(i),r)}),this}first(e){return this.limit(1).toArray(function(r){return r[0]}).then(e)}last(e){return this.reverse().first(e)}filter(e){var r,a;return dm(this._ctx,function(n){return e(n.value)}),r=this._ctx,a=e,r.isMatch=fl(r.isMatch,a),this}and(e){return this.filter(e)}or(e){return new this.db.WhereClause(this._ctx.table,e,this)}reverse(){return this._ctx.dir=this._ctx.dir==="prev"?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this}desc(){return this.reverse()}eachKey(e){var r=this._ctx;return r.keysOnly=!r.isMatch,this.each(function(a,n){e(n.key,n)})}eachUniqueKey(e){return this._ctx.unique="unique",this.eachKey(e)}eachPrimaryKey(e){var r=this._ctx;return r.keysOnly=!r.isMatch,this.each(function(a,n){e(n.primaryKey,n)})}keys(e){var r=this._ctx;r.keysOnly=!r.isMatch;var a=[];return this.each(function(n,i){a.push(i.key)}).then(function(){return a}).then(e)}primaryKeys(e){var r=this._ctx;if(r.dir==="next"&&Ml(r,!0)&&r.limit>0)return this._read(n=>{var i=Op(r,r.table.core.schema);return r.table.core.query({trans:n,values:!1,limit:r.limit,query:{index:i,range:r.range}})}).then(({result:n})=>n).then(e);r.keysOnly=!r.isMatch;var a=[];return this.each(function(n,i){a.push(i.primaryKey)}).then(function(){return a}).then(e)}uniqueKeys(e){return this._ctx.unique="unique",this.keys(e)}firstKey(e){return this.limit(1).keys(function(r){return r[0]}).then(e)}lastKey(e){return this.reverse().firstKey(e)}distinct(){var e=this._ctx,r=e.index&&e.table.schema.idxByName[e.index];if(!r||!r.multi)return this;var a={};return dm(this._ctx,function(n){var i=n.primaryKey.toString(),l=Ir(a,i);return a[i]=!0,!l}),this}modify(e){var r=this._ctx;return this._write(a=>{var n;if(typeof e=="function")n=e;else{var i=It(e),l=i.length;n=function(h){for(var C=!1,w=0;w<l;++w){var b=i[w],f=e[b];Kn(h,b)!==f&&(ha(h,b,f),C=!0)}return C}}const s=r.table.core,{outbound:o,extractKey:d}=s.schema.primaryKey,u=this.db._options.modifyChunkSize||200,c=[];let p=0;const A=[],m=(h,C)=>{const{failures:w,numFailures:b}=C;p+=h-b;for(let f of It(w))c.push(w[f])};return this.clone().primaryKeys().then(h=>{const C=w=>{const b=Math.min(u,h.length-w);return s.getMany({trans:a,keys:h.slice(w,w+b),cache:"immutable"}).then(f=>{const K=[],W=[],R=o?[]:null,v=[];for(let y=0;y<b;++y){const G=f[y],Z={value:tu(G),primKey:h[w+y]};n.call(Z,Z.value,Z)!==!1&&(Z.value==null?v.push(h[w+y]):o||Fr(d(G),d(Z.value))===0?(W.push(Z.value),o&&R.push(h[w+y])):(v.push(h[w+y]),K.push(Z.value)))}const L=Ml(r)&&r.limit===1/0&&(typeof e!="function"||e===pm)&&{index:r.index,range:r.range};return Promise.resolve(K.length>0&&s.mutate({trans:a,type:"add",values:K}).then(y=>{for(let G in y.failures)v.splice(parseInt(G),1);m(K.length,y)})).then(()=>(W.length>0||L&&typeof e=="object")&&s.mutate({trans:a,type:"put",keys:R,values:W,criteria:L,changeSpec:typeof e!="function"&&e}).then(y=>m(W.length,y))).then(()=>(v.length>0||L&&e===pm)&&s.mutate({trans:a,type:"delete",keys:v,criteria:L}).then(y=>m(v.length,y))).then(()=>h.length>w+b&&C(w+u))})};return C(0).then(()=>{if(c.length>0)throw new Rc("Error modifying one or more objects",c,p,A);return h.length})})})}delete(){var e=this._ctx,r=e.range;return Ml(e)&&(e.isPrimKey&&!K6||r.type===3)?this._write(a=>{const{primaryKey:n}=e.table.core.schema,i=r;return e.table.core.count({trans:a,query:{index:n,range:i}}).then(l=>e.table.core.mutate({trans:a,type:"deleteRange",range:i}).then(({failures:s,lastResult:o,results:d,numFailures:u})=>{if(u)throw new Rc("Could not delete some values",Object.keys(s).map(c=>s[c]),l-u);return l-u}))}):this.modify(pm)}};const pm=(t,e)=>e.value=null;function W6(t,e){return t<e?-1:t===e?0:1}function v6(t,e){return t>e?-1:t===e?0:1}function Tr(t,e,r){var a=t instanceof s3?new t.Collection(t):t;return a._ctx.error=r?new r(e):new TypeError(e),a}function xl(t){return new t.Collection(t,()=>l3("")).limit(0)}function F6(t,e,r,a,n,i){for(var l=Math.min(t.length,a.length),s=-1,o=0;o<l;++o){var d=e[o];if(d!==a[o])return n(t[o],r[o])<0?t.substr(0,o)+r[o]+r.substr(o+1):n(t[o],a[o])<0?t.substr(0,o)+a[o]+r.substr(o+1):s>=0?t.substr(0,s)+e[s]+r.substr(s+1):null;n(t[o],d)<0&&(s=o)}return l<a.length&&i==="next"?t+r.substr(t.length):l<t.length&&i==="prev"?t.substr(0,r.length):s<0?null:t.substr(0,s)+a[s]+r.substr(s+1)}function dp(t,e,r,a){var n,i,l,s,o,d,u,c=r.length;if(!r.every(h=>typeof h=="string"))return Tr(t,a3);function p(h){n=function(w){return w==="next"?b=>b.toUpperCase():b=>b.toLowerCase()}(h),i=function(w){return w==="next"?b=>b.toLowerCase():b=>b.toUpperCase()}(h),l=h==="next"?W6:v6;var C=r.map(function(w){return{lower:i(w),upper:n(w)}}).sort(function(w,b){return l(w.lower,b.lower)});s=C.map(function(w){return w.upper}),o=C.map(function(w){return w.lower}),d=h,u=h==="next"?"":a}p("next");var A=new t.Collection(t,()=>kn(s[0],o[c-1]+a));A._ondirectionchange=function(h){p(h)};var m=0;return A._addAlgorithm(function(h,C,w){var b=h.key;if(typeof b!="string")return!1;var f=i(b);if(e(f,o,m))return!0;for(var K=null,W=m;W<c;++W){var R=F6(b,f,s[W],o[W],l,d);R===null&&K===null?m=W+1:(K===null||l(K,R)>0)&&(K=R)}return C(K!==null?function(){h.continue(K+u)}:w),!1}),A}function kn(t,e,r,a){return{type:2,lower:t,upper:e,lowerOpen:r,upperOpen:a}}function l3(t){return{type:1,lower:t,upper:t}}let s3=class{get Collection(){return this._ctx.table.db.Collection}between(e,r,a,n){a=a!==!1,n=n===!0;try{return this._cmp(e,r)>0||this._cmp(e,r)===0&&(a||n)&&(!a||!n)?xl(this):new this.Collection(this,()=>kn(e,r,!a,!n))}catch{return Tr(this,$a)}}equals(e){return e==null?Tr(this,$a):new this.Collection(this,()=>l3(e))}above(e){return e==null?Tr(this,$a):new this.Collection(this,()=>kn(e,void 0,!0))}aboveOrEqual(e){return e==null?Tr(this,$a):new this.Collection(this,()=>kn(e,void 0,!1))}below(e){return e==null?Tr(this,$a):new this.Collection(this,()=>kn(void 0,e,!1,!0))}belowOrEqual(e){return e==null?Tr(this,$a):new this.Collection(this,()=>kn(void 0,e))}startsWith(e){return typeof e!="string"?Tr(this,a3):this.between(e,e+nl,!0,!0)}startsWithIgnoreCase(e){return e===""?this.startsWith(e):dp(this,(r,a)=>r.indexOf(a[0])===0,[e],nl)}equalsIgnoreCase(e){return dp(this,(r,a)=>r===a[0],[e],"")}anyOfIgnoreCase(){var e=An.apply(as,arguments);return e.length===0?xl(this):dp(this,(r,a)=>a.indexOf(r)!==-1,e,"")}startsWithAnyOfIgnoreCase(){var e=An.apply(as,arguments);return e.length===0?xl(this):dp(this,(r,a)=>a.some(n=>r.indexOf(n)===0),e,nl)}anyOf(){const e=An.apply(as,arguments);let r=this._cmp;try{e.sort(r)}catch{return Tr(this,$a)}if(e.length===0)return xl(this);const a=new this.Collection(this,()=>kn(e[0],e[e.length-1]));a._ondirectionchange=i=>{r=i==="next"?this._ascending:this._descending,e.sort(r)};let n=0;return a._addAlgorithm((i,l,s)=>{const o=i.key;for(;r(o,e[n])>0;)if(++n,n===e.length)return l(s),!1;return r(o,e[n])===0||(l(()=>{i.continue(e[n])}),!1)}),a}notEqual(e){return this.inAnyRange([[Xg,e],[e,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})}noneOf(){const e=An.apply(as,arguments);if(e.length===0)return new this.Collection(this);try{e.sort(this._ascending)}catch{return Tr(this,$a)}const r=e.reduce((a,n)=>a?a.concat([[a[a.length-1][1],n]]):[[Xg,n]],null);return r.push([e[e.length-1],this.db._maxKey]),this.inAnyRange(r,{includeLowers:!1,includeUppers:!1})}inAnyRange(e,r){const a=this._cmp,n=this._ascending,i=this._descending,l=this._min,s=this._max;if(e.length===0)return xl(this);if(!e.every(b=>b[0]!==void 0&&b[1]!==void 0&&n(b[0],b[1])<=0))return Tr(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",ye.InvalidArgument);const o=!r||r.includeLowers!==!1,d=r&&r.includeUppers===!0;let u,c=n;function p(b,f){return c(b[0],f[0])}try{u=e.reduce(function(b,f){let K=0,W=b.length;for(;K<W;++K){const R=b[K];if(a(f[0],R[1])<0&&a(f[1],R[0])>0){R[0]=l(R[0],f[0]),R[1]=s(R[1],f[1]);break}}return K===W&&b.push(f),b},[]),u.sort(p)}catch{return Tr(this,$a)}let A=0;const m=d?b=>n(b,u[A][1])>0:b=>n(b,u[A][1])>=0,h=o?b=>i(b,u[A][0])>0:b=>i(b,u[A][0])>=0;let C=m;const w=new this.Collection(this,()=>kn(u[0][0],u[u.length-1][1],!o,!d));return w._ondirectionchange=b=>{b==="next"?(C=m,c=n):(C=h,c=i),u.sort(p)},w._addAlgorithm((b,f,K)=>{for(var W=b.key;C(W);)if(++A,A===u.length)return f(K),!1;return!!function(R){return!m(R)&&!h(R)}(W)||(this._cmp(W,u[A][1])===0||this._cmp(W,u[A][0])===0||f(()=>{c===n?b.continue(u[A][0]):b.continue(u[A][1])}),!1)}),w}startsWithAnyOf(){const e=An.apply(as,arguments);return e.every(r=>typeof r=="string")?e.length===0?xl(this):this.inAnyRange(e.map(r=>[r,r+nl])):Tr(this,"startsWithAnyOf() only works with strings")}};function Ea(t){return Qt(function(e){return wd(e),t(e.target.error),!1})}function wd(t){t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault()}const bd="storagemutated",Pn="x-storagemutated-1",pi=ad(null,bd);class y6{_lock(){return Xo(!Ke.global),++this._reculock,this._reculock!==1||Ke.global||(Ke.lockOwnerFor=this),this}_unlock(){if(Xo(!Ke.global),--this._reculock==0)for(Ke.global||(Ke.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var e=this._blockedFuncs.shift();try{xs(e[1],e[0])}catch{}}return this}_locked(){return this._reculock&&Ke.lockOwnerFor!==this}create(e){if(!this.mode)return this;const r=this.db.idbdb,a=this.db._state.dbOpenError;if(Xo(!this.idbtrans),!e&&!r)switch(a&&a.name){case"DatabaseClosedError":throw new ye.DatabaseClosed(a);case"MissingAPIError":throw new ye.MissingAPI(a.message,a);default:throw new ye.OpenFailed(a)}if(!this.active)throw new ye.TransactionInactive;return Xo(this._completion._state===null),(e=this.idbtrans=e||(this.db.core?this.db.core.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}):r.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}))).onerror=Qt(n=>{wd(n),this._reject(e.error)}),e.onabort=Qt(n=>{wd(n),this.active&&this._reject(new ye.Abort(e.error)),this.active=!1,this.on("abort").fire(n)}),e.oncomplete=Qt(()=>{this.active=!1,this._resolve(),"mutatedParts"in e&&pi.storagemutated.fire(e.mutatedParts)}),this}_promise(e,r,a){if(e==="readwrite"&&this.mode!=="readwrite")return jt(new ye.ReadOnly("Transaction is readonly"));if(!this.active)return jt(new ye.TransactionInactive);if(this._locked())return new Ae((i,l)=>{this._blockedFuncs.push([()=>{this._promise(e,r,a).then(i,l)},Ke])});if(a)return di(()=>{var i=new Ae((l,s)=>{this._lock();const o=r(l,s,this);o&&o.then&&o.then(l,s)});return i.finally(()=>this._unlock()),i._lib=!0,i});var n=new Ae((i,l)=>{var s=r(i,l,this);s&&s.then&&s.then(i,l)});return n._lib=!0,n}_root(){return this.parent?this.parent._root():this}waitFor(e){var r=this._root();const a=Ae.resolve(e);if(r._waitingFor)r._waitingFor=r._waitingFor.then(()=>a);else{r._waitingFor=a,r._waitingQueue=[];var n=r.idbtrans.objectStore(r.storeNames[0]);(function l(){for(++r._spinCount;r._waitingQueue.length;)r._waitingQueue.shift()();r._waitingFor&&(n.get(-1/0).onsuccess=l)})()}var i=r._waitingFor;return new Ae((l,s)=>{a.then(o=>r._waitingQueue.push(Qt(l.bind(null,o))),o=>r._waitingQueue.push(Qt(s.bind(null,o)))).finally(()=>{r._waitingFor===i&&(r._waitingFor=null)})})}abort(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new ye.Abort))}table(e){const r=this._memoizedTables||(this._memoizedTables={});if(Ir(r,e))return r[e];const a=this.schema[e];if(!a)throw new ye.NotFound("Table "+e+" not part of transaction");const n=new this.db.Table(e,a,this);return n.core=this.db.core.table(e),r[e]=n,n}}function Hg(t,e,r,a,n,i,l){return{name:t,keyPath:e,unique:r,multi:a,auto:n,compound:i,src:(r&&!l?"&":"")+(a?"*":"")+(n?"++":"")+o3(e)}}function o3(t){return typeof t=="string"?t:t?"["+[].join.call(t,"+")+"]":""}function d3(t,e,r){return{name:t,primKey:e,indexes:r,mappedClass:null,idxByName:kf(r,a=>[a.name,a])}}let Kd=t=>{try{return t.only([[]]),Kd=()=>[[]],[[]]}catch{return Kd=()=>nl,nl}};function Vg(t){return t==null?()=>{}:typeof t=="string"?function(e){return e.split(".").length===1?a=>a[e]:a=>Kn(a,e)}(t):e=>Kn(e,t)}function lw(t){return[].slice.call(t)}let R6=0;function nd(t){return t==null?":id":typeof t=="string"?t:`[${t.join("+")}]`}function E6(t,e,r){function a(o){if(o.type===3)return null;if(o.type===4)throw new Error("Cannot convert never type to IDBKeyRange");const{lower:d,upper:u,lowerOpen:c,upperOpen:p}=o;return d===void 0?u===void 0?null:e.upperBound(u,!!p):u===void 0?e.lowerBound(d,!!c):e.bound(d,u,!!c,!!p)}const{schema:n,hasGetAll:i}=function(o,d){const u=lw(o.objectStoreNames);return{schema:{name:o.name,tables:u.map(c=>d.objectStore(c)).map(c=>{const{keyPath:p,autoIncrement:A}=c,m=Br(p),h=p==null,C={},w={name:c.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:h,compound:m,keyPath:p,autoIncrement:A,unique:!0,extractKey:Vg(p)},indexes:lw(c.indexNames).map(b=>c.index(b)).map(b=>{const{name:f,unique:K,multiEntry:W,keyPath:R}=b,v={name:f,compound:Br(R),keyPath:R,unique:K,multiEntry:W,extractKey:Vg(R)};return C[nd(R)]=v,v}),getIndexByKeyPath:b=>C[nd(b)]};return C[":id"]=w.primaryKey,p!=null&&(C[nd(p)]=w.primaryKey),w})},hasGetAll:u.length>0&&"getAll"in d.objectStore(u[0])&&!(typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604)}}(t,r),l=n.tables.map(o=>function(d){const u=d.name;return{name:u,schema:d,mutate:function({trans:c,type:p,keys:A,values:m,range:h}){return new Promise((C,w)=>{C=Qt(C);const b=c.objectStore(u),f=b.keyPath==null,K=p==="put"||p==="add";if(!K&&p!=="delete"&&p!=="deleteRange")throw new Error("Invalid operation type: "+p);const{length:W}=A||m||{length:1};if(A&&m&&A.length!==m.length)throw new Error("Given keys array must have same length as given values array.");if(W===0)return C({numFailures:0,failures:{},results:[],lastResult:void 0});let R;const v=[],L=[];let y=0;const G=k=>{++y,wd(k)};if(p==="deleteRange"){if(h.type===4)return C({numFailures:y,failures:L,results:[],lastResult:void 0});h.type===3?v.push(R=b.clear()):v.push(R=b.delete(a(h)))}else{const[k,_]=K?f?[m,A]:[m,null]:[A,null];if(K)for(let U=0;U<W;++U)v.push(R=_&&_[U]!==void 0?b[p](k[U],_[U]):b[p](k[U])),R.onerror=G;else for(let U=0;U<W;++U)v.push(R=b[p](k[U])),R.onerror=G}const Z=k=>{const _=k.target.result;v.forEach((U,j)=>U.error!=null&&(L[j]=U.error)),C({numFailures:y,failures:L,results:p==="delete"?A:v.map(U=>U.result),lastResult:_})};R.onerror=k=>{G(k),Z(k)},R.onsuccess=Z})},getMany:({trans:c,keys:p})=>new Promise((A,m)=>{A=Qt(A);const h=c.objectStore(u),C=p.length,w=new Array(C);let b,f=0,K=0;const W=v=>{const L=v.target;w[L._pos]=L.result,++K===f&&A(w)},R=Ea(m);for(let v=0;v<C;++v)p[v]!=null&&(b=h.get(p[v]),b._pos=v,b.onsuccess=W,b.onerror=R,++f);f===0&&A(w)}),get:({trans:c,key:p})=>new Promise((A,m)=>{A=Qt(A);const h=c.objectStore(u).get(p);h.onsuccess=C=>A(C.target.result),h.onerror=Ea(m)}),query:function(c){return p=>new Promise((A,m)=>{A=Qt(A);const{trans:h,values:C,limit:w,query:b}=p,f=w===1/0?void 0:w,{index:K,range:W}=b,R=h.objectStore(u),v=K.isPrimaryKey?R:R.index(K.name),L=a(W);if(w===0)return A({result:[]});if(c){const y=C?v.getAll(L,f):v.getAllKeys(L,f);y.onsuccess=G=>A({result:G.target.result}),y.onerror=Ea(m)}else{let y=0;const G=C||!("openKeyCursor"in v)?v.openCursor(L):v.openKeyCursor(L),Z=[];G.onsuccess=k=>{const _=G.result;return _?(Z.push(C?_.value:_.primaryKey),++y===w?A({result:Z}):void _.continue()):A({result:Z})},G.onerror=Ea(m)}})}(i),openCursor:function({trans:c,values:p,query:A,reverse:m,unique:h}){return new Promise((C,w)=>{C=Qt(C);const{index:b,range:f}=A,K=c.objectStore(u),W=b.isPrimaryKey?K:K.index(b.name),R=m?h?"prevunique":"prev":h?"nextunique":"next",v=p||!("openKeyCursor"in W)?W.openCursor(a(f),R):W.openKeyCursor(a(f),R);v.onerror=Ea(w),v.onsuccess=Qt(L=>{const y=v.result;if(!y)return void C(null);y.___id=++R6,y.done=!1;const G=y.continue.bind(y);let Z=y.continuePrimaryKey;Z&&(Z=Z.bind(y));const k=y.advance.bind(y),_=()=>{throw new Error("Cursor not stopped")};y.trans=c,y.stop=y.continue=y.continuePrimaryKey=y.advance=()=>{throw new Error("Cursor not started")},y.fail=Qt(w),y.next=function(){let U=1;return this.start(()=>U--?this.continue():this.stop()).then(()=>this)},y.start=U=>{const j=new Promise((P,z)=>{P=Qt(P),v.onerror=Ea(z),y.fail=z,y.stop=Se=>{y.stop=y.continue=y.continuePrimaryKey=y.advance=_,P(Se)}}),O=()=>{if(v.result)try{U()}catch(P){y.fail(P)}else y.done=!0,y.start=()=>{throw new Error("Cursor behind last entry")},y.stop()};return v.onsuccess=Qt(P=>{v.onsuccess=O,O()}),y.continue=G,y.continuePrimaryKey=Z,y.advance=k,O(),j},C(y)},w)})},count({query:c,trans:p}){const{index:A,range:m}=c;return new Promise((h,C)=>{const w=p.objectStore(u),b=A.isPrimaryKey?w:w.index(A.name),f=a(m),K=f?b.count(f):b.count();K.onsuccess=Qt(W=>h(W.target.result)),K.onerror=Ea(C)})}}}(o)),s={};return l.forEach(o=>s[o.name]=o),{stack:"dbcore",transaction:t.transaction.bind(t),table(o){if(!s[o])throw new Error(`Table '${o}' not found`);return s[o]},MIN_KEY:-1/0,MAX_KEY:Kd(e),schema:n}}function Yg({_novip:t},e){const r=e.db,a=function(n,i,{IDBKeyRange:l,indexedDB:s},o){return{dbcore:function(u,c){return c.reduce((p,{create:A})=>({...p,...A(p)}),u)}(E6(i,l,o),n.dbcore)}}(t._middlewares,r,t._deps,e);t.core=a.dbcore,t.tables.forEach(n=>{const i=n.name;t.core.schema.tables.some(l=>l.name===i)&&(n.core=t.core.table(i),t[i]instanceof t.Table&&(t[i].core=n.core))})}function Xc({_novip:t},e,r,a){r.forEach(n=>{const i=a[n];e.forEach(l=>{const s=Uh(l,n);(!s||"value"in s&&s.value===void 0)&&(l===t.Transaction.prototype||l instanceof t.Transaction?bn(l,n,{get(){return this.table(n)},set(o){Nf(this,n,{value:o,writable:!0,configurable:!0,enumerable:!0})}}):l[n]=new t.Table(n,i))})})}function Ng({_novip:t},e){e.forEach(r=>{for(let a in r)r[a]instanceof t.Table&&delete r[a]})}function G6(t,e){return t._cfg.version-e._cfg.version}function S6(t,e,r,a){const n=t._dbSchema,i=t._createTransaction("readwrite",t._storeNames,n);i.create(r),i._completion.catch(a);const l=i._reject.bind(i),s=Ke.transless||Ke;di(()=>{Ke.trans=i,Ke.transless=s,e===0?(It(n).forEach(o=>{cm(r,o,n[o].primKey,n[o].indexes)}),Yg(t,r),Ae.follow(()=>t.on.populate.fire(i)).catch(l)):function({_novip:o},d,u,c){const p=[],A=o._versions;let m=o._dbSchema=Tg(o,o.idbdb,c),h=!1;const C=A.filter(b=>b._cfg.version>=d);function w(){return p.length?Ae.resolve(p.shift()(u.idbtrans)).then(w):Ae.resolve()}return C.forEach(b=>{p.push(()=>{const f=m,K=b._cfg.dbschema;kg(o,f,c),kg(o,K,c),m=o._dbSchema=K;const W=u3(f,K);W.add.forEach(v=>{cm(c,v[0],v[1].primKey,v[1].indexes)}),W.change.forEach(v=>{if(v.recreate)throw new ye.Upgrade("Not yet support for changing primary key");{const L=c.objectStore(v.name);v.add.forEach(y=>Lg(L,y)),v.change.forEach(y=>{L.deleteIndex(y.name),Lg(L,y)}),v.del.forEach(y=>L.deleteIndex(y))}});const R=b._cfg.contentUpgrade;if(R&&b._cfg.version>d){Yg(o,c),u._memoizedTables={},h=!0;let v=Uf(K);W.del.forEach(Z=>{v[Z]=f[Z]}),Ng(o,[o.Transaction.prototype]),Xc(o,[o.Transaction.prototype],It(v),v),u.schema=v;const L=_h(R);let y;L&&Ms();const G=Ae.follow(()=>{if(y=R(u),y&&L){var Z=Qn.bind(null,null);y.then(Z,Z)}});return y&&typeof y.then=="function"?Ae.resolve(y):G.then(()=>y)}}),p.push(f=>{(!h||!b6)&&function(K,W){[].slice.call(W.db.objectStoreNames).forEach(R=>K[R]==null&&W.db.deleteObjectStore(R))}(b._cfg.dbschema,f),Ng(o,[o.Transaction.prototype]),Xc(o,[o.Transaction.prototype],o._storeNames,o._dbSchema),u.schema=o._dbSchema})}),w().then(()=>{var b,f;f=c,It(b=m).forEach(K=>{f.db.objectStoreNames.contains(K)||cm(f,K,b[K].primKey,b[K].indexes)})})}(t,e,i,r).catch(l)})}function u3(t,e){const r={del:[],add:[],change:[]};let a;for(a in t)e[a]||r.del.push(a);for(a in e){const n=t[a],i=e[a];if(n){const l={name:a,def:i,recreate:!1,del:[],add:[],change:[]};if(""+(n.primKey.keyPath||"")!=""+(i.primKey.keyPath||"")||n.primKey.auto!==i.primKey.auto&&!q0)l.recreate=!0,r.change.push(l);else{const s=n.idxByName,o=i.idxByName;let d;for(d in s)o[d]||l.del.push(d);for(d in o){const u=s[d],c=o[d];u?u.src!==c.src&&l.change.push(c):l.add.push(c)}(l.del.length>0||l.add.length>0||l.change.length>0)&&r.change.push(l)}}else r.add.push([a,i])}return r}function cm(t,e,r,a){const n=t.db.createObjectStore(e,r.keyPath?{keyPath:r.keyPath,autoIncrement:r.auto}:{autoIncrement:r.auto});return a.forEach(i=>Lg(n,i)),n}function Lg(t,e){t.createIndex(e.name,e.keyPath,{unique:e.unique,multiEntry:e.multi})}function Tg(t,e,r){const a={};return yc(e.objectStoreNames,0).forEach(n=>{const i=r.objectStore(n);let l=i.keyPath;const s=Hg(o3(l),l||"",!1,!1,!!i.autoIncrement,l&&typeof l!="string",!0),o=[];for(let u=0;u<i.indexNames.length;++u){const c=i.index(i.indexNames[u]);l=c.keyPath;var d=Hg(c.name,l,!!c.unique,!!c.multiEntry,!1,l&&typeof l!="string",!1);o.push(d)}a[n]=d3(n,s,o)}),a}function kg({_novip:t},e,r){const a=r.db.objectStoreNames;for(let n=0;n<a.length;++n){const i=a[n],l=r.objectStore(i);t._hasGetAll="getAll"in l;for(let s=0;s<l.indexNames.length;++s){const o=l.indexNames[s],d=l.index(o).keyPath,u=typeof d=="string"?d:"["+yc(d).join("+")+"]";if(e[i]){const c=e[i].idxByName[u];c&&(c.name=o,delete e[i].idxByName[u],e[i].idxByName[o]=c)}}}typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&bt.WorkerGlobalScope&&bt instanceof bt.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(t._hasGetAll=!1)}class Z6{_parseStoresSpec(e,r){It(e).forEach(a=>{if(e[a]!==null){var n=e[a].split(",").map((l,s)=>{const o=(l=l.trim()).replace(/([&*]|\+\+)/g,""),d=/^\[/.test(o)?o.match(/^\[(.*)\]$/)[1].split("+"):o;return Hg(o,d||null,/\&/.test(l),/\*/.test(l),/\+\+/.test(l),Br(d),s===0)}),i=n.shift();if(i.multi)throw new ye.Schema("Primary key cannot be multi-valued");n.forEach(l=>{if(l.auto)throw new ye.Schema("Only primary key can be marked as autoIncrement (++)");if(!l.keyPath)throw new ye.Schema("Index must have a name and cannot be an empty string")}),r[a]=d3(a,i,n)}})}stores(e){const r=this.db;this._cfg.storesSource=this._cfg.storesSource?Rr(this._cfg.storesSource,e):e;const a=r._versions,n={};let i={};return a.forEach(l=>{Rr(n,l._cfg.storesSource),i=l._cfg.dbschema={},l._parseStoresSpec(n,i)}),r._dbSchema=i,Ng(r,[r._allTables,r,r.Transaction.prototype]),Xc(r,[r._allTables,r,r.Transaction.prototype,this._cfg.tables],It(i),i),r._storeNames=It(i),this}upgrade(e){return this._cfg.contentUpgrade=Mh(this._cfg.contentUpgrade||ht,e),this}}function Ph(t,e){let r=t._dbNamesDB;return r||(r=t._dbNamesDB=new ml($0,{addons:[],indexedDB:t,IDBKeyRange:e}),r.version(1).stores({dbnames:"name"})),r.table("dbnames")}function zh(t){return t&&typeof t.databases=="function"}function Ug(t){return di(function(){return Ke.letThrough=!0,t()})}function X6(){var t;return!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise(function(e){var r=function(){return indexedDB.databases().finally(e)};t=setInterval(r,100),r()}).finally(function(){return clearInterval(t)}):Promise.resolve()}function H6(t){const e=t._state,{indexedDB:r}=t._deps;if(e.isBeingOpened||t.idbdb)return e.dbReadyPromise.then(()=>e.dbOpenError?jt(e.dbOpenError):t);Da&&(e.openCanceller._stackHolder=Rl()),e.isBeingOpened=!0,e.dbOpenError=null,e.openComplete=!1;const a=e.openCanceller;function n(){if(e.openCanceller!==a)throw new ye.DatabaseClosed("db.open() was cancelled")}let i=e.dbReadyResolve,l=null,s=!1;const o=()=>new Ae((d,u)=>{if(n(),!r)throw new ye.MissingAPI;const c=t.name,p=e.autoSchema?r.open(c):r.open(c,Math.round(10*t.verno));if(!p)throw new ye.MissingAPI;p.onerror=Ea(u),p.onblocked=Qt(t._fireOnBlocked),p.onupgradeneeded=Qt(A=>{if(l=p.transaction,e.autoSchema&&!t._options.allowEmptyDB){p.onerror=wd,l.abort(),p.result.close();const h=r.deleteDatabase(c);h.onsuccess=h.onerror=Qt(()=>{u(new ye.NoSuchDatabase(`Database ${c} doesnt exist`))})}else{l.onerror=Ea(u);var m=A.oldVersion>Math.pow(2,62)?0:A.oldVersion;s=m<1,t._novip.idbdb=p.result,S6(t,m/10,l,u)}},u),p.onsuccess=Qt(()=>{l=null;const A=t._novip.idbdb=p.result,m=yc(A.objectStoreNames);if(m.length>0)try{const C=A.transaction((h=m).length===1?h[0]:h,"readonly");e.autoSchema?function({_novip:w},b,f){w.verno=b.version/10;const K=w._dbSchema=Tg(0,b,f);w._storeNames=yc(b.objectStoreNames,0),Xc(w,[w._allTables],It(K),K)}(t,A,C):(kg(t,t._dbSchema,C),function(w,b){const f=u3(Tg(0,w.idbdb,b),w._dbSchema);return!(f.add.length||f.change.some(K=>K.add.length||K.change.length))}(t,C)||console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Some queries may fail.")),Yg(t,C)}catch{}var h;rd.push(t),A.onversionchange=Qt(C=>{e.vcFired=!0,t.on("versionchange").fire(C)}),A.onclose=Qt(C=>{t.on("close").fire(C)}),s&&function({indexedDB:C,IDBKeyRange:w},b){!zh(C)&&b!==$0&&Ph(C,w).put({name:b}).catch(ht)}(t._deps,c),d()},u)}).catch(d=>d&&d.name==="UnknownError"&&e.PR1398_maxLoop>0?(e.PR1398_maxLoop--,console.warn("Dexie: Workaround for Chrome UnknownError on open()"),o()):Ae.reject(d));return Ae.race([a,(typeof navigator>"u"?Ae.resolve():X6()).then(o)]).then(()=>(n(),e.onReadyBeingFired=[],Ae.resolve(Ug(()=>t.on.ready.fire(t.vip))).then(function d(){if(e.onReadyBeingFired.length>0){let u=e.onReadyBeingFired.reduce(Mh,ht);return e.onReadyBeingFired=[],Ae.resolve(Ug(()=>u(t.vip))).then(d)}}))).finally(()=>{e.onReadyBeingFired=null,e.isBeingOpened=!1}).then(()=>t).catch(d=>{e.dbOpenError=d;try{l&&l.abort()}catch{}return a===e.openCanceller&&t._close(),jt(d)}).finally(()=>{e.openComplete=!0,i()})}function _g(t){var e=i=>t.next(i),r=n(e),a=n(i=>t.throw(i));function n(i){return l=>{var s=i(l),o=s.value;return s.done?o:o&&typeof o.then=="function"?o.then(r,a):Br(o)?Promise.all(o).then(r,a):r(o)}}return n(e)()}function V6(t,e,r){var a=arguments.length;if(a<2)throw new ye.InvalidArgument("Too few arguments");for(var n=new Array(a-1);--a;)n[a-1]=arguments[a];return r=n.pop(),[t,_f(n),r]}function p3(t,e,r,a,n){return Ae.resolve().then(()=>{const i=Ke.transless||Ke,l=t._createTransaction(e,r,t._dbSchema,a),s={trans:l,transless:i};if(a)l.idbtrans=a.idbtrans;else try{l.create(),t._state.PR1398_maxLoop=3}catch(c){return c.name===Dh.InvalidState&&t.isOpen()&&--t._state.PR1398_maxLoop>0?(console.warn("Dexie: Need to reopen db"),t._close(),t.open().then(()=>p3(t,e,r,null,n))):jt(c)}const o=_h(n);let d;o&&Ms();const u=Ae.follow(()=>{if(d=n.call(l,l),d)if(o){var c=Qn.bind(null,null);d.then(c,c)}else typeof d.next=="function"&&typeof d.throw=="function"&&(d=_g(d))},s);return(d&&typeof d.then=="function"?Ae.resolve(d).then(c=>l.active?c:jt(new ye.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn"))):u.then(()=>d)).then(c=>(a&&l._resolve(),l._completion.then(()=>c))).catch(c=>(l._reject(c),jt(c)))})}function up(t,e,r){const a=Br(t)?t.slice():[t];for(let n=0;n<r;++n)a.push(e);return a}const Y6={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:function(t){return{...t,table(e){const r=t.table(e),{schema:a}=r,n={},i=[];function l(u,c,p){const A=nd(u),m=n[A]=n[A]||[],h=u==null?0:typeof u=="string"?1:u.length,C=c>0,w={...p,isVirtual:C,keyTail:c,keyLength:h,extractKey:Vg(u),unique:!C&&p.unique};return m.push(w),w.isPrimaryKey||i.push(w),h>1&&l(h===2?u[0]:u.slice(0,h-1),c+1,p),m.sort((b,f)=>b.keyTail-f.keyTail),w}const s=l(a.primaryKey.keyPath,0,a.primaryKey);n[":id"]=[s];for(const u of a.indexes)l(u.keyPath,0,u);function o(u){const c=u.query.index;return c.isVirtual?{...u,query:{index:c,range:(p=u.query.range,A=c.keyTail,{type:p.type===1?2:p.type,lower:up(p.lower,p.lowerOpen?t.MAX_KEY:t.MIN_KEY,A),lowerOpen:!0,upper:up(p.upper,p.upperOpen?t.MIN_KEY:t.MAX_KEY,A),upperOpen:!0})}}:u;var p,A}return{...r,schema:{...a,primaryKey:s,indexes:i,getIndexByKeyPath:function(u){const c=n[nd(u)];return c&&c[0]}},count:u=>r.count(o(u)),query:u=>r.query(o(u)),openCursor(u){const{keyTail:c,isVirtual:p,keyLength:A}=u.query.index;return p?r.openCursor(o(u)).then(m=>m&&function(h){return Object.create(h,{continue:{value:function(w){w!=null?h.continue(up(w,u.reverse?t.MAX_KEY:t.MIN_KEY,c)):u.unique?h.continue(h.key.slice(0,A).concat(u.reverse?t.MIN_KEY:t.MAX_KEY,c)):h.continue()}},continuePrimaryKey:{value(w,b){h.continuePrimaryKey(up(w,t.MAX_KEY,c),b)}},primaryKey:{get:()=>h.primaryKey},key:{get(){const w=h.key;return A===1?w[0]:w.slice(0,A)}},value:{get:()=>h.value}})}(m)):r.openCursor(u)}}}}}};function jh(t,e,r,a){return r=r||{},a=a||"",It(t).forEach(n=>{if(Ir(e,n)){var i=t[n],l=e[n];if(typeof i=="object"&&typeof l=="object"&&i&&l){const s=Kg(i);s!==Kg(l)?r[a+n]=e[n]:s==="Object"?jh(i,l,r,a+n+"."):i!==l&&(r[a+n]=e[n])}else i!==l&&(r[a+n]=e[n])}else r[a+n]=void 0}),It(e).forEach(n=>{Ir(t,n)||(r[a+n]=e[n])}),r}const N6={stack:"dbcore",name:"HooksMiddleware",level:2,create:t=>({...t,table(e){const r=t.table(e),{primaryKey:a}=r.schema;return{...r,mutate(i){const l=Ke.trans,{deleting:s,creating:o,updating:d}=l.table(e).hook;switch(i.type){case"add":if(o.fire===ht)break;return l._promise("readwrite",()=>u(i),!0);case"put":if(o.fire===ht&&d.fire===ht)break;return l._promise("readwrite",()=>u(i),!0);case"delete":if(s.fire===ht)break;return l._promise("readwrite",()=>u(i),!0);case"deleteRange":if(s.fire===ht)break;return l._promise("readwrite",()=>function(p){return c(p.trans,p.range,1e4)}(i),!0)}return r.mutate(i);function u(p){const A=Ke.trans,m=p.keys||function(h,C){return C.type==="delete"?C.keys:C.keys||C.values.map(h.extractKey)}(a,p);if(!m)throw new Error("Keys missing");return(p=p.type==="add"||p.type==="put"?{...p,keys:m}:{...p}).type!=="delete"&&(p.values=[...p.values]),p.keys&&(p.keys=[...p.keys]),function(h,C,w){return C.type==="add"?Promise.resolve([]):h.getMany({trans:C.trans,keys:w,cache:"immutable"})}(r,p,m).then(h=>{const C=m.map((w,b)=>{const f=h[b],K={onerror:null,onsuccess:null};if(p.type==="delete")s.fire.call(K,w,f,A);else if(p.type==="add"||f===void 0){const W=o.fire.call(K,w,p.values[b],A);w==null&&W!=null&&(w=W,p.keys[b]=w,a.outbound||ha(p.values[b],a.keyPath,w))}else{const W=jh(f,p.values[b]),R=d.fire.call(K,W,w,f,A);if(R){const v=p.values[b];Object.keys(R).forEach(L=>{Ir(v,L)?v[L]=R[L]:ha(v,L,R[L])})}}return K});return r.mutate(p).then(({failures:w,results:b,numFailures:f,lastResult:K})=>{for(let W=0;W<m.length;++W){const R=b?b[W]:m[W],v=C[W];R==null?v.onerror&&v.onerror(w[W]):v.onsuccess&&v.onsuccess(p.type==="put"&&h[W]?p.values[W]:R)}return{failures:w,results:b,numFailures:f,lastResult:K}}).catch(w=>(C.forEach(b=>b.onerror&&b.onerror(w)),Promise.reject(w)))})}function c(p,A,m){return r.query({trans:p,values:!1,query:{index:a,range:A},limit:m}).then(({result:h})=>u({type:"delete",keys:h,trans:p}).then(C=>C.numFailures>0?Promise.reject(C.failures[0]):h.length<m?{failures:[],numFailures:0,lastResult:void 0}:c(p,{...A,lower:h[h.length-1],lowerOpen:!0},m)))}}}}})};function c3(t,e,r){try{if(!e||e.keys.length<t.length)return null;const a=[];for(let n=0,i=0;n<e.keys.length&&i<t.length;++n)Fr(e.keys[n],t[i])===0&&(a.push(r?tu(e.values[n]):e.values[n]),++i);return a.length===t.length?a:null}catch{return null}}const L6={stack:"dbcore",level:-1,create:t=>({table:e=>{const r=t.table(e);return{...r,getMany:a=>{if(!a.cache)return r.getMany(a);const n=c3(a.keys,a.trans._cache,a.cache==="clone");return n?Ae.resolve(n):r.getMany(a).then(i=>(a.trans._cache={keys:a.keys,values:a.cache==="clone"?tu(i):i},i))},mutate:a=>(a.type!=="add"&&(a.trans._cache=null),r.mutate(a))}}})};function qh(t){return!("from"in t)}const cn=function(t,e){if(!this){const r=new cn;return t&&"d"in t&&Rr(r,t),r}Rr(this,arguments.length?{d:1,from:t,to:arguments.length>1?e:t}:{d:0})};function fd(t,e,r){const a=Fr(e,r);if(isNaN(a))return;if(a>0)throw RangeError();if(qh(t))return Rr(t,{from:e,to:r,d:1});const n=t.l,i=t.r;if(Fr(r,t.from)<0)return n?fd(n,e,r):t.l={from:e,to:r,d:1,l:null,r:null},sw(t);if(Fr(e,t.to)>0)return i?fd(i,e,r):t.r={from:e,to:r,d:1,l:null,r:null},sw(t);Fr(e,t.from)<0&&(t.from=e,t.l=null,t.d=i?i.d+1:1),Fr(r,t.to)>0&&(t.to=r,t.r=null,t.d=t.l?t.l.d+1:1);const l=!t.r;n&&!t.l&&Hc(t,n),i&&l&&Hc(t,i)}function Hc(t,e){qh(e)||function r(a,{from:n,to:i,l,r:s}){fd(a,n,i),l&&r(a,l),s&&r(a,s)}(t,e)}function T6(t,e){const r=Ig(e);let a=r.next();if(a.done)return!1;let n=a.value;const i=Ig(t);let l=i.next(n.from),s=l.value;for(;!a.done&&!l.done;){if(Fr(s.from,n.to)<=0&&Fr(s.to,n.from)>=0)return!0;Fr(n.from,s.from)<0?n=(a=r.next(s.from)).value:s=(l=i.next(n.from)).value}return!1}function Ig(t){let e=qh(t)?null:{s:0,n:t};return{next(r){const a=arguments.length>0;for(;e;)switch(e.s){case 0:if(e.s=1,a)for(;e.n.l&&Fr(r,e.n.from)<0;)e={up:e,n:e.n.l,s:1};else for(;e.n.l;)e={up:e,n:e.n.l,s:1};case 1:if(e.s=2,!a||Fr(r,e.n.to)<=0)return{value:e.n,done:!1};case 2:if(e.n.r){e.s=3,e={up:e,n:e.n.r,s:0};continue}case 3:e=e.up}return{done:!0}}}}function sw(t){var e,r;const a=(((e=t.r)===null||e===void 0?void 0:e.d)||0)-(((r=t.l)===null||r===void 0?void 0:r.d)||0),n=a>1?"r":a<-1?"l":"";if(n){const i=n==="r"?"l":"r",l={...t},s=t[n];t.from=s.from,t.to=s.to,t[n]=s[n],l[n]=s[i],t[i]=l,l.d=ow(l)}t.d=ow(t)}function ow({r:t,l:e}){return(t?e?Math.max(t.d,e.d):t.d:e?e.d:0)+1}Gs(cn.prototype,{add(t){return Hc(this,t),this},addKey(t){return fd(this,t,t),this},addKeys(t){return t.forEach(e=>fd(this,e,e)),this},[fg](){return Ig(this)}});const k6={stack:"dbcore",level:0,create:t=>{const e=t.schema.name,r=new cn(t.MIN_KEY,t.MAX_KEY);return{...t,table:a=>{const n=t.table(a),{schema:i}=n,{primaryKey:l}=i,{extractKey:s,outbound:o}=l,d={...n,mutate:p=>{const A=p.trans,m=A.mutatedParts||(A.mutatedParts={}),h=R=>{const v=`idb://${e}/${a}/${R}`;return m[v]||(m[v]=new cn)},C=h(""),w=h(":dels"),{type:b}=p;let[f,K]=p.type==="deleteRange"?[p.range]:p.type==="delete"?[p.keys]:p.values.length<50?[[],p.values]:[];const W=p.trans._cache;return n.mutate(p).then(R=>{if(Br(f)){b!=="delete"&&(f=R.results),C.addKeys(f);const v=c3(f,W);v||b==="add"||w.addKeys(f),(v||K)&&function(L,y,G,Z){function k(_){const U=L(_.name||"");function j(P){return P!=null?_.extractKey(P):null}const O=P=>_.multiEntry&&Br(P)?P.forEach(z=>U.addKey(z)):U.addKey(P);(G||Z).forEach((P,z)=>{const Se=G&&j(G[z]),he=Z&&j(Z[z]);Fr(Se,he)!==0&&(Se!=null&&O(Se),he!=null&&O(he))})}y.indexes.forEach(k)}(h,i,v,K)}else if(f){const v={from:f.lower,to:f.upper};w.add(v),C.add(v)}else C.add(r),w.add(r),i.indexes.forEach(v=>h(v.name).add(r));return R})}},u=({query:{index:p,range:A}})=>{var m,h;return[p,new cn((m=A.lower)!==null&&m!==void 0?m:t.MIN_KEY,(h=A.upper)!==null&&h!==void 0?h:t.MAX_KEY)]},c={get:p=>[l,new cn(p.key)],getMany:p=>[l,new cn().addKeys(p.keys)],count:u,query:u,openCursor:u};return It(c).forEach(p=>{d[p]=function(A){const{subscr:m}=Ke;if(m){const h=K=>{const W=`idb://${e}/${a}/${K}`;return m[W]||(m[W]=new cn)},C=h(""),w=h(":dels"),[b,f]=c[p](A);if(h(b.name||"").add(f),!b.isPrimaryKey){if(p!=="count"){const K=p==="query"&&o&&A.values&&n.query({...A,values:!1});return n[p].apply(this,arguments).then(W=>{if(p==="query"){if(o&&A.values)return K.then(({result:v})=>(C.addKeys(v),W));const R=A.values?W.result.map(s):W.result;A.values?C.addKeys(R):w.addKeys(R)}else if(p==="openCursor"){const R=W,v=A.values;return R&&Object.create(R,{key:{get:()=>(w.addKey(R.primaryKey),R.key)},primaryKey:{get(){const L=R.primaryKey;return w.addKey(L),L}},value:{get:()=>(v&&C.addKey(R.primaryKey),R.value)}})}return W})}w.add(r)}}return n[p].apply(this,arguments)}}),d}}}};class ml{constructor(e,r){this._middlewares={},this.verno=0;const a=ml.dependencies;this._options=r={addons:ml.addons,autoOpen:!0,indexedDB:a.indexedDB,IDBKeyRange:a.IDBKeyRange,...r},this._deps={indexedDB:r.indexedDB,IDBKeyRange:r.IDBKeyRange};const{addons:n}=r;this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this;const i={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:ht,dbReadyPromise:null,cancelOpen:ht,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3};var l;i.dbReadyPromise=new Ae(s=>{i.dbReadyResolve=s}),i.openCanceller=new Ae((s,o)=>{i.cancelOpen=o}),this._state=i,this.name=e,this.on=ad(this,"populate","blocked","versionchange","close",{ready:[Mh,ht]}),this.on.ready.subscribe=Lf(this.on.ready.subscribe,s=>(o,d)=>{ml.vip(()=>{const u=this._state;if(u.openComplete)u.dbOpenError||Ae.resolve().then(o),d&&s(o);else if(u.onReadyBeingFired)u.onReadyBeingFired.push(o),d&&s(o);else{s(o);const c=this;d||s(function p(){c.on.ready.unsubscribe(o),c.on.ready.unsubscribe(p)})}})}),this.Collection=(l=this,ho(Q6.prototype,function(s,o){this.db=l;let d=i3,u=null;if(o)try{d=o()}catch(m){u=m}const c=s._ctx,p=c.table,A=p.hook.reading.fire;this._ctx={table:p,index:c.index,isPrimKey:!c.index||p.schema.primKey.keyPath&&c.index===p.schema.primKey.name,range:d,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:u,or:c.or,valueMapper:A!==Bd?A:null}})),this.Table=function(s){return ho(f6.prototype,function(o,d,u){this.db=s,this._tx=u,this.name=o,this.schema=d,this.hook=s._allTables[o]?s._allTables[o].hook:ad(null,{creating:[u6,ht],reading:[d6,Bd],updating:[c6,ht],deleting:[p6,ht]})})}(this),this.Transaction=function(s){return ho(y6.prototype,function(o,d,u,c,p){this.db=s,this.mode=o,this.storeNames=d,this.schema=u,this.chromeTransactionDurability=c,this.idbtrans=null,this.on=ad(this,"complete","error","abort"),this.parent=p||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new Ae((A,m)=>{this._resolve=A,this._reject=m}),this._completion.then(()=>{this.active=!1,this.on.complete.fire()},A=>{var m=this.active;return this.active=!1,this.on.error.fire(A),this.parent?this.parent._reject(A):m&&this.idbtrans&&this.idbtrans.abort(),jt(A)})})}(this),this.Version=function(s){return ho(Z6.prototype,function(o){this.db=s,this._cfg={version:o,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}})}(this),this.WhereClause=function(s){return ho(s3.prototype,function(o,d,u){this.db=s,this._ctx={table:o,index:d===":id"?null:d,or:u};const c=s._deps.indexedDB;if(!c)throw new ye.MissingAPI;this._cmp=this._ascending=c.cmp.bind(c),this._descending=(p,A)=>c.cmp(A,p),this._max=(p,A)=>c.cmp(p,A)>0?p:A,this._min=(p,A)=>c.cmp(p,A)<0?p:A,this._IDBKeyRange=s._deps.IDBKeyRange})}(this),this.on("versionchange",s=>{s.newVersion>0?console.warn(`Another connection wants to upgrade database '${this.name}'. Closing db now to resume the upgrade.`):console.warn(`Another connection wants to delete database '${this.name}'. Closing db now to resume the delete request.`),this.close()}),this.on("blocked",s=>{!s.newVersion||s.newVersion<s.oldVersion?console.warn(`Dexie.delete('${this.name}') was blocked`):console.warn(`Upgrade '${this.name}' blocked by other connection holding version ${s.oldVersion/10}`)}),this._maxKey=Kd(r.IDBKeyRange),this._createTransaction=(s,o,d,u)=>new this.Transaction(s,o,d,this._options.chromeTransactionDurability,u),this._fireOnBlocked=s=>{this.on("blocked").fire(s),rd.filter(o=>o.name===this.name&&o!==this&&!o._state.vcFired).map(o=>o.on("versionchange").fire(s))},this.use(Y6),this.use(N6),this.use(k6),this.use(L6),this.vip=Object.create(this,{_vip:{value:!0}}),n.forEach(s=>s(this))}version(e){if(isNaN(e)||e<.1)throw new ye.Type("Given version is not a positive number");if(e=Math.round(10*e)/10,this.idbdb||this._state.isBeingOpened)throw new ye.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,e);const r=this._versions;var a=r.filter(n=>n._cfg.version===e)[0];return a||(a=new this.Version(e),r.push(a),r.sort(G6),a.stores({}),this._state.autoSchema=!1,a)}_whenReady(e){return this.idbdb&&(this._state.openComplete||Ke.letThrough||this._vip)?e():new Ae((r,a)=>{if(this._state.openComplete)return a(new ye.DatabaseClosed(this._state.dbOpenError));if(!this._state.isBeingOpened){if(!this._options.autoOpen)return void a(new ye.DatabaseClosed);this.open().catch(ht)}this._state.dbReadyPromise.then(r,a)}).then(e)}use({stack:e,create:r,level:a,name:n}){n&&this.unuse({stack:e,name:n});const i=this._middlewares[e]||(this._middlewares[e]=[]);return i.push({stack:e,create:r,level:a??10,name:n}),i.sort((l,s)=>l.level-s.level),this}unuse({stack:e,name:r,create:a}){return e&&this._middlewares[e]&&(this._middlewares[e]=this._middlewares[e].filter(n=>a?n.create!==a:!!r&&n.name!==r)),this}open(){return H6(this)}_close(){const e=this._state,r=rd.indexOf(this);if(r>=0&&rd.splice(r,1),this.idbdb){try{this.idbdb.close()}catch{}this._novip.idbdb=null}e.dbReadyPromise=new Ae(a=>{e.dbReadyResolve=a}),e.openCanceller=new Ae((a,n)=>{e.cancelOpen=n})}close(){this._close();const e=this._state;this._options.autoOpen=!1,e.dbOpenError=new ye.DatabaseClosed,e.isBeingOpened&&e.cancelOpen(e.dbOpenError)}delete(){const e=arguments.length>0,r=this._state;return new Ae((a,n)=>{const i=()=>{this.close();var l=this._deps.indexedDB.deleteDatabase(this.name);l.onsuccess=Qt(()=>{(function({indexedDB:s,IDBKeyRange:o},d){!zh(s)&&d!==$0&&Ph(s,o).delete(d).catch(ht)})(this._deps,this.name),a()}),l.onerror=Ea(n),l.onblocked=this._fireOnBlocked};if(e)throw new ye.InvalidArgument("Arguments not allowed in db.delete()");r.isBeingOpened?r.dbReadyPromise.then(i):i()})}backendDB(){return this.idbdb}isOpen(){return this.idbdb!==null}hasBeenClosed(){const e=this._state.dbOpenError;return e&&e.name==="DatabaseClosed"}hasFailed(){return this._state.dbOpenError!==null}dynamicallyOpened(){return this._state.autoSchema}get tables(){return It(this._allTables).map(e=>this._allTables[e])}transaction(){const e=V6.apply(this,arguments);return this._transaction.apply(this,e)}_transaction(e,r,a){let n=Ke.trans;n&&n.db===this&&e.indexOf("!")===-1||(n=null);const i=e.indexOf("?")!==-1;let l,s;e=e.replace("!","").replace("?","");try{if(s=r.map(d=>{var u=d instanceof this.Table?d.name:d;if(typeof u!="string")throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return u}),e=="r"||e===sm)l=sm;else{if(e!="rw"&&e!=om)throw new ye.InvalidArgument("Invalid transaction mode: "+e);l=om}if(n){if(n.mode===sm&&l===om){if(!i)throw new ye.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");n=null}n&&s.forEach(d=>{if(n&&n.storeNames.indexOf(d)===-1){if(!i)throw new ye.SubTransaction("Table "+d+" not included in parent transaction.");n=null}}),i&&n&&!n.active&&(n=null)}}catch(d){return n?n._promise(null,(u,c)=>{c(d)}):jt(d)}const o=p3.bind(null,this,l,s,n,a);return n?n._promise(l,o,"lock"):Ke.trans?xs(Ke.transless,()=>this._whenReady(o)):this._whenReady(o)}table(e){if(!Ir(this._allTables,e))throw new ye.InvalidTable(`Table ${e} does not exist`);return this._allTables[e]}}const U6=typeof Symbol<"u"&&"observable"in Symbol?Symbol.observable:"@@observable";class _6{constructor(e){this._subscribe=e}subscribe(e,r,a){return this._subscribe(e&&typeof e!="function"?e:{next:e,error:r,complete:a})}[U6](){return this}}function m3(t,e){return It(e).forEach(r=>{Hc(t[r]||(t[r]=new cn),e[r])}),t}function I6(t){let e,r=!1;const a=new _6(n=>{const i=_h(t);let l=!1,s={},o={};const d={get closed(){return l},unsubscribe:()=>{l=!0,pi.storagemutated.unsubscribe(A)}};n.start&&n.start(d);let u=!1,c=!1;function p(){return It(o).some(h=>s[h]&&T6(s[h],o[h]))}const A=h=>{m3(s,h),p()&&m()},m=()=>{if(u||l)return;s={};const h={},C=function(w){i&&Ms();const b=()=>di(t,{subscr:w,trans:null}),f=Ke.trans?xs(Ke.transless,b):b();return i&&f.then(Qn,Qn),f}(h);c||(pi(bd,A),c=!0),u=!0,Promise.resolve(C).then(w=>{r=!0,e=w,u=!1,l||(p()?m():(s={},o=h,n.next&&n.next(w)))},w=>{u=!1,r=!1,n.error&&n.error(w),d.unsubscribe()})};return m(),d});return a.hasValue=()=>r,a.getValue=()=>e,a}let Dg;try{Dg={indexedDB:bt.indexedDB||bt.mozIndexedDB||bt.webkitIndexedDB||bt.msIndexedDB,IDBKeyRange:bt.IDBKeyRange||bt.webkitIDBKeyRange}}catch{Dg={indexedDB:null,IDBKeyRange:null}}const Si=ml;function Pp(t){let e=Bn;try{Bn=!0,pi.storagemutated.fire(t)}finally{Bn=e}}Gs(Si,{...Ip,delete:t=>new Si(t,{addons:[]}).delete(),exists:t=>new Si(t,{addons:[]}).open().then(e=>(e.close(),!0)).catch("NoSuchDatabaseError",()=>!1),getDatabaseNames(t){try{return function({indexedDB:e,IDBKeyRange:r}){return zh(e)?Promise.resolve(e.databases()).then(a=>a.map(n=>n.name).filter(n=>n!==$0)):Ph(e,r).toCollection().primaryKeys()}(Si.dependencies).then(t)}catch{return jt(new ye.MissingAPI)}},defineClass:()=>function(t){Rr(this,t)},ignoreTransaction:t=>Ke.trans?xs(Ke.transless,t):t(),vip:Ug,async:function(t){return function(){try{var e=_g(t.apply(this,arguments));return e&&typeof e.then=="function"?e:Ae.resolve(e)}catch(r){return jt(r)}}},spawn:function(t,e,r){try{var a=_g(t.apply(r,e||[]));return a&&typeof a.then=="function"?a:Ae.resolve(a)}catch(n){return jt(n)}},currentTransaction:{get:()=>Ke.trans||null},waitFor:function(t,e){const r=Ae.resolve(typeof t=="function"?Si.ignoreTransaction(t):t).timeout(e||6e4);return Ke.trans?Ke.trans.waitFor(r):r},Promise:Ae,debug:{get:()=>Da,set:t=>{Df(t,t==="dexie"?()=>!0:n3)}},derive:ws,extend:Rr,props:Gs,override:Lf,Events:ad,on:pi,liveQuery:I6,extendObservabilitySet:m3,getByKeyPath:Kn,setByKeyPath:ha,delByKeyPath:function(t,e){typeof e=="string"?ha(t,e,void 0):"length"in e&&[].map.call(e,function(r){ha(t,r,void 0)})},shallowClone:Uf,deepClone:tu,getObjectDiff:jh,cmp:Fr,asap:Tf,minKey:Xg,addons:[],connections:rd,errnames:Dh,dependencies:Dg,semVer:tw,version:tw.split(".").map(t=>parseInt(t)).reduce((t,e,r)=>t+e/Math.pow(10,2*r))}),Si.maxKey=Kd(Si.dependencies.IDBKeyRange),typeof dispatchEvent<"u"&&typeof addEventListener<"u"&&(pi(bd,t=>{if(!Bn){let e;q0?(e=document.createEvent("CustomEvent"),e.initCustomEvent(Pn,!0,!0,t)):e=new CustomEvent(Pn,{detail:t}),Bn=!0,dispatchEvent(e),Bn=!1}}),addEventListener(Pn,({detail:t})=>{Bn||Pp(t)}));let Bn=!1;if(typeof BroadcastChannel<"u"){const t=new BroadcastChannel(Pn);typeof t.unref=="function"&&t.unref(),pi(bd,e=>{Bn||t.postMessage(e)}),t.onmessage=e=>{e.data&&Pp(e.data)}}else if(typeof self<"u"&&typeof navigator<"u"){pi(bd,e=>{try{Bn||(typeof localStorage<"u"&&localStorage.setItem(Pn,JSON.stringify({trig:Math.random(),changedParts:e})),typeof self.clients=="object"&&[...self.clients.matchAll({includeUncontrolled:!0})].forEach(r=>r.postMessage({type:Pn,changedParts:e})))}catch{}}),typeof addEventListener<"u"&&addEventListener("storage",e=>{if(e.key===Pn){const r=JSON.parse(e.newValue);r&&Pp(r.changedParts)}});const t=self.document&&navigator.serviceWorker;t&&t.addEventListener("message",function({data:e}){e&&e.type===Pn&&Pp(e.changedParts)})}Ae.rejectionMapper=function(t,e){if(!t||t instanceof bs||t instanceof TypeError||t instanceof SyntaxError||!t.name||!j4[t.name])return t;var r=new j4[t.name](e||t.message,t);return"stack"in t&&bn(r,"stack",{get:function(){return this.inner.stack}}),r},Df(Da,n3);const g3={arabic:"ar",armenian:"am",bulgarian:"bg",danish:"dk",dutch:"nl",english:"en",finnish:"fi",french:"fr",german:"de",greek:"gr",hungarian:"hu",indian:"in",indonesian:"id",irish:"ie",italian:"it",lithuanian:"lt",nepali:"np",norwegian:"no",portuguese:"pt",romanian:"ro",russian:"ru",serbian:"rs",slovenian:"ru",spanish:"es",swedish:"se",tamil:"ta",turkish:"tr",ukrainian:"uk",sanskrit:"sk"},D6={dutch:/[^A-Za-zàèéìòóù0-9_'-]+/gim,english:/[^A-Za-zàèéìòóù0-9_'-]+/gim,french:/[^a-z0-9äâàéèëêïîöôùüûœç-]+/gim,italian:/[^A-Za-zàèéìòóù0-9_'-]+/gim,norwegian:/[^a-z0-9_æøåÆØÅäÄöÖüÜ]+/gim,portuguese:/[^a-z0-9à-úÀ-Ú]/gim,russian:/[^a-z0-9а-яА-ЯёЁ]+/gim,spanish:/[^a-z0-9A-Zá-úÁ-ÚñÑüÜ]+/gim,swedish:/[^a-z0-9_åÅäÄöÖüÜ-]+/gim,german:/[^a-z0-9A-ZäöüÄÖÜß]+/gim,finnish:/[^a-z0-9äöÄÖ]+/gim,danish:/[^a-z0-9æøåÆØÅ]+/gim,hungarian:/[^a-z0-9áéíóöőúüűÁÉÍÓÖŐÚÜŰ]+/gim,romanian:/[^a-z0-9ăâîșțĂÂÎȘȚ]+/gim,serbian:/[^a-z0-9čćžšđČĆŽŠĐ]+/gim,turkish:/[^a-z0-9çÇğĞıİöÖşŞüÜ]+/gim,lithuanian:/[^a-z0-9ąčęėįšųūžĄČĘĖĮŠŲŪŽ]+/gim,arabic:/[^a-z0-9أ-ي]+/gim,nepali:/[^a-z0-9अ-ह]+/gim,irish:/[^a-z0-9áéíóúÁÉÍÓÚ]+/gim,indian:/[^a-z0-9अ-ह]+/gim,armenian:/[^a-z0-9ա-ֆ]+/gim,greek:/[^a-z0-9α-ωά-ώ]+/gim,indonesian:/[^a-z0-9]+/gim,ukrainian:/[^a-z0-9а-яА-ЯіїєІЇЄ]+/gim,slovenian:/[^a-z0-9螚ȎŠ]+/gim,bulgarian:/[^a-z0-9а-яА-Я]+/gim,tamil:/[^a-z0-9அ-ஹ]+/gim,sanskrit:/[^a-z0-9A-Zāīūṛḷṃṁḥśṣṭḍṇṅñḻḹṝ]+/gim},$h=Object.keys(g3);function M6(t){return t!==void 0&&$h.includes(t)?g3[t]:void 0}const x6=Date.now().toString().slice(5);let J6=0;const dw=BigInt(1e3),uw=BigInt(1e6),pw=BigInt(1e9),mm=65535;function _t(t,e){if(e.length<mm)Array.prototype.push.apply(t,e);else{const r=e.length;for(let a=0;a<r;a+=mm)Array.prototype.push.apply(t,e.slice(a,a+mm))}}function O6(t,...e){return t.replace(/%(?:(?<position>\d+)\$)?(?<width>-?\d*\.?\d*)(?<type>[dfs])/g,function(...r){const a=r[r.length-1],{width:n,type:i,position:l}=a,s=l?e[Number.parseInt(l)-1]:e.shift(),o=n===""?0:Number.parseInt(n);switch(i){case"d":return s.toString().padStart(o,"0");case"f":{let d=s;const[u,c]=n.split(".").map(p=>Number.parseFloat(p));return typeof c=="number"&&c>=0&&(d=d.toFixed(c)),typeof u=="number"&&u>=0?d.toString().padStart(o,"0"):d.toString()}case"s":return o<0?s.toString().padEnd(-o," "):s.toString().padStart(o," ");default:return s}})}function P6(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function z6(){return typeof process<"u"&&process.release&&process.release.name==="node"}function cw(){return BigInt(Math.floor(performance.now()*1e6))}async function eB(t){return typeof t=="number"&&(t=BigInt(t)),t<dw?`${t}ns`:t<uw?`${t/dw}μs`:t<pw?`${t/uw}ms`:`${t/pw}s`}async function Ql(){var t;return P6()?cw():z6()||typeof process<"u"&&typeof(process==null||(t=process.hrtime)===null||t===void 0?void 0:t.bigint)=="function"?process.hrtime.bigint():typeof performance<"u"?cw():BigInt(0)}async function A3(){return`${x6}-${J6++}`}function Vc(t,e){return Object.hasOwn===void 0?Object.prototype.hasOwnProperty.call(t,e)?t[e]:void 0:Object.hasOwn(t,e)?t[e]:void 0}function j6(t,e){return e[1]===t[1]?t[0]-e[0]:e[1]-t[1]}function tB(t){if(t.length===0)return[];if(t.length===1)return t[0];for(let r=1;r<t.length;r++)if(t[r].length<t[0].length){const a=t[0];t[0]=t[r],t[r]=a}const e=new Map;for(const r of t[0])e.set(r,1);for(let r=1;r<t.length;r++){let a=0;for(const n of t[r]){const i=e.get(n);i===r&&(e.set(n,i+1),a++)}if(a===0)return[]}return t[0].filter(r=>{const a=e.get(r);return a!==void 0&&e.set(r,0),a===t.length})}async function h3(t,e){const r={},a=e.length;for(let n=0;n<a;n++){const i=e[n],l=i.split(".");let s=t;const o=l.length;for(let d=0;d<o;d++)if(s=s[l[d]],typeof s=="object"){if(s!==null&&"lat"in s&&"lon"in s&&typeof s.lat=="number"&&typeof s.lon=="number"){s=r[i]=s;break}else if(!Array.isArray(s)&&s!==null&&d===o-1){s=void 0;break}}else if((s===null||typeof s!="object")&&d<o-1){s=void 0;break}typeof s<"u"&&(r[i]=s)}return r}async function rB(t,e){return(await h3(t,[e]))[e]}const q6={cm:.01,m:1,km:1e3,ft:.3048,yd:.9144,mi:1609.344};function $6(t,e){const r=q6[e];if(r===void 0)throw new Error(Ue("INVALID_DISTANCE_SUFFIX",t).message);return t*r}function B3(t,e){t.hits=t.hits.map(r=>({...r,document:{...r.document,...e.reduce((a,n)=>{const i=n.split("."),l=i.pop();let s=a;for(const o of i)s[o]=s[o]??{},s=s[o];return s[l]=null,a},r.document)}}))}const e8=$h.join(`
- `),t8={NO_LANGUAGE_WITH_CUSTOM_TOKENIZER:"Do not pass the language option to create when using a custom tokenizer.",LANGUAGE_NOT_SUPPORTED:`Language "%s" is not supported.
Supported languages are:
- ${e8}`,INVALID_STEMMER_FUNCTION_TYPE:"config.stemmer property must be a function.",MISSING_STEMMER:'As of version 1.0.0 @orama/orama does not ship non English stemmers by default. To solve this, please explicitly import and specify the "%s" stemmer from the package @orama/stemmers. See https://docs.oramasearch.com/open-source/text-analysis/stemming for more information.',CUSTOM_STOP_WORDS_MUST_BE_FUNCTION_OR_ARRAY:"Custom stop words array must only contain strings.",UNSUPPORTED_COMPONENT:'Unsupported component "%s".',COMPONENT_MUST_BE_FUNCTION:'The component "%s" must be a function.',COMPONENT_MUST_BE_FUNCTION_OR_ARRAY_FUNCTIONS:'The component "%s" must be a function or an array of functions.',INVALID_SCHEMA_TYPE:'Unsupported schema type "%s" at "%s". Expected "string", "boolean" or "number" or array of them.',DOCUMENT_ID_MUST_BE_STRING:'Document id must be of type "string". Got "%s" instead.',DOCUMENT_ALREADY_EXISTS:'A document with id "%s" already exists.',DOCUMENT_DOES_NOT_EXIST:'A document with id "%s" does not exists.',MISSING_DOCUMENT_PROPERTY:'Missing searchable property "%s".',INVALID_DOCUMENT_PROPERTY:'Invalid document property "%s": expected "%s", got "%s"',UNKNOWN_INDEX:'Invalid property name "%s". Expected a wildcard string ("*") or array containing one of the following properties: %s',INVALID_BOOST_VALUE:"Boost value must be a number greater than, or less than 0.",INVALID_FILTER_OPERATION:"You can only use one operation per filter, you requested %d.",SCHEMA_VALIDATION_FAILURE:'Cannot insert document due schema validation failure on "%s" property.',INVALID_SORT_SCHEMA_TYPE:'Unsupported sort schema type "%s" at "%s". Expected "string" or "number".',CANNOT_SORT_BY_ARRAY:'Cannot configure sort for "%s" because it is an array (%s).',UNABLE_TO_SORT_ON_UNKNOWN_FIELD:'Unable to sort on unknown field "%s". Allowed fields: %s',SORT_DISABLED:"Sort is disabled. Please read the documentation at https://docs.oramasearch for more information.",UNKNOWN_GROUP_BY_PROPERTY:'Unknown groupBy property "%s".',INVALID_GROUP_BY_PROPERTY:'Invalid groupBy property "%s". Allowed types: "%s", but given "%s".',UNKNOWN_FILTER_PROPERTY:'Unknown filter property "%s".',INVALID_VECTOR_SIZE:'Vector size must be a number greater than 0. Got "%s" instead.',INVALID_VECTOR_VALUE:'Vector value must be a number greater than 0. Got "%s" instead.',INVALID_INPUT_VECTOR:`Property "%s" was declared as a %s-dimensional vector, but got a %s-dimensional vector instead.
Input vectors must be of the size declared in the schema, as calculating similarity between vectors of different sizes can lead to unexpected results.`,WRONG_SEARCH_PROPERTY_TYPE:'Property "%s" is not searchable. Only "string" properties are searchable.',FACET_NOT_SUPPORTED:`Facet doens't support the type "%s".`,INVALID_DISTANCE_SUFFIX:'Invalid distance suffix "%s". Valid suffixes are: cm, m, km, mi, yd, ft.',INVALID_SEARCH_MODE:'Invalid search mode "%s". Valid modes are: "fulltext", "vector", "hybrid".',MISSING_VECTOR_AND_SECURE_PROXY:"No vector was provided and no secure proxy was configured. Please provide a vector or configure an Orama Secure Proxy to perform hybrid search.",MISSING_TERM:'"term" is a required parameter when performing hybrid search. Please provide a search term.',INVALID_VECTOR_INPUT:'Invalid "vector" property. Expected an object with "value" and "property" properties, but got "%s" instead.',PLUGIN_CRASHED:"A plugin crashed during initialization. Please check the error message for more information:"};function Ue(t,...e){const r=new Error(O6(t8[t]??`Unsupported Orama Error code: ${t}`,...e));return r.code=t,"captureStackTrace"in Error.prototype&&Error.captureStackTrace(r),r}async function r8(t){return{raw:Number(t),formatted:await eB(t)}}async function a8(t){if(t.id){if(typeof t.id!="string")throw Ue("DOCUMENT_ID_MUST_BE_STRING",typeof t.id);return t.id}return await A3()}async function C3(t,e){for(const[r,a]of Object.entries(e)){const n=t[r];if(!(typeof n>"u")&&!(a==="geopoint"&&typeof n=="object"&&typeof n.lon=="number"&&typeof n.lat=="number")&&!(a==="enum"&&(typeof n=="string"||typeof n=="number"))){if(a==="enum[]"&&Array.isArray(n)){const i=n.length;for(let l=0;l<i;l++)if(typeof n[l]!="string"&&typeof n[l]!="number")return r+"."+l;continue}if(Js(a)){const i=b3(a);if(!Array.isArray(n)||n.length!==i)throw Ue("INVALID_INPUT_VECTOR",r,i,n.length);continue}if(e1(a)){if(!Array.isArray(n))return r;const i=w3(a),l=n.length;for(let s=0;s<l;s++)if(typeof n[s]!==i)return r+"."+s;continue}if(typeof a=="object"){if(!n||typeof n!="object")return r;const i=await C3(n,a);if(i)return r+"."+i;continue}if(typeof n!==a)return r}}}const n8={string:!1,number:!1,boolean:!1,enum:!1,geopoint:!1,"string[]":!0,"number[]":!0,"boolean[]":!0,"enum[]":!0},i8={"string[]":"string","number[]":"number","boolean[]":"boolean","enum[]":"enum"};function l8(t){return t==="geopoint"}function Js(t){return typeof t=="string"&&/^vector\[\d+\]$/.test(t)}function e1(t){return typeof t=="string"&&n8[t]}function w3(t){return i8[t]}function b3(t){const e=Number(t.slice(7,-1));switch(!0){case isNaN(e):throw Ue("INVALID_VECTOR_VALUE",t);case e<=0:throw Ue("INVALID_VECTOR_SIZE",t);default:return e}}function s8(){return{idToInternalId:new Map,internalIdToId:[],save:o8,load:d8}}function o8(t){return{internalIdToId:t.internalIdToId}}function d8(t,e){const{internalIdToId:r}=e;t.internalDocumentIDStore.idToInternalId.clear(),t.internalDocumentIDStore.internalIdToId=[];const a=r.length;for(let n=0;n<a;n++){const i=r[n];t.internalDocumentIDStore.idToInternalId.set(i,n+1),t.internalDocumentIDStore.internalIdToId.push(i)}}function Dt(t,e){if(typeof e=="string"){const r=t.idToInternalId.get(e);if(r)return r;const a=t.idToInternalId.size+1;return t.idToInternalId.set(e,a),t.internalIdToId.push(e),a}return e>t.internalIdToId.length?Dt(t,e.toString()):e}function Os(t,e){if(t.internalIdToId.length<e)throw new Error(`Invalid internalId ${e}`);return t.internalIdToId[e-1]}async function u8(t,e){return{sharedInternalDocumentStore:e,docs:{},count:0}}async function p8(t,e){const r=Dt(t.sharedInternalDocumentStore,e);return t.docs[r]}async function c8(t,e){const r=e.length,a=Array.from({length:r});for(let n=0;n<r;n++){const i=Dt(t.sharedInternalDocumentStore,e[n]);a[n]=t.docs[i]}return a}async function m8(t){return t.docs}async function g8(t,e,r){const a=Dt(t.sharedInternalDocumentStore,e);return typeof t.docs[a]<"u"?!1:(t.docs[a]=r,t.count++,!0)}async function A8(t,e){const r=Dt(t.sharedInternalDocumentStore,e);return typeof t.docs[r]>"u"?!1:(delete t.docs[r],t.count--,!0)}async function h8(t){return t.count}async function B8(t,e){const r=e;return{docs:r.docs,count:r.count,sharedInternalDocumentStore:t}}async function C8(t){return{docs:t.docs,count:t.count}}async function w8(){return{create:u8,get:p8,getMultiple:c8,getAll:m8,store:g8,remove:A8,count:h8,load:B8,save:C8}}const b8=["beforeInsert","afterInsert","beforeRemove","afterRemove","beforeUpdate","afterUpdate","beforeSearch","afterSearch","beforeInsertMultiple","afterInsertMultiple","beforeRemoveMultiple","afterRemoveMultiple","beforeUpdateMultiple","afterUpdateMultiple","beforeLoad","afterLoad","afterCreate"];async function K8(t,e){var r;const a=[],n=(r=t.plugins)===null||r===void 0?void 0:r.length;if(!n)return a;for(let i=0;i<n;i++)try{const l=await t.plugins[i];typeof l[e]=="function"&&a.push(l[e])}catch(l){throw console.error("Caught error in getAllPluginsByHook:",l),Ue("PLUGIN_CRASHED")}return a}const f8=["tokenizer","index","documentsStore","sorter"],mw=["validateSchema","getDocumentIndexId","getDocumentProperties","formatElapsedTime"];async function Yc(t,e,r,a){const n=t.length;for(let i=0;i<n;i++)await t[i](e,r,a)}async function Nc(t,e,r){const a=t.length;for(let n=0;n<a;n++)await t[n](e,r)}async function aB(t,e,r,a,n){const i=t.length;for(let l=0;l<i;l++)await t[l](e,r,a,n)}async function nB(t,e,r,a){const n=t.length;for(let i=0;i<n;i++)await t[i](e,r,a)}async function Q8(t,e){const r=t.length;for(let a=0;a<r;a++)await t[a](e)}function gm(t){const e=t.r;return t.r=e.l,e.l=t,t.h=Math.max(Or(t.l),Or(t.r))+1,e.h=Math.max(Or(e.l),Or(e.r))+1,e}function Am(t){const e=t.l;return t.l=e.r,e.r=t,t.h=Math.max(Or(t.l),Or(t.r))+1,e.h=Math.max(Or(e.l),Or(e.r))+1,e}function W8(t,e,r){const a=[];function n(i){i!==null&&(e<i.k&&n(i.l),i.k>=e&&i.k<=r&&_t(a,i.v),r>i.k&&n(i.r))}return n(t.root),a}function gw(t,e,r=!1){const a=[];if(t===null)return a;const n=[t.root];for(;n.length>0;){const i=n.pop();i&&(r&&i.k>=e&&_t(a,i.v),!r&&i.k>e&&_t(a,i.v),n.push(i.r),n.push(i.l))}return a}function Aw(t,e,r=!1){const a=[];if(t===null)return a;const n=[t.root];for(;n.length>0;){const i=n.pop();i&&(r&&i.k<=e&&_t(a,i.v),!r&&i.k<e&&_t(a,i.v),n.push(i.r),n.push(i.l))}return a}function K3(t,e){for(;t!==null;)if(e<t.k)t=t.l;else if(e>t.k)t=t.r;else return t;return null}function v8(t,e){return{root:{k:t,v:e,l:null,r:null,h:0}}}function F8(t,e,r){function a(n,i,l){if(n===null)return{k:i,v:l,l:null,r:null,h:0};if(i<n.k)n.l=a(n.l,i,l);else if(i>n.k)n.r=a(n.r,i,l);else{for(const o of l)n.v.push(o);return n}n.h=1+Math.max(Or(n.l),Or(n.r));const s=Or(n.l)-Or(n.r);return s>1&&i<n.l.k?Am(n):s<-1&&i>n.r.k?gm(n):s>1&&i>n.l.k?(n.l=gm(n.l),Am(n)):s<-1&&i<n.r.k?(n.r=Am(n.r),gm(n)):n}t.root=a(t.root,e,r)}function Or(t){return t!==null?t.h:-1}function y8(t,e){const r=K3(t.root,e);return r===null?null:r.v}function R8(t,e){if(t===null||t.root===null)return;let r=t.root,a=null;for(;r!=null&&r.k!==e;)a=r,e<r.k?r=r.l:r=r.r;if(r===null)return;(()=>{if(r.l===null&&r.r===null)a===null?t.root=null:a.l===r?a.l=null:a.r=null;else if(r.l!=null&&r.r!=null){let i=r.r,l=r;for(;i.l!=null;)l=i,i=i.l;r.k=i.k,l===r?l.r=i.r:l.l=i.r}else{const i=r.l!=null?r.l:r.r;a===null?t.root=i:a.l===r?a.l=i:a.r=i}})()}function E8(t,e,r){const a=K3(t.root,r);if(a){if(a.v.length===1){R8(t,r);return}a.v.splice(a.v.indexOf(e),1)}}function G8(){return{numberToDocumentId:new Map}}function S8(t,e,r){return t.numberToDocumentId.has(e)?(t.numberToDocumentId.get(e).push(r),t):(t.numberToDocumentId.set(e,[r]),t)}function Z8(t,e,r){var a,n;t==null||t.numberToDocumentId.set(r,((a=t==null?void 0:t.numberToDocumentId.get(r))===null||a===void 0?void 0:a.filter(i=>i!==e))??[]),((n=t==null?void 0:t.numberToDocumentId.get(r))===null||n===void 0?void 0:n.length)===0&&(t==null||t.numberToDocumentId.delete(r))}function X8(t,e){const r=Object.keys(e);if(r.length!==1)throw new Error("Invalid operation");const a=r[0];switch(a){case"eq":{const n=e[a];return t.numberToDocumentId.get(n)??[]}case"in":{const n=e[a],i=[];for(const l of n){const s=t.numberToDocumentId.get(l);s!=null&&_t(i,s)}return i}case"nin":{const n=e[a],i=[],l=t.numberToDocumentId.keys();for(const s of l){if(n.includes(s))continue;const o=t.numberToDocumentId.get(s);o!=null&&_t(i,o)}return i}}throw new Error("Invalid operation")}function H8(t,e){const r=Object.keys(e);if(r.length!==1)throw new Error("Invalid operation");const a=r[0];switch(a){case"containsAll":{const i=e[a].map(l=>t.numberToDocumentId.get(l)??[]);return tB(i)}}throw new Error("Invalid operation")}function V8(t,e,r){if(t===e)return 0;const a=t;t.length>e.length&&(t=e,e=a);let n=t.length,i=e.length,l=0;for(;l<n&&t.charCodeAt(l)===e.charCodeAt(l);)l++;if(l===n)return 0;for(;n>0&&t.charCodeAt(~-n)===e.charCodeAt(~-i);)n--,i--;if(!n)return i>r?-1:i;if(n-=l,i-=l,n<=r&&i<=r)return n>i?n:i;const s=i-n;if(r>i)r=i;else if(s>r)return-1;let o=0;const d=[],u=[];for(;o<r;)u[o]=e.charCodeAt(l+o),d[o]=++o;for(;o<i;)u[o]=e.charCodeAt(l+o),d[o++]=r+1;const c=r-s,p=r<i;let A=0,m=r,h=0,C=0,w=0,b=0,f=0;for(o=0;o<n;o++){for(C=o,h=o+1,b=t.charCodeAt(l+o),A+=o>c?1:0,m+=m<i?1:0,f=A;f<m;f++)w=h,h=C,C=d[f],b!==u[f]&&(C<h&&(h=C),w<h&&(h=w),h++),d[f]=h;if(p&&d[o+s]>r)return-1}return h<=r?h:-1}function f3(t,e,r){const a=V8(t,e,r);return{distance:a,isBounded:a>=0}}class Y8{constructor(e,r,a){Ze(this,"c",{});Ze(this,"d",[]);Ze(this,"w","");this.k=e,this.s=r,this.e=a}toJSON(){return{w:this.w,s:this.s,c:this.c,d:this.d,e:this.e}}}function Jl(t,e){t.w=e.w+t.s}function pp(t,e){t.d.push(e)}function N8(t,e){const r=t.d.indexOf(e);return r===-1?!1:(t.d.splice(r,1),!0)}function iB(t,e,r,a,n){if(t.e){const{w:i,d:l}=t;if(a&&i!==r)return{};if(Vc(e,i)==null&&(n?Math.abs(r.length-i.length)<=n&&f3(r,i,n).isBounded&&(e[i]=[]):e[i]=[]),Vc(e,i)!=null&&l.length>0){const s=new Set(e[i]),o=l.length;for(let d=0;d<o;d++)s.add(l[d]);e[i]=Array.from(s)}}for(const i of Object.keys(t.c))iB(t.c[i],e,r,a,n);return e}function Q3(t,e){let r="";const a=Math.min(t.length,e.length);for(let n=0;n<a;n++){if(t[n]!==e[n])return r;r+=t[n]}return r}function cs(t=!1,e="",r=""){return new Y8(r,e,t)}function L8(t,e,r){const a=e.length;for(let n=0;n<a;n++){const i=e[n],l=e.substring(n),s=t.c[i];if(s){const o=s.s,d=o.length,u=Q3(o,l),c=u.length;if(o===l){pp(s,r),s.e=!0;return}const p=o[c];if(c<d&&c===l.length){const A=cs(!0,l,i);A.c[p]=s;const m=A.c[p];m.s=o.substring(c),m.k=p,t.c[i]=A,Jl(A,t),Jl(m,A),pp(A,r);return}if(c<d&&c<l.length){const A=cs(!1,u,i);A.c[p]=s,t.c[i]=A;const m=A.c[p];m.s=o.substring(c),m.k=p;const h=l[c],C=cs(!0,e.substring(n+c),h);pp(C,r),A.c[h]=C,Jl(A,t),Jl(C,A),Jl(m,A);return}n+=d-1,t=s}else{const o=cs(!0,l,i);pp(o,r),t.c[i]=o,Jl(o,t);return}}}function Vo(t,e,r,a,n,i){if(!(a<0)){if(t.w.startsWith(e)){iB(t,i,e,!1,0);return}if(t.e){const{w:l,d:s}=t;if(l&&(f3(e,l,n).isBounded&&(i[l]=[]),Vc(i,l)!=null&&s.length>0)){const o=new Set(i[l]),d=s.length;for(let u=0;u<d;u++)o.add(s[u]);i[l]=Array.from(o)}}if(!(r>=e.length)){e[r]in t.c&&Vo(t.c[e[r]],e,r+1,a,n,i),Vo(t,e,r+1,a-1,n,i);for(const l in t.c)Vo(t.c[l],e,r,a-1,n,i);for(const l in t.c)l!==e[r]&&Vo(t.c[l],e,r+1,a-1,n,i)}}}function W3(t,{term:e,exact:r,tolerance:a}){if(a&&!r){const n={};return a=a||0,Vo(t,e,0,a||0,a,n),n}else{const n=e.length;for(let l=0;l<n;l++){const s=e[l];if(s in t.c){const o=t.c[s],d=o.s,u=e.substring(l),p=Q3(d,u).length;if(p!==d.length&&p!==u.length){if(a)break;return{}}l+=o.s.length-1,t=o}else return{}}const i={};return iB(t,i,e,r,a),i}}function T8(t,e,r,a=!0){if(!e)return!0;const n=e.length;for(let i=0;i<n;i++){const l=e[i];if(l in t.c){const s=t.c[l];i+=s.s.length-1,t=s,a&&t.w!==e||N8(t,r)}else return!1}return!0}const v3=2,k8=6371e3;function U8(){return{root:null}}function _8(t,e,r){const a={point:e,docIDs:r};if(t.root==null){t.root=a;return}let n=t.root,i=0;for(;n!==null;){if(n.point.lon===e.lon&&n.point.lat===e.lat){const s=n.docIDs??[];n.docIDs=Array.from(new Set([...s,...r||[]]));return}if(i%v3===0)if(e.lon<n.point.lon){if(n.left==null){n.left=a;return}n=n.left}else{if(n.right==null){n.right=a;return}n=n.right}else if(e.lat<n.point.lat){if(n.left==null){n.left=a;return}n=n.left}else{if(n.right==null){n.right=a;return}n=n.right}i++}}function I8(t,e,r){let a=t.root,n=0,i=null,l=null;for(;a!==null;){if((a==null?void 0:a.point.lon)===e.lon&&a.point.lat===e.lat){var s;const u=(s=a.docIDs)===null||s===void 0?void 0:s.indexOf(r);if(u!==void 0&&u>-1){var o;(o=a.docIDs)===null||o===void 0||o.splice(u,1),(a.docIDs==null||a.docIDs.length===0)&&(i!=null?l==="left"?i.left=a.left!==null?a.left:a.right:l==="right"&&(i.right=a.right!==null?a.right:a.left):t.root=a.left!==null?a.left:a.right);return}}const d=n%v3;i=a,d===0?e.lon<a.point.lon?(a=a==null?void 0:a.left,l="left"):(a=a==null?void 0:a.right,l="right"):e.lat<a.point.lat?(a=a==null?void 0:a.left,l="left"):(a=a==null?void 0:a.right,l="right"),n++}}function D8(t,e,r,a=!0,n="asc",i=!1){const l=i?y3:F3,s=[{node:t,depth:0}],o=[];for(;s.length>0;){const{node:d,depth:u}=s.pop();if(d===null)continue;const c=l(e,d.point);(a?c<=r:c>r)&&o.push({point:d.point,docIDs:d.docIDs??[]}),d.left!=null&&s.push({node:d.left,depth:u+1}),d.right!=null&&s.push({node:d.right,depth:u+1})}return n&&o.sort((d,u)=>{const c=l(e,d.point),p=l(e,u.point);return n.toLowerCase()==="asc"?c-p:p-c}),o}function M8(t,e,r=!0,a=null,n=!1){const i=[{node:t,depth:0}],l=[];for(;i.length>0;){const o=i.pop();if(o==null||o.node==null)continue;const{node:d,depth:u}=o,c=u+1;d.left!=null&&i.push({node:d.left,depth:c}),d.right!=null&&i.push({node:d.right,depth:c});const p=J8(e,d.point);p&&r?l.push({point:d.point,docIDs:d.docIDs??[]}):!p&&!r&&l.push({point:d.point,docIDs:d.docIDs??[]})}const s=x8(e);if(a){const o=n?y3:F3;l.sort((d,u)=>{const c=o(s,d.point),p=o(s,u.point);return a.toLowerCase()==="asc"?c-p:p-c})}return l}function x8(t){let e=0,r=0,a=0;const n=t.length;for(let l=0,s=n-1;l<n;s=l++){const o=t[l].lon,d=t[l].lat,u=t[s].lon,c=t[s].lat,p=o*c-u*d;e+=p,r+=(o+u)*p,a+=(d+c)*p}e/=2;const i=6*e;return r/=i,a/=i,{lon:r,lat:a}}function J8(t,e){let r=!1;const a=e.lon,n=e.lat,i=t.length;for(let l=0,s=i-1;l<i;s=l++){const o=t[l].lon,d=t[l].lat,u=t[s].lon,c=t[s].lat;d>n!=c>n&&a<(u-o)*(n-d)/(c-d)+o&&(r=!r)}return r}function F3(t,e){const r=Math.PI/180,a=t.lat*r,n=e.lat*r,i=(e.lat-t.lat)*r,l=(e.lon-t.lon)*r,s=Math.sin(i/2)*Math.sin(i/2)+Math.cos(a)*Math.cos(n)*Math.sin(l/2)*Math.sin(l/2),o=2*Math.atan2(Math.sqrt(s),Math.sqrt(1-s));return k8*o}function y3(t,e){const a=.0033528106647474805,n=(1-a)*6378137,i=Math.PI/180,l=t.lat*i,s=e.lat*i,o=(e.lon-t.lon)*i,d=Math.atan((1-a)*Math.tan(l)),u=Math.atan((1-a)*Math.tan(s)),c=Math.sin(d),p=Math.cos(d),A=Math.sin(u),m=Math.cos(u);let h=o,C,w=1e3,b,f,K,W,R;do{const k=Math.sin(h),_=Math.cos(h);K=Math.sqrt(m*k*(m*k)+(p*A-c*m*_)*(p*A-c*m*_)),W=c*A+p*m*_,R=Math.atan2(K,W),b=p*m*k/K,f=1-b*b;const U=W-2*c*A/f,j=a/16*f*(4+a*(4-3*f));C=h,h=o+(1-j)*a*b*(R+j*K*(U+j*W*(-1+2*U*U)))}while(Math.abs(h-C)>1e-12&&--w>0);const v=f*(6378137*6378137-n*n)/(n*n),L=1+v/16384*(4096+v*(-768+v*(320-175*v))),y=v/1024*(256+v*(-128+v*(74-47*v))),G=y*K*(W-2*c*A/f+y/4*(W*(-1+2*K*K)-y/6*R*(-3+4*K*K)*(-3+4*R*R)));return n*L*(R-G)}function R3(t,e,r=1,a){if(e===0)throw Ue("INVALID_BOOST_VALUE");const n=new Map,i=t.length;for(let w=0;w<i;w++){const b=t[w],f=b.length;for(let K=0;K<f;K++){var l;const[W,R]=b[K],v=R*e,L=(l=n.get(W))===null||l===void 0?void 0:l[0];if(L!==void 0){var s;n.set(W,[L*1.5+v,(((s=n==null?void 0:n.get(W))===null||s===void 0?void 0:s[1])||0)+1])}else n.set(W,[v,1])}}const o=[];for(const w of n.entries())o.push([w[0],w[1][0]]);const d=o.sort((w,b)=>b[1]-w[1]);if(r===1)return d;const u=d.length,c=[];for(const w of n.entries())c.push([w[0],w[1][0],w[1][1]]);const p=c.sort((w,b)=>w[2]>b[2]?-1:w[2]<b[2]?1:w[1]>b[1]?-1:w[1]<b[1]?1:0);let A;for(let w=0;w<u&&p[w][2]===a;w++)A=w;if(typeof A>"u"){if(r===0)return[];A=0}const m=p.length,h=new Array(m);for(let w=0;w<m;w++)h[w]=[p[w][0],p[w][1]];if(r===0)return h.slice(0,A+1);const C=A+Math.ceil(r*100*(u-A)/100);return h.slice(0,u+C)}function O8(t,e,r,a,n,{k:i,b:l,d:s}){return Math.log(1+(r-e+.5)/(e+.5))*(s+t*(i+1))/(t+i*(1-l+l*a/n))}function E3(t,e){let r=0;for(let a=0;a<e;a++)r+=t[a]*t[a];return Math.sqrt(r)}function G3(t,e,r,a=.8){const n=E3(t,r),i=[];for(const[l,[s,o]]of Object.entries(e)){let d=0;for(let c=0;c<r;c++)d+=t[c]*o[c];const u=d/(n*s);u>=a&&i.push([l,u])}return i.sort((l,s)=>s[1]-l[1])}async function P8(t,e,r,a,n){const i=Dt(t.sharedInternalDocumentStore,r);t.avgFieldLength[e]=((t.avgFieldLength[e]??0)*(n-1)+a.length)/n,t.fieldLengths[e][i]=a.length,t.frequencies[e][i]={}}async function z8(t,e,r,a,n){let i=0;for(const o of a)o===n&&i++;const l=Dt(t.sharedInternalDocumentStore,r),s=i/a.length;t.frequencies[e][l][n]=s,n in t.tokenOccurrences[e]||(t.tokenOccurrences[e][n]=0),t.tokenOccurrences[e][n]=(t.tokenOccurrences[e][n]??0)+1}async function j8(t,e,r,a){const n=Dt(t.sharedInternalDocumentStore,r);t.avgFieldLength[e]=(t.avgFieldLength[e]*a-t.fieldLengths[e][n])/(a-1),t.fieldLengths[e][n]=void 0,t.frequencies[e][n]=void 0}async function q8(t,e,r){t.tokenOccurrences[e][r]--}async function $8(t,e,r,a,n){const i=Array.from(n),l=e.avgFieldLength[r],s=e.fieldLengths[r],o=e.tokenOccurrences[r],d=e.frequencies[r],u=typeof o[a]=="number"?o[a]??0:0,c=[],p=i.length;for(let m=0;m<p;m++){var A;const h=Dt(e.sharedInternalDocumentStore,i[m]),C=(d==null||(A=d[h])===null||A===void 0?void 0:A[a])??0,w=O8(C,u,t.docsCount,s[h],l,t.params.relevance);c.push([h,w])}return c}async function S3(t,e,r,a,n=""){a||(a={sharedInternalDocumentStore:e,indexes:{},vectorIndexes:{},searchableProperties:[],searchablePropertiesWithTypes:{},frequencies:{},tokenOccurrences:{},avgFieldLength:{},fieldLengths:{}});for(const[i,l]of Object.entries(r)){const s=`${n}${n?".":""}${i}`;if(typeof l=="object"&&!Array.isArray(l)){S3(t,e,l,a,s);continue}if(Js(l))a.searchableProperties.push(s),a.searchablePropertiesWithTypes[s]=l,a.vectorIndexes[s]={size:b3(l),vectors:{}};else{const o=/\[/.test(l);switch(l){case"boolean":case"boolean[]":a.indexes[s]={type:"Bool",node:{true:[],false:[]},isArray:o};break;case"number":case"number[]":a.indexes[s]={type:"AVL",node:v8(0,[]),isArray:o};break;case"string":case"string[]":a.indexes[s]={type:"Radix",node:cs(),isArray:o},a.avgFieldLength[s]=0,a.frequencies[s]={},a.tokenOccurrences[s]={},a.fieldLengths[s]={};break;case"enum":case"enum[]":a.indexes[s]={type:"Flat",node:G8(),isArray:o};break;case"geopoint":a.indexes[s]={type:"BKD",node:U8(),isArray:o};break;default:throw Ue("INVALID_SCHEMA_TYPE",Array.isArray(l)?"array":l,s)}a.searchableProperties.push(s),a.searchablePropertiesWithTypes[s]=l}}return a}function eE(t,e,r,a,n,i,l){return async s=>{const o=Dt(e.sharedInternalDocumentStore,a),{type:d,node:u}=e.indexes[r];switch(d){case"Bool":{u[s?"true":"false"].push(o);break}case"AVL":{F8(u,s,[o]);break}case"Radix":{const c=await i.tokenize(s,n,r);await t.insertDocumentScoreParameters(e,r,o,c,l);for(const p of c)await t.insertTokenScoreParameters(e,r,o,c,p),L8(u,p,o);break}case"Flat":{S8(u,s,o);break}case"BKD":{_8(u,s,[o]);break}}}}async function tE(t,e,r,a,n,i,l,s,o){if(Js(i))return rE(e,r,n,a);const d=eE(t,e,r,a,l,s,o);if(!e1(i))return d(n);const u=n,c=u.length;for(let p=0;p<c;p++)await d(u[p])}function rE(t,e,r,a){r instanceof Float32Array||(r=new Float32Array(r));const n=t.vectorIndexes[e].size,i=E3(r,n);t.vectorIndexes[e].vectors[a]=[i,r]}async function hw(t,e,r,a,n,i,l,s,o){const d=Dt(e.sharedInternalDocumentStore,a);if(Js(i))return delete e.vectorIndexes[r].vectors[a],!0;const{type:u,node:c}=e.indexes[r];switch(u){case"AVL":return E8(c,d,n),!0;case"Bool":{const A=c[n?"true":"false"].indexOf(d);return c[n?"true":"false"].splice(A,1),!0}case"Radix":{const p=await s.tokenize(n,l,r);await t.removeDocumentScoreParameters(e,r,a,o);for(const A of p)await t.removeTokenScoreParameters(e,r,A),T8(c,A,d);return!0}case"Flat":return Z8(c,d,n),!0;case"BKD":return I8(c,n,d),!1}}async function aE(t,e,r,a,n,i,l,s,o){if(!e1(i))return hw(t,e,r,a,n,i,l,s,o);const d=w3(i),u=n,c=u.length;for(let p=0;p<c;p++)await hw(t,e,r,a,u[p],d,l,s,o);return!0}async function nE(t,e,r,a){if(!(r in e.tokenOccurrences))return[];const{node:n,type:i}=e.indexes[r];if(i!=="Radix")throw Ue("WRONG_SEARCH_PROPERTY_TYPE",r);const{exact:l,tolerance:s}=t.params,o=W3(n,{term:a,exact:l,tolerance:s}),d=new Set;for(const u in o)if(Vc(o,u))for(const p of o[u])d.add(p);return t.index.calculateResultScores(t,e,r,a,Array.from(d))}async function iE(t,e,r){const a=Object.keys(r),n=a.reduce((l,s)=>({[s]:[],...l}),{});for(const l of a){const s=r[l];if(typeof e.indexes[l]>"u")throw Ue("UNKNOWN_FILTER_PROPERTY",l);const{node:o,type:d,isArray:u}=e.indexes[l];if(d==="Bool"){const A=o[s.toString()];_t(n[l],A);continue}if(d==="BKD"){let p;if("radius"in s)p="radius";else if("polygon"in s)p="polygon";else throw new Error(`Invalid operation ${s}`);if(p==="radius"){const{value:A,coordinates:m,unit:h="m",inside:C=!0,highPrecision:w=!1}=s[p],b=$6(A,h),f=D8(o.root,m,b,C,void 0,w);_t(n[l],f.map(({docIDs:K})=>K).flat())}else{const{coordinates:A,inside:m=!0,highPrecision:h=!1}=s[p],C=M8(o.root,A,m,void 0,h);_t(n[l],C.map(({docIDs:w})=>w).flat())}continue}if(d==="Radix"&&(typeof s=="string"||Array.isArray(s))){for(const p of[s].flat()){const A=await t.tokenizer.tokenize(p,t.language,l);for(const m of A){const h=W3(o,{term:m,exact:!0});_t(n[l],Object.values(h).flat())}}continue}const c=Object.keys(s);if(c.length>1)throw Ue("INVALID_FILTER_OPERATION",c.length);if(d==="Flat"){u?_t(n[l],H8(o,s)):_t(n[l],X8(o,s));continue}if(d==="AVL"){const p=c[0],A=s[p];let m=[];switch(p){case"gt":{m=gw(o,A,!1);break}case"gte":{m=gw(o,A,!0);break}case"lt":{m=Aw(o,A,!1);break}case"lte":{m=Aw(o,A,!0);break}case"eq":{m=y8(o,A)??[];break}case"between":{const[h,C]=A;m=W8(o,h,C);break}}_t(n[l],m)}}return tB(Object.values(n))}async function lE(t){return t.searchableProperties}async function sE(t){return t.searchablePropertiesWithTypes}function Z3(t){const e=cs(t.e,t.s,t.k);e.d=t.d,e.w=t.w;for(const r of Object.keys(t.c))e.c[r]=Z3(t.c[r]);return e}function oE(t){return{numberToDocumentId:new Map(t)}}function dE(t){return Array.from(t.numberToDocumentId.entries())}async function uE(t,e){const{indexes:r,vectorIndexes:a,searchableProperties:n,searchablePropertiesWithTypes:i,frequencies:l,tokenOccurrences:s,avgFieldLength:o,fieldLengths:d}=e,u={},c={};for(const p of Object.keys(r)){const{node:A,type:m,isArray:h}=r[p];switch(m){case"Radix":u[p]={type:"Radix",node:Z3(A),isArray:h};break;case"Flat":u[p]={type:"Flat",node:oE(A),isArray:h};break;default:u[p]=r[p]}}for(const p of Object.keys(a)){const A=a[p].vectors;for(const m in A)A[m]=[A[m][0],new Float32Array(A[m][1])];c[p]={size:a[p].size,vectors:A}}return{sharedInternalDocumentStore:t,indexes:u,vectorIndexes:c,searchableProperties:n,searchablePropertiesWithTypes:i,frequencies:l,tokenOccurrences:s,avgFieldLength:o,fieldLengths:d}}async function pE(t){const{indexes:e,vectorIndexes:r,searchableProperties:a,searchablePropertiesWithTypes:n,frequencies:i,tokenOccurrences:l,avgFieldLength:s,fieldLengths:o}=t,d={};for(const c of Object.keys(r)){const p=r[c].vectors;for(const A in p)p[A]=[p[A][0],Array.from(p[A][1])];d[c]={size:r[c].size,vectors:p}}const u={};for(const c of Object.keys(e)){const{type:p,node:A,isArray:m}=e[c];if(p!=="Flat"){u[c]=e[c];continue}u[c]={type:"Flat",node:dE(A),isArray:m}}return{indexes:u,vectorIndexes:d,searchableProperties:a,searchablePropertiesWithTypes:n,frequencies:i,tokenOccurrences:l,avgFieldLength:s,fieldLengths:o}}async function cE(){return{create:S3,insert:tE,remove:aE,insertDocumentScoreParameters:P8,insertTokenScoreParameters:z8,removeDocumentScoreParameters:j8,removeTokenScoreParameters:q8,calculateResultScores:$8,search:nE,searchByWhereClause:iE,getSearchableProperties:lE,getSearchablePropertiesWithTypes:sE,load:uE,save:pE}}function X3(t,e,r,a,n){const i={language:t.tokenizer.language,sharedInternalDocumentStore:e,enabled:!0,isSorted:!0,sortableProperties:[],sortablePropertiesWithTypes:{},sorts:{}};for(const[l,s]of Object.entries(r)){const o=`${n}${n?".":""}${l}`;if(!a.includes(o)){if(typeof s=="object"&&!Array.isArray(s)){const d=X3(t,e,s,a,o);_t(i.sortableProperties,d.sortableProperties),i.sorts={...i.sorts,...d.sorts},i.sortablePropertiesWithTypes={...i.sortablePropertiesWithTypes,...d.sortablePropertiesWithTypes};continue}if(!Js(s))switch(s){case"boolean":case"number":case"string":i.sortableProperties.push(o),i.sortablePropertiesWithTypes[o]=s,i.sorts[o]={docs:new Map,orderedDocsToRemove:new Map,orderedDocs:[],type:s};break;case"geopoint":case"enum":continue;case"enum[]":case"boolean[]":case"number[]":case"string[]":continue;default:throw Ue("INVALID_SORT_SCHEMA_TYPE",Array.isArray(s)?"array":s,o)}}}return i}async function mE(t,e,r,a){return(a==null?void 0:a.enabled)!==!1?X3(t,e,r,(a||{}).unsortableProperties||[],""):{disabled:!0}}async function gE(t,e,r,a){if(!t.enabled)return;t.isSorted=!1;const n=Dt(t.sharedInternalDocumentStore,r),i=t.sorts[e];i.orderedDocsToRemove.has(n)&&lB(t,e),i.docs.set(n,i.orderedDocs.length),i.orderedDocs.push([n,a])}function H3(t){if(t.isSorted||!t.enabled)return;const e=Object.keys(t.sorts);for(const r of e)CE(t,r);t.isSorted=!0}function AE(t,e,r){return e[1].localeCompare(r[1],M6(t))}function hE(t,e){return t[1]-e[1]}function BE(t,e){return e[1]?-1:1}function CE(t,e){const r=t.sorts[e];let a;switch(r.type){case"string":a=AE.bind(null,t.language);break;case"number":a=hE.bind(null);break;case"boolean":a=BE.bind(null);break}r.orderedDocs.sort(a);const n=r.orderedDocs.length;for(let i=0;i<n;i++){const l=r.orderedDocs[i][0];r.docs.set(l,i)}}function wE(t){const e=Object.keys(t.sorts);for(const r of e)lB(t,r)}function lB(t,e){const r=t.sorts[e];r.orderedDocsToRemove.size&&(r.orderedDocs=r.orderedDocs.filter(a=>!r.orderedDocsToRemove.has(a[0])),r.orderedDocsToRemove.clear())}async function bE(t,e,r){if(!t.enabled)return;const a=t.sorts[e],n=Dt(t.sharedInternalDocumentStore,r);a.docs.get(n)&&(a.docs.delete(n),a.orderedDocsToRemove.set(n,!0))}async function KE(t,e,r){if(!t.enabled)throw Ue("SORT_DISABLED");const a=r.property,n=r.order==="DESC",i=t.sorts[a];if(!i)throw Ue("UNABLE_TO_SORT_ON_UNKNOWN_FIELD",a,t.sortableProperties.join(", "));return lB(t,a),H3(t),e.sort((l,s)=>{const o=i.docs.get(Dt(t.sharedInternalDocumentStore,l[0])),d=i.docs.get(Dt(t.sharedInternalDocumentStore,s[0])),u=typeof o<"u",c=typeof d<"u";return!u&&!c?0:u?c?n?d-o:o-d:-1:1}),e}async function fE(t){return t.enabled?t.sortableProperties:[]}async function QE(t){return t.enabled?t.sortablePropertiesWithTypes:{}}async function WE(t,e){const r=e;if(!r.enabled)return{enabled:!1};const a=Object.keys(r.sorts).reduce((n,i)=>{const{docs:l,orderedDocs:s,type:o}=r.sorts[i];return n[i]={docs:new Map(Object.entries(l).map(([d,u])=>[+d,u])),orderedDocsToRemove:new Map,orderedDocs:s,type:o},n},{});return{sharedInternalDocumentStore:t,language:r.language,sortableProperties:r.sortableProperties,sortablePropertiesWithTypes:r.sortablePropertiesWithTypes,sorts:a,enabled:!0,isSorted:r.isSorted}}async function vE(t){if(!t.enabled)return{enabled:!1};wE(t),H3(t);const e=Object.keys(t.sorts).reduce((r,a)=>{const{docs:n,orderedDocs:i,type:l}=t.sorts[a];return r[a]={docs:Object.fromEntries(n.entries()),orderedDocs:i,type:l},r},{});return{language:t.language,sortableProperties:t.sortableProperties,sortablePropertiesWithTypes:t.sortablePropertiesWithTypes,sorts:e,enabled:t.enabled,isSorted:t.isSorted}}async function FE(){return{create:mE,insert:gE,remove:bE,save:vE,load:WE,sortBy:KE,getSortableProperties:fE,getSortablePropertiesWithTypes:QE}}const Bw=192,yE=383,RE=[65,65,65,65,65,65,65,67,69,69,69,69,73,73,73,73,69,78,79,79,79,79,79,null,79,85,85,85,85,89,80,115,97,97,97,97,97,97,97,99,101,101,101,101,105,105,105,105,101,110,111,111,111,111,111,null,111,117,117,117,117,121,112,121,65,97,65,97,65,97,67,99,67,99,67,99,67,99,68,100,68,100,69,101,69,101,69,101,69,101,69,101,71,103,71,103,71,103,71,103,72,104,72,104,73,105,73,105,73,105,73,105,73,105,73,105,74,106,75,107,107,76,108,76,108,76,108,76,108,76,108,78,110,78,110,78,110,110,78,110,79,111,79,111,79,111,79,111,82,114,82,114,82,114,83,115,83,115,83,115,83,115,84,116,84,116,84,116,85,117,85,117,85,117,85,117,85,117,85,117,87,119,89,121,89,90,122,90,122,90,122,115];function EE(t){return t<Bw||t>yE?t:RE[t-Bw]||t}function GE(t){const e=[];for(let r=0;r<t.length;r++)e[r]=EE(t.charCodeAt(r));return String.fromCharCode(...e)}const SE={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},ZE={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},XE="[^aeiou]",Lc="[aeiouy]",Ya=XE+"[^aeiouy]*",Qd=Lc+"[aeiou]*",hm="^("+Ya+")?"+Qd+Ya,HE="^("+Ya+")?"+Qd+Ya+"("+Qd+")?$",cp="^("+Ya+")?"+Qd+Ya+Qd+Ya,Cw="^("+Ya+")?"+Lc;function VE(t){let e,r,a,n,i,l;if(t.length<3)return t;const s=t.substring(0,1);if(s=="y"&&(t=s.toUpperCase()+t.substring(1)),a=/^(.+?)(ss|i)es$/,n=/^(.+?)([^s])s$/,a.test(t)?t=t.replace(a,"$1$2"):n.test(t)&&(t=t.replace(n,"$1$2")),a=/^(.+?)eed$/,n=/^(.+?)(ed|ing)$/,a.test(t)){const o=a.exec(t);a=new RegExp(hm),a.test(o[1])&&(a=/.$/,t=t.replace(a,""))}else n.test(t)&&(e=n.exec(t)[1],n=new RegExp(Cw),n.test(e)&&(t=e,n=/(at|bl|iz)$/,i=new RegExp("([^aeiouylsz])\\1$"),l=new RegExp("^"+Ya+Lc+"[^aeiouwxy]$"),n.test(t)?t=t+"e":i.test(t)?(a=/.$/,t=t.replace(a,"")):l.test(t)&&(t=t+"e")));if(a=/^(.+?)y$/,a.test(t)){const o=a.exec(t);e=o==null?void 0:o[1],a=new RegExp(Cw),e&&a.test(e)&&(t=e+"i")}if(a=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,a.test(t)){const o=a.exec(t);e=o==null?void 0:o[1],r=o==null?void 0:o[2],a=new RegExp(hm),e&&a.test(e)&&(t=e+SE[r])}if(a=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,a.test(t)){const o=a.exec(t);e=o==null?void 0:o[1],r=o==null?void 0:o[2],a=new RegExp(hm),e&&a.test(e)&&(t=e+ZE[r])}if(a=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,n=/^(.+?)(s|t)(ion)$/,a.test(t)){const o=a.exec(t);e=o==null?void 0:o[1],a=new RegExp(cp),e&&a.test(e)&&(t=e)}else if(n.test(t)){const o=n.exec(t);e=(o==null?void 0:o[1])??""+(o==null?void 0:o[2])??"",n=new RegExp(cp),n.test(e)&&(t=e)}if(a=/^(.+?)e$/,a.test(t)){const o=a.exec(t);e=o==null?void 0:o[1],a=new RegExp(cp),n=new RegExp(HE),i=new RegExp("^"+Ya+Lc+"[^aeiouwxy]$"),e&&(a.test(e)||n.test(e)&&!i.test(e))&&(t=e)}return a=/ll$/,n=new RegExp(cp),a.test(t)&&n.test(t)&&(a=/.$/,t=t.replace(a,"")),s=="y"&&(t=s.toLowerCase()+t.substring(1)),t}function ww(t,e){var r;const a=`${this.language}:${t}:${e}`;return this.normalizationCache.has(a)?this.normalizationCache.get(a):!((r=this.stopWords)===null||r===void 0)&&r.includes(e)?(this.normalizationCache.set(a,""),""):(this.stemmer&&!this.stemmerSkipProperties.has(t)&&(e=this.stemmer(e)),e=GE(e),this.normalizationCache.set(a,e),e)}function YE(t){for(;t[t.length-1]==="";)t.pop();for(;t[0]==="";)t.shift();return t}function bw(t,e,r){if(e&&e!==this.language)throw Ue("LANGUAGE_NOT_SUPPORTED",e);if(typeof t!="string")return[t];let a;if(r&&this.tokenizeSkipProperties.has(r))a=[this.normalizeToken.bind(this,r??"")(t)];else{const i=D6[this.language];a=t.toLowerCase().split(i).map(this.normalizeToken.bind(this,r??"")).filter(Boolean)}const n=YE(a);return this.allowDuplicates?n:Array.from(new Set(n))}async function Kw(t={}){if(!t.language)t.language="english";else if(!$h.includes(t.language))throw Ue("LANGUAGE_NOT_SUPPORTED",t.language);let e;if(t.stemming||t.stemmer&&!("stemming"in t))if(t.stemmer){if(typeof t.stemmer!="function")throw Ue("INVALID_STEMMER_FUNCTION_TYPE");e=t.stemmer}else if(t.language==="english")e=VE;else throw Ue("MISSING_STEMMER",t.language);let r;if(t.stopWords!==!1){if(r=[],Array.isArray(t.stopWords))r=t.stopWords;else if(typeof t.stopWords=="function")r=await t.stopWords(r);else if(t.stopWords)throw Ue("CUSTOM_STOP_WORDS_MUST_BE_FUNCTION_OR_ARRAY");if(!Array.isArray(r))throw Ue("CUSTOM_STOP_WORDS_MUST_BE_FUNCTION_OR_ARRAY");for(const n of r)if(typeof n!="string")throw Ue("CUSTOM_STOP_WORDS_MUST_BE_FUNCTION_OR_ARRAY")}const a={tokenize:bw,language:t.language,stemmer:e,stemmerSkipProperties:new Set(t.stemmerSkipProperties?[t.stemmerSkipProperties].flat():[]),tokenizeSkipProperties:new Set(t.tokenizeSkipProperties?[t.tokenizeSkipProperties].flat():[]),stopWords:r,allowDuplicates:!!t.allowDuplicates,normalizeToken:ww,normalizationCache:new Map};return a.tokenize=bw.bind(a),a.normalizeToken=ww,a}function NE(t){const e={formatElapsedTime:r8,getDocumentIndexId:a8,getDocumentProperties:h3,validateSchema:C3};for(const r of mw){const a=r;if(t[a]){if(typeof t[a]!="function")throw Ue("COMPONENT_MUST_BE_FUNCTION",a)}else t[a]=e[a]}for(const r of Object.keys(t))if(!f8.includes(r)&&!mw.includes(r))throw Ue("UNSUPPORTED_COMPONENT",r)}async function LE({schema:t,sort:e,language:r,components:a,id:n,plugins:i}){a||(a={}),n||(n=await A3());let l=a.tokenizer,s=a.index,o=a.documentsStore,d=a.sorter;if(l?l.tokenize?l=l:l=await Kw(l):l=await Kw({language:r??"english"}),a.tokenizer&&r)throw Ue("NO_LANGUAGE_WITH_CUSTOM_TOKENIZER");const u=s8();s||(s=await cE()),d||(d=await FE()),o||(o=await w8()),NE(a);const{getDocumentProperties:c,getDocumentIndexId:p,validateSchema:A,formatElapsedTime:m}=a,h={data:{},caches:{},schema:t,tokenizer:l,index:s,sorter:d,documentsStore:o,internalDocumentIDStore:u,getDocumentProperties:c,getDocumentIndexId:p,validateSchema:A,beforeInsert:[],afterInsert:[],beforeRemove:[],afterRemove:[],beforeUpdate:[],afterUpdate:[],beforeSearch:[],afterSearch:[],beforeInsertMultiple:[],afterInsertMultiple:[],beforeRemoveMultiple:[],afterRemoveMultiple:[],afterUpdateMultiple:[],beforeUpdateMultiple:[],afterCreate:[],formatElapsedTime:m,id:n,plugins:i,version:TE()};h.data={index:await h.index.create(h,u,t),docs:await h.documentsStore.create(h,u),sorting:await h.sorter.create(h,u,t,e)};for(const w of b8)h[w]=(h[w]??[]).concat(await K8(h,w));const C=h.afterCreate;return C&&await Q8(C,h),h}function TE(){return"2.0.18"}const Zi=Symbol("orama.insertions"),Xi=Symbol("orama.removals");var Bm;const V3=((Bm=globalThis.process)===null||Bm===void 0?void 0:Bm.emitWarning)??function(e,r){console.warn(`[WARNING] [${r.code}] ${e}`)};function kE(t){typeof t[Zi]!="number"&&(queueMicrotask(()=>{t[Zi]=void 0}),t[Zi]=0),t[Zi]>1e3?(V3("Orama's insert operation is synchronous. Please avoid inserting a large number of document in a single operation in order not to block the main thread or, in alternative, please use insertMultiple.",{code:"ORAMA0001"}),t[Zi]=-1):t[Zi]>=0&&t[Zi]++}function UE(t){typeof t[Xi]!="number"&&(queueMicrotask(()=>{t[Xi]=void 0}),t[Xi]=0),t[Xi]>1e3?(V3("Orama's remove operation is synchronous. Please avoid removing a large number of document in a single operation in order not to block the main thread, in alternative, please use updateMultiple.",{code:"ORAMA0002"}),t[Xi]=-1):t[Xi]>=0&&t[Xi]++}async function _E(t,e,r,a){const n=await t.validateSchema(e,t.schema);if(n)throw Ue("SCHEMA_VALIDATION_FAILURE",n);return ME(t,e,r,a)}const IE=new Set(["enum","enum[]"]),DE=new Set(["string","number"]);async function ME(t,e,r,a){const{index:n,docs:i}=t.data,l=await t.getDocumentIndexId(e);if(typeof l!="string")throw Ue("DOCUMENT_ID_MUST_BE_STRING",typeof l);if(!await t.documentsStore.store(i,l,e))throw Ue("DOCUMENT_ALREADY_EXISTS",l);const s=await t.documentsStore.count(i);a||await Yc(t.beforeInsert,t,l,e);const o=await t.index.getSearchableProperties(n),d=await t.index.getSearchablePropertiesWithTypes(n),u=await t.getDocumentProperties(e,o);for(const[b,f]of Object.entries(u)){if(typeof f>"u")continue;const K=typeof f,W=d[b];if(!(l8(W)&&typeof f=="object"&&typeof f.lon=="number"&&typeof f.lat=="number")&&!(Js(W)&&Array.isArray(f))&&!(e1(W)&&Array.isArray(f))&&!(IE.has(W)&&DE.has(K))&&K!==W)throw Ue("INVALID_DOCUMENT_PROPERTY",b,W,K)}for(const b of o){var c,p,A,m;const f=u[b];if(typeof f>"u")continue;const K=d[b];await((p=(c=t.index).beforeInsert)===null||p===void 0?void 0:p.call(c,t.data.index,b,l,f,K,r,t.tokenizer,s)),await t.index.insert(t.index,t.data.index,b,l,f,K,r,t.tokenizer,s),await((m=(A=t.index).afterInsert)===null||m===void 0?void 0:m.call(A,t.data.index,b,l,f,K,r,t.tokenizer,s))}const h=await t.sorter.getSortableProperties(t.data.sorting),C=await t.sorter.getSortablePropertiesWithTypes(t.data.sorting),w=await t.getDocumentProperties(e,h);for(const b of h){const f=w[b];if(typeof f>"u")continue;const K=C[b];await t.sorter.insert(t.data.sorting,b,l,f,K,r)}return a||await Yc(t.afterInsert,t,l,e),kE(t),l}async function fw(t,e,r,a,n,i){n||await Nc(t.beforeInsertMultiple,t,e);const l=e.length,s=t.schema;for(let o=0;o<l;o++){const d=await t.validateSchema(e[o],s);if(d)throw Ue("SCHEMA_VALIDATION_FAILURE",d)}return xE(t,e,r,a,n,i)}async function xE(t,e,r,a,n,i){r||(r=1e3),i??(i=0);const l=[];return await new Promise((s,o)=>{let d=0;async function u(){const c=e.slice(d*r,++d*r);if(!c.length)return s();for(const p of c)try{const A=await _E(t,p,a,n);l.push(A)}catch(A){o(A)}setTimeout(u,i)}setTimeout(u,i)}),n||await Nc(t.afterInsertMultiple,t,e),l}async function JE(t,e,r,a){let n=!0;const{index:i,docs:l}=t.data,s=await t.documentsStore.get(l,e);if(!s)return!1;const o=Os(t.internalDocumentIDStore,Dt(t.internalDocumentIDStore,e)),d=await t.documentsStore.count(l);a||await Yc(t.beforeRemove,t,o);const u=await t.index.getSearchableProperties(i),c=await t.index.getSearchablePropertiesWithTypes(i),p=await t.getDocumentProperties(s,u);for(const f of u){var A,m,h,C;const K=p[f];if(typeof K>"u")continue;const W=c[f];await((m=(A=t.index).beforeRemove)===null||m===void 0?void 0:m.call(A,t.data.index,f,o,K,W,r,t.tokenizer,d)),await t.index.remove(t.index,t.data.index,f,e,K,W,r,t.tokenizer,d)||(n=!1),await((C=(h=t.index).afterRemove)===null||C===void 0?void 0:C.call(h,t.data.index,f,o,K,W,r,t.tokenizer,d))}const w=await t.sorter.getSortableProperties(t.data.sorting),b=await t.getDocumentProperties(s,w);for(const f of w)typeof b[f]>"u"||await t.sorter.remove(t.data.sorting,f,e);return a||await Yc(t.afterRemove,t,o),await t.documentsStore.remove(t.data.docs,e),UE(t),n}async function OE(t,e,r,a,n){let i=0;r||(r=1e3);const l=n?[]:e.map(s=>Os(t.internalDocumentIDStore,Dt(t.internalDocumentIDStore,s)));return n||await Nc(t.beforeRemoveMultiple,t,l),await new Promise((s,o)=>{let d=0;async function u(){const c=e.slice(d*r,++d*r);if(!c.length)return s();for(const p of c)try{await JE(t,p,a,n)&&i++}catch(A){o(A)}setTimeout(u,0)}setTimeout(u,0)}),n||await Nc(t.afterRemoveMultiple,t,l),i}const Qw="fulltext",PE="hybrid",zE="vector";function sB(t,e){const r=new Map,a=[];for(const n of t)r.set(n,!0);for(const n of e){const[i]=n;r.has(i)&&(a.push(n),r.delete(i))}return a}function jE(t,e){return t[1]-e[1]}function qE(t,e){return e[1]-t[1]}function $E(t="desc"){return t.toLowerCase()==="asc"?jE:qE}async function oB(t,e,r){const a={},n=e.map(([d])=>d),i=await t.documentsStore.getMultiple(t.data.docs,n),l=Object.keys(r),s=await t.index.getSearchablePropertiesWithTypes(t.data.index);for(const d of l){let u;if(s[d]==="number"){const{ranges:c}=r[d],p=c.length,A=Array.from({length:p});for(let m=0;m<p;m++){const h=c[m];A[m]=[`${h.from}-${h.to}`,0]}u=Object.fromEntries(A)}a[d]={count:0,values:u??{}}}const o=i.length;for(let d=0;d<o;d++){const u=i[d];for(const c of l){const p=c.includes(".")?await rB(u,c):u[c],A=s[c],m=a[c].values;switch(A){case"number":{const h=r[c].ranges;Ww(h,m)(p);break}case"number[]":{const h=new Set,C=r[c].ranges,w=Ww(C,m,h);for(const b of p)w(b);break}case"boolean":case"enum":case"string":{vw(m,A)(p);break}case"boolean[]":case"enum[]":case"string[]":{const w=vw(m,A==="boolean[]"?"boolean":"string",new Set);for(const b of p)w(b);break}default:throw Ue("FACET_NOT_SUPPORTED",A)}}}for(const d of l){const u=a[d];if(u.count=Object.keys(u.values).length,s[d]==="string"){const c=r[d],p=$E(c.sort);u.values=Object.fromEntries(Object.entries(u.values).sort(p).slice(c.offset??0,c.limit??10))}}return a}function Ww(t,e,r){return a=>{for(const n of t){const i=`${n.from}-${n.to}`;r!=null&&r.has(i)||a>=n.from&&a<=n.to&&(e[i]===void 0?e[i]=1:(e[i]++,r==null||r.add(i)))}}}function vw(t,e,r){const a=e==="boolean"?"false":"";return n=>{const i=(n==null?void 0:n.toString())??a;r!=null&&r.has(i)||(t[i]=(t[i]??0)+1,r==null||r.add(i))}}const eG={reducer:(t,e,r,a)=>(e[a]=r,e),getInitialValue:t=>Array.from({length:t})},Fw=["string","number","boolean"];async function dB(t,e,r){const a=r.properties,n=a.length,i=await t.index.getSearchablePropertiesWithTypes(t.data.index);for(let w=0;w<n;w++){const b=a[w];if(typeof i[b]>"u")throw Ue("UNKNOWN_GROUP_BY_PROPERTY",b);if(!Fw.includes(i[b]))throw Ue("INVALID_GROUP_BY_PROPERTY",b,Fw.join(", "),i[b])}const l=e.map(([w])=>Os(t.internalDocumentIDStore,w)),s=await t.documentsStore.getMultiple(t.data.docs,l),o=s.length,d=r.maxResult||Number.MAX_SAFE_INTEGER,u=[],c={};for(let w=0;w<n;w++){const b=a[w],f={property:b,perValue:{}},K=new Set;for(let W=0;W<o;W++){const R=s[W],v=await rB(R,b);if(typeof v>"u")continue;const L=typeof v!="boolean"?v:""+v,y=f.perValue[L]??{indexes:[],count:0};y.count>=d||(y.indexes.push(W),y.count++,f.perValue[L]=y,K.add(v))}u.push(Array.from(K)),c[b]=f}const p=Y3(u),A=p.length,m=[];for(let w=0;w<A;w++){const b=p[w],f=b.length,K={values:[],indexes:[]},W=[];for(let R=0;R<f;R++){const v=b[R],L=a[R];W.push(c[L].perValue[typeof v!="boolean"?v:""+v].indexes),K.values.push(v)}K.indexes=tB(W).sort((R,v)=>R-v),K.indexes.length!==0&&m.push(K)}const h=m.length,C=Array.from({length:h});for(let w=0;w<h;w++){const b=m[w],f=r.reduce||eG,K=b.indexes.map(L=>({id:l[L],score:e[L][1],document:s[L]})),W=f.reducer.bind(null,b.values),R=f.getInitialValue(b.indexes.length),v=K.reduce(W,R);C[w]={values:b.values,result:v}}return C}function Y3(t,e=0){if(e+1===t.length)return t[e].map(i=>[i]);const r=t[e],a=Y3(t,e+1),n=[];for(const i of r)for(const l of a){const s=[i];_t(s,l),n.push(s)}return n}async function tG(t,e,r){const a=await Ql();t.beforeSearch&&await nB(t.beforeSearch,t,e,r),e.relevance=Object.assign(L3,e.relevance??{});const n=Object.keys(t.data.index.vectorIndexes),i=e.facets&&Object.keys(e.facets).length>0,{limit:l=10,offset:s=0,term:o,properties:d,threshold:u=1,distinctOn:c,includeVectors:p=!1}=e,A=e.preflight===!0,{index:m,docs:h}=t.data,C=await t.tokenizer.tokenize(o??"",r);let w=t.caches.propertiesToSearch;if(!w){const G=await t.index.getSearchablePropertiesWithTypes(m);w=await t.index.getSearchableProperties(m),w=w.filter(Z=>G[Z].startsWith("string")),t.caches.propertiesToSearch=w}if(d&&d!=="*"){for(const G of d)if(!w.includes(G))throw Ue("UNKNOWN_INDEX",G,w.join(", "));w=w.filter(G=>d.includes(G))}const b=await t1(t.tokenizer,t.index,t.documentsStore,r,e,w,C,await t.documentsStore.count(h),a),f=Object.keys(e.where??{}).length>0;let K=[];f&&(K=await t.index.searchByWhereClause(b,m,e.where));const W=C.length;if(W||d&&d.length>0){const G=w.length;for(let Z=0;Z<G;Z++){var R;const k=w[Z];if(W!==0)for(let P=0;P<W;P++){const z=C[P],Se=await t.index.search(b,m,k,z);_t(b.indexMap[k][z],Se)}else{b.indexMap[k][""]=[];const P=await t.index.search(b,m,k,"");_t(b.indexMap[k][""],P)}const _=b.indexMap[k],U=Object.values(_);b.docsIntersection[k]=R3(U,(e==null||(R=e.boost)===null||R===void 0?void 0:R[k])??1,u,W);const j=b.docsIntersection[k],O=j.length;for(let P=0;P<O;P++){const[z,Se]=j[P],he=b.uniqueDocsIDs[z];he?b.uniqueDocsIDs[z]=he+Se+.5:b.uniqueDocsIDs[z]=Se}}}else C.length===0&&o?b.uniqueDocsIDs={}:b.uniqueDocsIDs=Object.fromEntries(Object.keys(await t.documentsStore.getAll(t.data.docs)).map(G=>[G,0]));let v=Object.entries(b.uniqueDocsIDs).map(([G,Z])=>[+G,Z]);if(f&&(v=sB(K,v)),e.sortBy)if(typeof e.sortBy=="function"){const G=v.map(([_])=>_),k=(await t.documentsStore.getMultiple(t.data.docs,G)).map((_,U)=>[v[U][0],v[U][1],_]);k.sort(e.sortBy),v=k.map(([_,U])=>[_,U])}else v=await t.sorter.sortBy(t.data.sorting,v,e.sortBy).then(G=>G.map(([Z,k])=>[Dt(t.internalDocumentIDStore,Z),k]));else v=v.sort(j6);let L;A||(L=await(c?uG(t,v,s,l,c):T3(t,v,s,l)));const y={elapsed:{formatted:"",raw:0},hits:[],count:v.length};if(typeof L<"u"&&(y.hits=L.filter(Boolean),p||B3(y,n)),i){const G=await oB(t,v,e.facets);y.facets=G}return e.groupBy&&(y.groups=await dB(t,v,e.groupBy)),t.afterSearch&&await aB(t.afterSearch,t,e,r,y),y.elapsed=await t.formatElapsedTime(await Ql()-b.timeStart),y}async function rG(t,e,r="english"){const a=await Ql();t.beforeSearch&&await nB(t.beforeSearch,t,e,r);const{vector:n}=e;if(n&&(!("value"in n)||!("property"in n)))throw Ue("INVALID_VECTOR_INPUT",Object.keys(n).join(", "));const{limit:i=10,offset:l=0,includeVectors:s=!1}=e,o=t.data.index.vectorIndexes[n.property],d=o.size,u=o.vectors,c=e.facets&&Object.keys(e.facets).length>0,p=Object.keys(e.where??{}).length>0,{index:A,docs:m}=t.data;if((n==null?void 0:n.value.length)!==d)throw Ue("INVALID_INPUT_VECTOR",n==null?void 0:n.property,d,n==null?void 0:n.value.length);n instanceof Float32Array||(n.value=new Float32Array(n.value));let h=G3(n.value,u,d,e.similarity).map(([y,G])=>[Dt(t.internalDocumentIDStore,y),G]),C=t.caches.propertiesToSearch;if(!C){const y=await t.index.getSearchablePropertiesWithTypes(A);C=await t.index.getSearchableProperties(A),C=C.filter(G=>y[G].startsWith("string")),t.caches.propertiesToSearch=C}const w=[],b=await t1(t.tokenizer,t.index,t.documentsStore,r,e,C,w,await t.documentsStore.count(m),a);let f=[];p&&(f=await t.index.searchByWhereClause(b,A,e.where),h=sB(f,h));let K=[];c&&(K=await oB(t,h,e.facets));const W=Array.from({length:i});for(let y=0;y<i;y++){const G=h[y+l];if(!G)break;const Z=t.data.docs.docs[G[0]];if(Z){s||(Z[n.property]=null);const k={id:Os(t.internalDocumentIDStore,G[0]),score:G[1],document:Z};W[y]=k}}let R=[];e.groupBy&&(R=await dB(t,h,e.groupBy)),t.afterSearch&&await aB(t.afterSearch,t,e,r,h);const L=await Ql()-a;return{count:h.length,hits:W.filter(Boolean),elapsed:{raw:Number(L),formatted:await eB(L)},...K?{facets:K}:{},...R?{groups:R}:{}}}async function aG(t,e,r){const a=await Ql();t.beforeSearch&&await nB(t.beforeSearch,t,e,r);const{offset:n=0,limit:i=10,includeVectors:l=!1}=e,s=e.facets&&Object.keys(e.facets).length>0,[o,d]=await Promise.all([nG(t,e,r),iG(t,e)]),{index:u,docs:c}=t.data,p=e.hybridWeights;let A=sG(o,d,e.term??"",p);const m=await t.tokenizer.tokenize(e.term??"",r);let h=t.caches.propertiesToSearch;if(!h){const L=await t.index.getSearchablePropertiesWithTypes(u);h=await t.index.getSearchableProperties(u),h=h.filter(y=>L[y].startsWith("string")),t.caches.propertiesToSearch=h}if(e.properties&&e.properties!=="*"){for(const L of e.properties)if(!h.includes(L))throw Ue("UNKNOWN_INDEX",L,h.join(", "));h=h.filter(L=>e.properties.includes(L))}const C=await t1(t.tokenizer,t.index,t.documentsStore,r,e,h,m,await t.documentsStore.count(c),a),w=Object.keys(e.where??{}).length>0;let b=[];w&&(b=await t.index.searchByWhereClause(C,u,e.where),A=sB(b,A).slice(n,n+i));let f;s&&(f=await oB(t,A,e.facets));let K;e.groupBy&&(K=await dB(t,A,e.groupBy));const W=(await T3(t,A,n,i)).filter(Boolean);t.afterSearch&&await aB(t.afterSearch,t,e,r,W);const R=await Ql(),v={count:A.length,elapsed:{raw:Number(R-a),formatted:await eB(R-a)},hits:W,...f?{facets:f}:{},...K?{groups:K}:{}};if(!l){const L=Object.keys(t.data.index.vectorIndexes);B3(v,L)}return v}async function nG(t,e,r){const a=await Ql();e.relevance=Object.assign(L3,e.relevance??{});const{term:n="",properties:i,threshold:l=1}=e,{index:s,docs:o}=t.data,d=await t.tokenizer.tokenize(n,r);let u=t.caches.propertiesToSearch;if(!u){const h=await t.index.getSearchablePropertiesWithTypes(s);u=await t.index.getSearchableProperties(s),u=u.filter(C=>h[C].startsWith("string")),t.caches.propertiesToSearch=u}if(i&&i!=="*"){const h=new Set(u),C=new Set(i);for(const w of i)if(!h.has(w))throw Ue("UNKNOWN_INDEX",w,u.join(", "));u=u.filter(w=>C.has(w))}const c=await t1(t.tokenizer,t.index,t.documentsStore,r,e,u,d,await t.documentsStore.count(o),a),p=d.length;if(p||i&&i.length>0){const h=u.length;for(let C=0;C<h;C++){var A;const w=u[C];if(p!==0)for(let R=0;R<p;R++){const v=d[R],L=await t.index.search(c,s,w,v);_t(c.indexMap[w][v],L)}else{const R=[];c.indexMap[w][""]=R;const v=await t.index.search(c,s,w,"");_t(R,v)}const b=c.indexMap[w],f=Object.values(b);c.docsIntersection[w]=R3(f,(e==null||(A=e.boost)===null||A===void 0?void 0:A[w])??1,l,p);const K=c.docsIntersection[w],W=K.length;for(let R=0;R<W;R++){const[v,L]=K[R],y=c.uniqueDocsIDs[v];c.uniqueDocsIDs[v]=y?y+L+.5:L}}}else d.length===0&&n?c.uniqueDocsIDs={}:c.uniqueDocsIDs=Object.fromEntries(Object.keys(await t.documentsStore.getAll(t.data.docs)).map(h=>[h,0]));const m=Object.entries(c.uniqueDocsIDs).map(([h,C])=>[+h,C]).sort((h,C)=>C[1]-h[1]);return N3(m)}async function iG(t,e){const r=e.vector,a=t.data.index.vectorIndexes[r==null?void 0:r.property],n=a.size,i=a.vectors;if(r&&(!r.value||!r.property))throw Ue("INVALID_VECTOR_INPUT",Object.keys(r).join(", "));if(r.value.length!==n)throw Ue("INVALID_INPUT_VECTOR",r.property,n,r.value.length);r instanceof Float32Array||(r.value=new Float32Array(r.value));const l=G3(r.value,i,n,e.similarity).map(([s,o])=>[Dt(t.internalDocumentIDStore,s),o]);return N3(l)}function Mg([,t]){return t}function N3(t){const e=Math.max.apply(Math,t.map(Mg));return t.map(([r,a])=>[r,a/e])}function yw(t,e){return t/e}function lG(t,e){return(r,a)=>r*t+a*e}function sG(t,e,r,a){const n=Math.max.apply(Math,t.map(Mg)),i=Math.max.apply(Math,e.map(Mg)),l=a&&a.text&&a.vector,{text:s,vector:o}=l?a:oG(),d=new Map,u=t.length,c=lG(s,o);for(let A=0;A<u;A++){const[m,h]=t[A],C=yw(h,n),w=c(C,0);d.set(m,w)}const p=e.length;for(let A=0;A<p;A++){const[m,h]=e[A],C=yw(h,i),w=d.get(m)??0;d.set(m,w+c(0,C))}return[...d].sort((A,m)=>m[1]-A[1])}function oG(t){return{text:.5,vector:.5}}const L3={k:1.2,b:.75,d:.5};async function t1(t,e,r,a,n,i,l,s,o){const d={},u={};for(const c of i){const p={};for(const A of l)p[A]=[];d[c]=p,u[c]=[]}return{timeStart:o,tokenizer:t,index:e,documentsStore:r,language:a,params:n,docsCount:s,uniqueDocsIDs:{},indexMap:d,docsIntersection:u}}async function dG(t,e,r){const a=e.mode??Qw;if(a===Qw)return tG(t,e,r);if(a===zE)return rG(t,e);if(a===PE)return aG(t,e);throw Ue("INVALID_SEARCH_MODE",a)}async function uG(t,e,r,a,n){const i=t.data.docs,l=new Map,s=[],o=new Set,d=e.length;let u=0;for(let c=0;c<d;c++){const p=e[c];if(typeof p>"u")continue;const[A,m]=p;if(o.has(A))continue;const h=await t.documentsStore.get(i,A),C=await rB(h,n);if(!(typeof C>"u"||l.has(C))&&(l.set(C,!0),u++,!(u<=r)&&(s.push({id:Os(t.internalDocumentIDStore,A),score:m,document:h}),o.add(A),u>=r+a)))break}return s}async function T3(t,e,r,a){const n=t.data.docs,i=Array.from({length:a}),l=new Set;for(let s=r;s<a+r;s++){const o=e[s];if(typeof o>"u")break;const[d,u]=o;if(!l.has(d)){const c=await t.documentsStore.get(n,d);i[s]={id:Os(t.internalDocumentIDStore,d),score:u,document:c},l.add(d)}}return i}let pG=class{constructor(e){Object.defineProperty(this,"pageContent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.pageContent=e.pageContent?e.pageContent.toString():this.pageContent,this.metadata=e.metadata??{}}};var ze;(function(t){t.assertEqual=n=>n;function e(n){}t.assertIs=e;function r(n){throw new Error}t.assertNever=r,t.arrayToEnum=n=>{const i={};for(const l of n)i[l]=l;return i},t.getValidEnumValues=n=>{const i=t.objectKeys(n).filter(s=>typeof n[n[s]]!="number"),l={};for(const s of i)l[s]=n[s];return t.objectValues(l)},t.objectValues=n=>t.objectKeys(n).map(function(i){return n[i]}),t.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{const i=[];for(const l in n)Object.prototype.hasOwnProperty.call(n,l)&&i.push(l);return i},t.find=(n,i)=>{for(const l of n)if(i(l))return l},t.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&isFinite(n)&&Math.floor(n)===n;function a(n,i=" | "){return n.map(l=>typeof l=="string"?`'${l}'`:l).join(i)}t.joinValues=a,t.jsonStringifyReplacer=(n,i)=>typeof i=="bigint"?i.toString():i})(ze||(ze={}));var xg;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(xg||(xg={}));const ge=ze.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),zn=t=>{switch(typeof t){case"undefined":return ge.undefined;case"string":return ge.string;case"number":return isNaN(t)?ge.nan:ge.number;case"boolean":return ge.boolean;case"function":return ge.function;case"bigint":return ge.bigint;case"symbol":return ge.symbol;case"object":return Array.isArray(t)?ge.array:t===null?ge.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ge.promise:typeof Map<"u"&&t instanceof Map?ge.map:typeof Set<"u"&&t instanceof Set?ge.set:typeof Date<"u"&&t instanceof Date?ge.date:ge.object;default:return ge.unknown}},ee=ze.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),cG=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:");let Ba=class k3 extends Error{constructor(e){super(),this.issues=[],this.addIssue=a=>{this.issues=[...this.issues,a]},this.addIssues=(a=[])=>{this.issues=[...this.issues,...a]};const r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const r=e||function(i){return i.message},a={_errors:[]},n=i=>{for(const l of i.issues)if(l.code==="invalid_union")l.unionErrors.map(n);else if(l.code==="invalid_return_type")n(l.returnTypeError);else if(l.code==="invalid_arguments")n(l.argumentsError);else if(l.path.length===0)a._errors.push(r(l));else{let s=a,o=0;for(;o<l.path.length;){const d=l.path[o];o===l.path.length-1?(s[d]=s[d]||{_errors:[]},s[d]._errors.push(r(l))):s[d]=s[d]||{_errors:[]},s=s[d],o++}}};return n(this),a}static assert(e){if(!(e instanceof k3))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ze.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){const r={},a=[];for(const n of this.issues)n.path.length>0?(r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(e(n))):a.push(e(n));return{formErrors:a,fieldErrors:r}}get formErrors(){return this.flatten()}};Ba.create=t=>new Ba(t);const Ss=(t,e)=>{let r;switch(t.code){case ee.invalid_type:t.received===ge.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case ee.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ze.jsonStringifyReplacer)}`;break;case ee.unrecognized_keys:r=`Unrecognized key(s) in object: ${ze.joinValues(t.keys,", ")}`;break;case ee.invalid_union:r="Invalid input";break;case ee.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ze.joinValues(t.options)}`;break;case ee.invalid_enum_value:r=`Invalid enum value. Expected ${ze.joinValues(t.options)}, received '${t.received}'`;break;case ee.invalid_arguments:r="Invalid function arguments";break;case ee.invalid_return_type:r="Invalid function return type";break;case ee.invalid_date:r="Invalid date";break;case ee.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:ze.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case ee.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case ee.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case ee.custom:r="Invalid input";break;case ee.invalid_intersection_types:r="Intersection results could not be merged";break;case ee.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case ee.not_finite:r="Number must be finite";break;default:r=e.defaultError,ze.assertNever(t)}return{message:r}};let U3=Ss;function mG(t){U3=t}function Tc(){return U3}const kc=t=>{const{data:e,path:r,errorMaps:a,issueData:n}=t,i=[...r,...n.path||[]],l={...n,path:i};if(n.message!==void 0)return{...n,path:i,message:n.message};let s="";const o=a.filter(d=>!!d).slice().reverse();for(const d of o)s=d(l,{data:e,defaultError:s}).message;return{...n,path:i,message:s}},gG=[];function ue(t,e){const r=Tc(),a=kc({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ss?void 0:Ss].filter(n=>!!n)});t.common.issues.push(a)}class wr{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){const a=[];for(const n of r){if(n.status==="aborted")return Re;n.status==="dirty"&&e.dirty(),a.push(n.value)}return{status:e.value,value:a}}static async mergeObjectAsync(e,r){const a=[];for(const n of r){const i=await n.key,l=await n.value;a.push({key:i,value:l})}return wr.mergeObjectSync(e,a)}static mergeObjectSync(e,r){const a={};for(const n of r){const{key:i,value:l}=n;if(i.status==="aborted"||l.status==="aborted")return Re;i.status==="dirty"&&e.dirty(),l.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof l.value<"u"||n.alwaysSet)&&(a[i.value]=l.value)}return{status:e.value,value:a}}}const Re=Object.freeze({status:"aborted"}),ms=t=>({status:"dirty",value:t}),Er=t=>({status:"valid",value:t}),Jg=t=>t.status==="aborted",Og=t=>t.status==="dirty",Wd=t=>t.status==="valid",vd=t=>typeof Promise<"u"&&t instanceof Promise;function Uc(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)}function _3(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r}var Ce;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(Ce||(Ce={}));var Yo,No;class Ta{constructor(e,r,a,n){this._cachedPath=[],this.parent=e,this.data=r,this._path=a,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Rw=(t,e)=>{if(Wd(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const r=new Ba(t.common.issues);return this._error=r,this._error}}};function Le(t){if(!t)return{};const{errorMap:e,invalid_type_error:r,required_error:a,description:n}=t;if(e&&(r||a))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(l,s)=>{var o,d;const{message:u}=t;return l.code==="invalid_enum_value"?{message:u??s.defaultError}:typeof s.data>"u"?{message:(o=u??a)!==null&&o!==void 0?o:s.defaultError}:l.code!=="invalid_type"?{message:s.defaultError}:{message:(d=u??r)!==null&&d!==void 0?d:s.defaultError}},description:n}}class _e{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return zn(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:zn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new wr,ctx:{common:e.parent.common,data:e.data,parsedType:zn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const r=this._parse(e);if(vd(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){const r=this._parse(e);return Promise.resolve(r)}parse(e,r){const a=this.safeParse(e,r);if(a.success)return a.data;throw a.error}safeParse(e,r){var a;const n={common:{issues:[],async:(a=r==null?void 0:r.async)!==null&&a!==void 0?a:!1,contextualErrorMap:r==null?void 0:r.errorMap},path:(r==null?void 0:r.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zn(e)},i=this._parseSync({data:e,path:n.path,parent:n});return Rw(n,i)}async parseAsync(e,r){const a=await this.safeParseAsync(e,r);if(a.success)return a.data;throw a.error}async safeParseAsync(e,r){const a={common:{issues:[],contextualErrorMap:r==null?void 0:r.errorMap,async:!0},path:(r==null?void 0:r.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zn(e)},n=this._parse({data:e,path:a.path,parent:a}),i=await(vd(n)?n:Promise.resolve(n));return Rw(a,i)}refine(e,r){const a=n=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(n):r;return this._refinement((n,i)=>{const l=e(n),s=()=>i.addIssue({code:ee.custom,...a(n)});return typeof Promise<"u"&&l instanceof Promise?l.then(o=>o?!0:(s(),!1)):l?!0:(s(),!1)})}refinement(e,r){return this._refinement((a,n)=>e(a)?!0:(n.addIssue(typeof r=="function"?r(a,n):r),!1))}_refinement(e){return new ba({schema:this,typeName:re.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Na.create(this,this._def)}nullable(){return Ai.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ca.create(this,this._def)}promise(){return Xs.create(this,this._def)}or(e){return Ed.create([this,e],this._def)}and(e){return Gd.create(this,e,this._def)}transform(e){return new ba({...Le(this._def),schema:this,typeName:re.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const r=typeof e=="function"?e:()=>e;return new Vd({...Le(this._def),innerType:this,defaultValue:r,typeName:re.ZodDefault})}brand(){return new uB({typeName:re.ZodBranded,type:this,...Le(this._def)})}catch(e){const r=typeof e=="function"?e:()=>e;return new Yd({...Le(this._def),innerType:this,catchValue:r,typeName:re.ZodCatch})}describe(e){const r=this.constructor;return new r({...this._def,description:e})}pipe(e){return nu.create(this,e)}readonly(){return Nd.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const AG=/^c[^\s-]{8,}$/i,hG=/^[0-9a-z]+$/,BG=/^[0-9A-HJKMNP-TV-Z]{26}$/,CG=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,wG=/^[a-z0-9_-]{21}$/i,bG=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,KG=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fG="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Cm;const QG=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,WG=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,vG=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,I3="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",FG=new RegExp(`^${I3}$`);function D3(t){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`),e}function yG(t){return new RegExp(`^${D3(t)}$`)}function M3(t){let e=`${I3}T${D3(t)}`;const r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function RG(t,e){return!!((e==="v4"||!e)&&QG.test(t)||(e==="v6"||!e)&&WG.test(t))}class Aa extends _e{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==ge.string){const i=this._getOrReturnCtx(e);return ue(i,{code:ee.invalid_type,expected:ge.string,received:i.parsedType}),Re}const a=new wr;let n;for(const i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),a.dirty());else if(i.kind==="max")e.data.length>i.value&&(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),a.dirty());else if(i.kind==="length"){const l=e.data.length>i.value,s=e.data.length<i.value;(l||s)&&(n=this._getOrReturnCtx(e,n),l?ue(n,{code:ee.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):s&&ue(n,{code:ee.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),a.dirty())}else if(i.kind==="email")KG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"email",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="emoji")Cm||(Cm=new RegExp(fG,"u")),Cm.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"emoji",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="uuid")CG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"uuid",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="nanoid")wG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"nanoid",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="cuid")AG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"cuid",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="cuid2")hG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"cuid2",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="ulid")BG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"ulid",code:ee.invalid_string,message:i.message}),a.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),ue(n,{validation:"url",code:ee.invalid_string,message:i.message}),a.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"regex",code:ee.invalid_string,message:i.message}),a.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),a.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:{startsWith:i.value},message:i.message}),a.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:{endsWith:i.value},message:i.message}),a.dirty()):i.kind==="datetime"?M3(i).test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:"datetime",message:i.message}),a.dirty()):i.kind==="date"?FG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:"date",message:i.message}),a.dirty()):i.kind==="time"?yG(i).test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.invalid_string,validation:"time",message:i.message}),a.dirty()):i.kind==="duration"?bG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"duration",code:ee.invalid_string,message:i.message}),a.dirty()):i.kind==="ip"?RG(e.data,i.version)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"ip",code:ee.invalid_string,message:i.message}),a.dirty()):i.kind==="base64"?vG.test(e.data)||(n=this._getOrReturnCtx(e,n),ue(n,{validation:"base64",code:ee.invalid_string,message:i.message}),a.dirty()):ze.assertNever(i);return{status:a.value,value:e.data}}_regex(e,r,a){return this.refinement(n=>e.test(n),{validation:r,code:ee.invalid_string,...Ce.errToObj(a)})}_addCheck(e){return new Aa({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...Ce.errToObj(e)})}url(e){return this._addCheck({kind:"url",...Ce.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...Ce.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...Ce.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...Ce.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...Ce.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...Ce.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...Ce.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...Ce.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...Ce.errToObj(e)})}datetime(e){var r,a;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(r=e==null?void 0:e.offset)!==null&&r!==void 0?r:!1,local:(a=e==null?void 0:e.local)!==null&&a!==void 0?a:!1,...Ce.errToObj(e==null?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,...Ce.errToObj(e==null?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...Ce.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...Ce.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r==null?void 0:r.position,...Ce.errToObj(r==null?void 0:r.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...Ce.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...Ce.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...Ce.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...Ce.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...Ce.errToObj(r)})}nonempty(e){return this.min(1,Ce.errToObj(e))}trim(){return new Aa({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Aa({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Aa({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get minLength(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}Aa.create=t=>{var e;return new Aa({checks:[],typeName:re.ZodString,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...Le(t)})};function EG(t,e){const r=(t.toString().split(".")[1]||"").length,a=(e.toString().split(".")[1]||"").length,n=r>a?r:a,i=parseInt(t.toFixed(n).replace(".","")),l=parseInt(e.toFixed(n).replace(".",""));return i%l/Math.pow(10,n)}class ci extends _e{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==ge.number){const i=this._getOrReturnCtx(e);return ue(i,{code:ee.invalid_type,expected:ge.number,received:i.parsedType}),Re}let a;const n=new wr;for(const i of this._def.checks)i.kind==="int"?ze.isInteger(e.data)||(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.invalid_type,expected:"integer",received:"float",message:i.message}),n.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty()):i.kind==="multipleOf"?EG(e.data,i.value)!==0&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.not_finite,message:i.message}),n.dirty()):ze.assertNever(i);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,Ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,Ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,Ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,Ce.toString(r))}setLimit(e,r,a,n){return new ci({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:a,message:Ce.toString(n)}]})}_addCheck(e){return new ci({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:Ce.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:Ce.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:Ce.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Ce.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Ce.toString(e)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&ze.isInteger(e.value))}get isFinite(){let e=null,r=null;for(const a of this._def.checks){if(a.kind==="finite"||a.kind==="int"||a.kind==="multipleOf")return!0;a.kind==="min"?(r===null||a.value>r)&&(r=a.value):a.kind==="max"&&(e===null||a.value<e)&&(e=a.value)}return Number.isFinite(r)&&Number.isFinite(e)}}ci.create=t=>new ci({checks:[],typeName:re.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...Le(t)});class mi extends _e{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==ge.bigint){const i=this._getOrReturnCtx(e);return ue(i,{code:ee.invalid_type,expected:ge.bigint,received:i.parsedType}),Re}let a;const n=new wr;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(a=this._getOrReturnCtx(e,a),ue(a,{code:ee.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):ze.assertNever(i);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,Ce.toString(r))}gt(e,r){return this.setLimit("min",e,!1,Ce.toString(r))}lte(e,r){return this.setLimit("max",e,!0,Ce.toString(r))}lt(e,r){return this.setLimit("max",e,!1,Ce.toString(r))}setLimit(e,r,a,n){return new mi({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:a,message:Ce.toString(n)}]})}_addCheck(e){return new mi({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Ce.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Ce.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Ce.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Ce.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:Ce.toString(r)})}get minValue(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}}mi.create=t=>{var e;return new mi({checks:[],typeName:re.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...Le(t)})};class Fd extends _e{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==ge.boolean){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.boolean,received:a.parsedType}),Re}return Er(e.data)}}Fd.create=t=>new Fd({typeName:re.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...Le(t)});class Wl extends _e{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==ge.date){const i=this._getOrReturnCtx(e);return ue(i,{code:ee.invalid_type,expected:ge.date,received:i.parsedType}),Re}if(isNaN(e.data.getTime())){const i=this._getOrReturnCtx(e);return ue(i,{code:ee.invalid_date}),Re}const a=new wr;let n;for(const i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),a.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(n=this._getOrReturnCtx(e,n),ue(n,{code:ee.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),a.dirty()):ze.assertNever(i);return{status:a.value,value:new Date(e.data.getTime())}}_addCheck(e){return new Wl({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:Ce.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:Ce.toString(r)})}get minDate(){let e=null;for(const r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}}Wl.create=t=>new Wl({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:re.ZodDate,...Le(t)});class _c extends _e{_parse(e){if(this._getType(e)!==ge.symbol){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.symbol,received:a.parsedType}),Re}return Er(e.data)}}_c.create=t=>new _c({typeName:re.ZodSymbol,...Le(t)});class yd extends _e{_parse(e){if(this._getType(e)!==ge.undefined){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.undefined,received:a.parsedType}),Re}return Er(e.data)}}yd.create=t=>new yd({typeName:re.ZodUndefined,...Le(t)});class Rd extends _e{_parse(e){if(this._getType(e)!==ge.null){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.null,received:a.parsedType}),Re}return Er(e.data)}}Rd.create=t=>new Rd({typeName:re.ZodNull,...Le(t)});class Zs extends _e{constructor(){super(...arguments),this._any=!0}_parse(e){return Er(e.data)}}Zs.create=t=>new Zs({typeName:re.ZodAny,...Le(t)});class gl extends _e{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Er(e.data)}}gl.create=t=>new gl({typeName:re.ZodUnknown,...Le(t)});class Wn extends _e{_parse(e){const r=this._getOrReturnCtx(e);return ue(r,{code:ee.invalid_type,expected:ge.never,received:r.parsedType}),Re}}Wn.create=t=>new Wn({typeName:re.ZodNever,...Le(t)});class Ic extends _e{_parse(e){if(this._getType(e)!==ge.undefined){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.void,received:a.parsedType}),Re}return Er(e.data)}}Ic.create=t=>new Ic({typeName:re.ZodVoid,...Le(t)});class Ca extends _e{_parse(e){const{ctx:r,status:a}=this._processInputParams(e),n=this._def;if(r.parsedType!==ge.array)return ue(r,{code:ee.invalid_type,expected:ge.array,received:r.parsedType}),Re;if(n.exactLength!==null){const l=r.data.length>n.exactLength.value,s=r.data.length<n.exactLength.value;(l||s)&&(ue(r,{code:l?ee.too_big:ee.too_small,minimum:s?n.exactLength.value:void 0,maximum:l?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),a.dirty())}if(n.minLength!==null&&r.data.length<n.minLength.value&&(ue(r,{code:ee.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),a.dirty()),n.maxLength!==null&&r.data.length>n.maxLength.value&&(ue(r,{code:ee.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),a.dirty()),r.common.async)return Promise.all([...r.data].map((l,s)=>n.type._parseAsync(new Ta(r,l,r.path,s)))).then(l=>wr.mergeArray(a,l));const i=[...r.data].map((l,s)=>n.type._parseSync(new Ta(r,l,r.path,s)));return wr.mergeArray(a,i)}get element(){return this._def.type}min(e,r){return new Ca({...this._def,minLength:{value:e,message:Ce.toString(r)}})}max(e,r){return new Ca({...this._def,maxLength:{value:e,message:Ce.toString(r)}})}length(e,r){return new Ca({...this._def,exactLength:{value:e,message:Ce.toString(r)}})}nonempty(e){return this.min(1,e)}}Ca.create=(t,e)=>new Ca({type:t,minLength:null,maxLength:null,exactLength:null,typeName:re.ZodArray,...Le(e)});function ns(t){if(t instanceof Gt){const e={};for(const r in t.shape){const a=t.shape[r];e[r]=Na.create(ns(a))}return new Gt({...t._def,shape:()=>e})}else return t instanceof Ca?new Ca({...t._def,type:ns(t.element)}):t instanceof Na?Na.create(ns(t.unwrap())):t instanceof Ai?Ai.create(ns(t.unwrap())):t instanceof ka?ka.create(t.items.map(e=>ns(e))):t}class Gt extends _e{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),r=ze.objectKeys(e);return this._cached={shape:e,keys:r}}_parse(e){if(this._getType(e)!==ge.object){const d=this._getOrReturnCtx(e);return ue(d,{code:ee.invalid_type,expected:ge.object,received:d.parsedType}),Re}const{status:a,ctx:n}=this._processInputParams(e),{shape:i,keys:l}=this._getCached(),s=[];if(!(this._def.catchall instanceof Wn&&this._def.unknownKeys==="strip"))for(const d in n.data)l.includes(d)||s.push(d);const o=[];for(const d of l){const u=i[d],c=n.data[d];o.push({key:{status:"valid",value:d},value:u._parse(new Ta(n,c,n.path,d)),alwaysSet:d in n.data})}if(this._def.catchall instanceof Wn){const d=this._def.unknownKeys;if(d==="passthrough")for(const u of s)o.push({key:{status:"valid",value:u},value:{status:"valid",value:n.data[u]}});else if(d==="strict")s.length>0&&(ue(n,{code:ee.unrecognized_keys,keys:s}),a.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const d=this._def.catchall;for(const u of s){const c=n.data[u];o.push({key:{status:"valid",value:u},value:d._parse(new Ta(n,c,n.path,u)),alwaysSet:u in n.data})}}return n.common.async?Promise.resolve().then(async()=>{const d=[];for(const u of o){const c=await u.key,p=await u.value;d.push({key:c,value:p,alwaysSet:u.alwaysSet})}return d}).then(d=>wr.mergeObjectSync(a,d)):wr.mergeObjectSync(a,o)}get shape(){return this._def.shape()}strict(e){return Ce.errToObj,new Gt({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,a)=>{var n,i,l,s;const o=(l=(i=(n=this._def).errorMap)===null||i===void 0?void 0:i.call(n,r,a).message)!==null&&l!==void 0?l:a.defaultError;return r.code==="unrecognized_keys"?{message:(s=Ce.errToObj(e).message)!==null&&s!==void 0?s:o}:{message:o}}}:{}})}strip(){return new Gt({...this._def,unknownKeys:"strip"})}passthrough(){return new Gt({...this._def,unknownKeys:"passthrough"})}extend(e){return new Gt({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Gt({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:re.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new Gt({...this._def,catchall:e})}pick(e){const r={};return ze.objectKeys(e).forEach(a=>{e[a]&&this.shape[a]&&(r[a]=this.shape[a])}),new Gt({...this._def,shape:()=>r})}omit(e){const r={};return ze.objectKeys(this.shape).forEach(a=>{e[a]||(r[a]=this.shape[a])}),new Gt({...this._def,shape:()=>r})}deepPartial(){return ns(this)}partial(e){const r={};return ze.objectKeys(this.shape).forEach(a=>{const n=this.shape[a];e&&!e[a]?r[a]=n:r[a]=n.optional()}),new Gt({...this._def,shape:()=>r})}required(e){const r={};return ze.objectKeys(this.shape).forEach(a=>{if(e&&!e[a])r[a]=this.shape[a];else{let i=this.shape[a];for(;i instanceof Na;)i=i._def.innerType;r[a]=i}}),new Gt({...this._def,shape:()=>r})}keyof(){return x3(ze.objectKeys(this.shape))}}Gt.create=(t,e)=>new Gt({shape:()=>t,unknownKeys:"strip",catchall:Wn.create(),typeName:re.ZodObject,...Le(e)});Gt.strictCreate=(t,e)=>new Gt({shape:()=>t,unknownKeys:"strict",catchall:Wn.create(),typeName:re.ZodObject,...Le(e)});Gt.lazycreate=(t,e)=>new Gt({shape:t,unknownKeys:"strip",catchall:Wn.create(),typeName:re.ZodObject,...Le(e)});class Ed extends _e{_parse(e){const{ctx:r}=this._processInputParams(e),a=this._def.options;function n(i){for(const s of i)if(s.result.status==="valid")return s.result;for(const s of i)if(s.result.status==="dirty")return r.common.issues.push(...s.ctx.common.issues),s.result;const l=i.map(s=>new Ba(s.ctx.common.issues));return ue(r,{code:ee.invalid_union,unionErrors:l}),Re}if(r.common.async)return Promise.all(a.map(async i=>{const l={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:l}),ctx:l}})).then(n);{let i;const l=[];for(const o of a){const d={...r,common:{...r.common,issues:[]},parent:null},u=o._parseSync({data:r.data,path:r.path,parent:d});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:d}),d.common.issues.length&&l.push(d.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;const s=l.map(o=>new Ba(o));return ue(r,{code:ee.invalid_union,unionErrors:s}),Re}}get options(){return this._def.options}}Ed.create=(t,e)=>new Ed({options:t,typeName:re.ZodUnion,...Le(e)});const ln=t=>t instanceof Zd?ln(t.schema):t instanceof ba?ln(t.innerType()):t instanceof Xd?[t.value]:t instanceof gi?t.options:t instanceof Hd?ze.objectValues(t.enum):t instanceof Vd?ln(t._def.innerType):t instanceof yd?[void 0]:t instanceof Rd?[null]:t instanceof Na?[void 0,...ln(t.unwrap())]:t instanceof Ai?[null,...ln(t.unwrap())]:t instanceof uB||t instanceof Nd?ln(t.unwrap()):t instanceof Yd?ln(t._def.innerType):[];class r1 extends _e{_parse(e){const{ctx:r}=this._processInputParams(e);if(r.parsedType!==ge.object)return ue(r,{code:ee.invalid_type,expected:ge.object,received:r.parsedType}),Re;const a=this.discriminator,n=r.data[a],i=this.optionsMap.get(n);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(ue(r,{code:ee.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[a]}),Re)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,a){const n=new Map;for(const i of r){const l=ln(i.shape[e]);if(!l.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const s of l){if(n.has(s))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(s)}`);n.set(s,i)}}return new r1({typeName:re.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:n,...Le(a)})}}function Pg(t,e){const r=zn(t),a=zn(e);if(t===e)return{valid:!0,data:t};if(r===ge.object&&a===ge.object){const n=ze.objectKeys(e),i=ze.objectKeys(t).filter(s=>n.indexOf(s)!==-1),l={...t,...e};for(const s of i){const o=Pg(t[s],e[s]);if(!o.valid)return{valid:!1};l[s]=o.data}return{valid:!0,data:l}}else if(r===ge.array&&a===ge.array){if(t.length!==e.length)return{valid:!1};const n=[];for(let i=0;i<t.length;i++){const l=t[i],s=e[i],o=Pg(l,s);if(!o.valid)return{valid:!1};n.push(o.data)}return{valid:!0,data:n}}else return r===ge.date&&a===ge.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}class Gd extends _e{_parse(e){const{status:r,ctx:a}=this._processInputParams(e),n=(i,l)=>{if(Jg(i)||Jg(l))return Re;const s=Pg(i.value,l.value);return s.valid?((Og(i)||Og(l))&&r.dirty(),{status:r.value,value:s.data}):(ue(a,{code:ee.invalid_intersection_types}),Re)};return a.common.async?Promise.all([this._def.left._parseAsync({data:a.data,path:a.path,parent:a}),this._def.right._parseAsync({data:a.data,path:a.path,parent:a})]).then(([i,l])=>n(i,l)):n(this._def.left._parseSync({data:a.data,path:a.path,parent:a}),this._def.right._parseSync({data:a.data,path:a.path,parent:a}))}}Gd.create=(t,e,r)=>new Gd({left:t,right:e,typeName:re.ZodIntersection,...Le(r)});class ka extends _e{_parse(e){const{status:r,ctx:a}=this._processInputParams(e);if(a.parsedType!==ge.array)return ue(a,{code:ee.invalid_type,expected:ge.array,received:a.parsedType}),Re;if(a.data.length<this._def.items.length)return ue(a,{code:ee.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Re;!this._def.rest&&a.data.length>this._def.items.length&&(ue(a,{code:ee.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());const i=[...a.data].map((l,s)=>{const o=this._def.items[s]||this._def.rest;return o?o._parse(new Ta(a,l,a.path,s)):null}).filter(l=>!!l);return a.common.async?Promise.all(i).then(l=>wr.mergeArray(r,l)):wr.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new ka({...this._def,rest:e})}}ka.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ka({items:t,typeName:re.ZodTuple,rest:null,...Le(e)})};class Sd extends _e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:r,ctx:a}=this._processInputParams(e);if(a.parsedType!==ge.object)return ue(a,{code:ee.invalid_type,expected:ge.object,received:a.parsedType}),Re;const n=[],i=this._def.keyType,l=this._def.valueType;for(const s in a.data)n.push({key:i._parse(new Ta(a,s,a.path,s)),value:l._parse(new Ta(a,a.data[s],a.path,s)),alwaysSet:s in a.data});return a.common.async?wr.mergeObjectAsync(r,n):wr.mergeObjectSync(r,n)}get element(){return this._def.valueType}static create(e,r,a){return r instanceof _e?new Sd({keyType:e,valueType:r,typeName:re.ZodRecord,...Le(a)}):new Sd({keyType:Aa.create(),valueType:e,typeName:re.ZodRecord,...Le(r)})}}class Dc extends _e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:r,ctx:a}=this._processInputParams(e);if(a.parsedType!==ge.map)return ue(a,{code:ee.invalid_type,expected:ge.map,received:a.parsedType}),Re;const n=this._def.keyType,i=this._def.valueType,l=[...a.data.entries()].map(([s,o],d)=>({key:n._parse(new Ta(a,s,a.path,[d,"key"])),value:i._parse(new Ta(a,o,a.path,[d,"value"]))}));if(a.common.async){const s=new Map;return Promise.resolve().then(async()=>{for(const o of l){const d=await o.key,u=await o.value;if(d.status==="aborted"||u.status==="aborted")return Re;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}})}else{const s=new Map;for(const o of l){const d=o.key,u=o.value;if(d.status==="aborted"||u.status==="aborted")return Re;(d.status==="dirty"||u.status==="dirty")&&r.dirty(),s.set(d.value,u.value)}return{status:r.value,value:s}}}}Dc.create=(t,e,r)=>new Dc({valueType:e,keyType:t,typeName:re.ZodMap,...Le(r)});class vl extends _e{_parse(e){const{status:r,ctx:a}=this._processInputParams(e);if(a.parsedType!==ge.set)return ue(a,{code:ee.invalid_type,expected:ge.set,received:a.parsedType}),Re;const n=this._def;n.minSize!==null&&a.data.size<n.minSize.value&&(ue(a,{code:ee.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),r.dirty()),n.maxSize!==null&&a.data.size>n.maxSize.value&&(ue(a,{code:ee.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),r.dirty());const i=this._def.valueType;function l(o){const d=new Set;for(const u of o){if(u.status==="aborted")return Re;u.status==="dirty"&&r.dirty(),d.add(u.value)}return{status:r.value,value:d}}const s=[...a.data.values()].map((o,d)=>i._parse(new Ta(a,o,a.path,d)));return a.common.async?Promise.all(s).then(o=>l(o)):l(s)}min(e,r){return new vl({...this._def,minSize:{value:e,message:Ce.toString(r)}})}max(e,r){return new vl({...this._def,maxSize:{value:e,message:Ce.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}}vl.create=(t,e)=>new vl({valueType:t,minSize:null,maxSize:null,typeName:re.ZodSet,...Le(e)});class fs extends _e{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:r}=this._processInputParams(e);if(r.parsedType!==ge.function)return ue(r,{code:ee.invalid_type,expected:ge.function,received:r.parsedType}),Re;function a(s,o){return kc({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Tc(),Ss].filter(d=>!!d),issueData:{code:ee.invalid_arguments,argumentsError:o}})}function n(s,o){return kc({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Tc(),Ss].filter(d=>!!d),issueData:{code:ee.invalid_return_type,returnTypeError:o}})}const i={errorMap:r.common.contextualErrorMap},l=r.data;if(this._def.returns instanceof Xs){const s=this;return Er(async function(...o){const d=new Ba([]),u=await s._def.args.parseAsync(o,i).catch(A=>{throw d.addIssue(a(o,A)),d}),c=await Reflect.apply(l,this,u);return await s._def.returns._def.type.parseAsync(c,i).catch(A=>{throw d.addIssue(n(c,A)),d})})}else{const s=this;return Er(function(...o){const d=s._def.args.safeParse(o,i);if(!d.success)throw new Ba([a(o,d.error)]);const u=Reflect.apply(l,this,d.data),c=s._def.returns.safeParse(u,i);if(!c.success)throw new Ba([n(u,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new fs({...this._def,args:ka.create(e).rest(gl.create())})}returns(e){return new fs({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,a){return new fs({args:e||ka.create([]).rest(gl.create()),returns:r||gl.create(),typeName:re.ZodFunction,...Le(a)})}}class Zd extends _e{get schema(){return this._def.getter()}_parse(e){const{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}}Zd.create=(t,e)=>new Zd({getter:t,typeName:re.ZodLazy,...Le(e)});class Xd extends _e{_parse(e){if(e.data!==this._def.value){const r=this._getOrReturnCtx(e);return ue(r,{received:r.data,code:ee.invalid_literal,expected:this._def.value}),Re}return{status:"valid",value:e.data}}get value(){return this._def.value}}Xd.create=(t,e)=>new Xd({value:t,typeName:re.ZodLiteral,...Le(e)});function x3(t,e){return new gi({values:t,typeName:re.ZodEnum,...Le(e)})}class gi extends _e{constructor(){super(...arguments),Yo.set(this,void 0)}_parse(e){if(typeof e.data!="string"){const r=this._getOrReturnCtx(e),a=this._def.values;return ue(r,{expected:ze.joinValues(a),received:r.parsedType,code:ee.invalid_type}),Re}if(Uc(this,Yo,"f")||_3(this,Yo,new Set(this._def.values),"f"),!Uc(this,Yo,"f").has(e.data)){const r=this._getOrReturnCtx(e),a=this._def.values;return ue(r,{received:r.data,code:ee.invalid_enum_value,options:a}),Re}return Er(e.data)}get options(){return this._def.values}get enum(){const e={};for(const r of this._def.values)e[r]=r;return e}get Values(){const e={};for(const r of this._def.values)e[r]=r;return e}get Enum(){const e={};for(const r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return gi.create(e,{...this._def,...r})}exclude(e,r=this._def){return gi.create(this.options.filter(a=>!e.includes(a)),{...this._def,...r})}}Yo=new WeakMap;gi.create=x3;class Hd extends _e{constructor(){super(...arguments),No.set(this,void 0)}_parse(e){const r=ze.getValidEnumValues(this._def.values),a=this._getOrReturnCtx(e);if(a.parsedType!==ge.string&&a.parsedType!==ge.number){const n=ze.objectValues(r);return ue(a,{expected:ze.joinValues(n),received:a.parsedType,code:ee.invalid_type}),Re}if(Uc(this,No,"f")||_3(this,No,new Set(ze.getValidEnumValues(this._def.values)),"f"),!Uc(this,No,"f").has(e.data)){const n=ze.objectValues(r);return ue(a,{received:a.data,code:ee.invalid_enum_value,options:n}),Re}return Er(e.data)}get enum(){return this._def.values}}No=new WeakMap;Hd.create=(t,e)=>new Hd({values:t,typeName:re.ZodNativeEnum,...Le(e)});class Xs extends _e{unwrap(){return this._def.type}_parse(e){const{ctx:r}=this._processInputParams(e);if(r.parsedType!==ge.promise&&r.common.async===!1)return ue(r,{code:ee.invalid_type,expected:ge.promise,received:r.parsedType}),Re;const a=r.parsedType===ge.promise?r.data:Promise.resolve(r.data);return Er(a.then(n=>this._def.type.parseAsync(n,{path:r.path,errorMap:r.common.contextualErrorMap})))}}Xs.create=(t,e)=>new Xs({type:t,typeName:re.ZodPromise,...Le(e)});class ba extends _e{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===re.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:r,ctx:a}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:l=>{ue(a,l),l.fatal?r.abort():r.dirty()},get path(){return a.path}};if(i.addIssue=i.addIssue.bind(i),n.type==="preprocess"){const l=n.transform(a.data,i);if(a.common.async)return Promise.resolve(l).then(async s=>{if(r.value==="aborted")return Re;const o=await this._def.schema._parseAsync({data:s,path:a.path,parent:a});return o.status==="aborted"?Re:o.status==="dirty"||r.value==="dirty"?ms(o.value):o});{if(r.value==="aborted")return Re;const s=this._def.schema._parseSync({data:l,path:a.path,parent:a});return s.status==="aborted"?Re:s.status==="dirty"||r.value==="dirty"?ms(s.value):s}}if(n.type==="refinement"){const l=s=>{const o=n.refinement(s,i);if(a.common.async)return Promise.resolve(o);if(o instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(a.common.async===!1){const s=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});return s.status==="aborted"?Re:(s.status==="dirty"&&r.dirty(),l(s.value),{status:r.value,value:s.value})}else return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(s=>s.status==="aborted"?Re:(s.status==="dirty"&&r.dirty(),l(s.value).then(()=>({status:r.value,value:s.value}))))}if(n.type==="transform")if(a.common.async===!1){const l=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});if(!Wd(l))return l;const s=n.transform(l.value,i);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:s}}else return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(l=>Wd(l)?Promise.resolve(n.transform(l.value,i)).then(s=>({status:r.value,value:s})):l);ze.assertNever(n)}}ba.create=(t,e,r)=>new ba({schema:t,typeName:re.ZodEffects,effect:e,...Le(r)});ba.createWithPreprocess=(t,e,r)=>new ba({schema:e,effect:{type:"preprocess",transform:t},typeName:re.ZodEffects,...Le(r)});class Na extends _e{_parse(e){return this._getType(e)===ge.undefined?Er(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Na.create=(t,e)=>new Na({innerType:t,typeName:re.ZodOptional,...Le(e)});class Ai extends _e{_parse(e){return this._getType(e)===ge.null?Er(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ai.create=(t,e)=>new Ai({innerType:t,typeName:re.ZodNullable,...Le(e)});class Vd extends _e{_parse(e){const{ctx:r}=this._processInputParams(e);let a=r.data;return r.parsedType===ge.undefined&&(a=this._def.defaultValue()),this._def.innerType._parse({data:a,path:r.path,parent:r})}removeDefault(){return this._def.innerType}}Vd.create=(t,e)=>new Vd({innerType:t,typeName:re.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Le(e)});class Yd extends _e{_parse(e){const{ctx:r}=this._processInputParams(e),a={...r,common:{...r.common,issues:[]}},n=this._def.innerType._parse({data:a.data,path:a.path,parent:{...a}});return vd(n)?n.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Ba(a.common.issues)},input:a.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Ba(a.common.issues)},input:a.data})}}removeCatch(){return this._def.innerType}}Yd.create=(t,e)=>new Yd({innerType:t,typeName:re.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Le(e)});class Mc extends _e{_parse(e){if(this._getType(e)!==ge.nan){const a=this._getOrReturnCtx(e);return ue(a,{code:ee.invalid_type,expected:ge.nan,received:a.parsedType}),Re}return{status:"valid",value:e.data}}}Mc.create=t=>new Mc({typeName:re.ZodNaN,...Le(t)});const GG=Symbol("zod_brand");class uB extends _e{_parse(e){const{ctx:r}=this._processInputParams(e),a=r.data;return this._def.type._parse({data:a,path:r.path,parent:r})}unwrap(){return this._def.type}}class nu extends _e{_parse(e){const{status:r,ctx:a}=this._processInputParams(e);if(a.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:a.data,path:a.path,parent:a});return i.status==="aborted"?Re:i.status==="dirty"?(r.dirty(),ms(i.value)):this._def.out._parseAsync({data:i.value,path:a.path,parent:a})})();{const n=this._def.in._parseSync({data:a.data,path:a.path,parent:a});return n.status==="aborted"?Re:n.status==="dirty"?(r.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:a.path,parent:a})}}static create(e,r){return new nu({in:e,out:r,typeName:re.ZodPipeline})}}class Nd extends _e{_parse(e){const r=this._def.innerType._parse(e),a=n=>(Wd(n)&&(n.value=Object.freeze(n.value)),n);return vd(r)?r.then(n=>a(n)):a(r)}unwrap(){return this._def.innerType}}Nd.create=(t,e)=>new Nd({innerType:t,typeName:re.ZodReadonly,...Le(e)});function J3(t,e={},r){return t?Zs.create().superRefine((a,n)=>{var i,l;if(!t(a)){const s=typeof e=="function"?e(a):typeof e=="string"?{message:e}:e,o=(l=(i=s.fatal)!==null&&i!==void 0?i:r)!==null&&l!==void 0?l:!0,d=typeof s=="string"?{message:s}:s;n.addIssue({code:"custom",...d,fatal:o})}}):Zs.create()}const SG={object:Gt.lazycreate};var re;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(re||(re={}));const ZG=(t,e={message:`Input not instance of ${t.name}`})=>J3(r=>r instanceof t,e),O3=Aa.create,P3=ci.create,XG=Mc.create,HG=mi.create,z3=Fd.create,VG=Wl.create,YG=_c.create,NG=yd.create,LG=Rd.create,TG=Zs.create,kG=gl.create,UG=Wn.create,_G=Ic.create,IG=Ca.create,DG=Gt.create,MG=Gt.strictCreate,xG=Ed.create,JG=r1.create,OG=Gd.create,PG=ka.create,zG=Sd.create,jG=Dc.create,qG=vl.create,$G=fs.create,eS=Zd.create,tS=Xd.create,rS=gi.create,aS=Hd.create,nS=Xs.create,Ew=ba.create,iS=Na.create,lS=Ai.create,sS=ba.createWithPreprocess,oS=nu.create,dS=()=>O3().optional(),uS=()=>P3().optional(),pS=()=>z3().optional(),cS={string:t=>Aa.create({...t,coerce:!0}),number:t=>ci.create({...t,coerce:!0}),boolean:t=>Fd.create({...t,coerce:!0}),bigint:t=>mi.create({...t,coerce:!0}),date:t=>Wl.create({...t,coerce:!0})},mS=Re;var Gw=Object.freeze({__proto__:null,defaultErrorMap:Ss,setErrorMap:mG,getErrorMap:Tc,makeIssue:kc,EMPTY_PATH:gG,addIssueToContext:ue,ParseStatus:wr,INVALID:Re,DIRTY:ms,OK:Er,isAborted:Jg,isDirty:Og,isValid:Wd,isAsync:vd,get util(){return ze},get objectUtil(){return xg},ZodParsedType:ge,getParsedType:zn,ZodType:_e,datetimeRegex:M3,ZodString:Aa,ZodNumber:ci,ZodBigInt:mi,ZodBoolean:Fd,ZodDate:Wl,ZodSymbol:_c,ZodUndefined:yd,ZodNull:Rd,ZodAny:Zs,ZodUnknown:gl,ZodNever:Wn,ZodVoid:Ic,ZodArray:Ca,ZodObject:Gt,ZodUnion:Ed,ZodDiscriminatedUnion:r1,ZodIntersection:Gd,ZodTuple:ka,ZodRecord:Sd,ZodMap:Dc,ZodSet:vl,ZodFunction:fs,ZodLazy:Zd,ZodLiteral:Xd,ZodEnum:gi,ZodNativeEnum:Hd,ZodPromise:Xs,ZodEffects:ba,ZodTransformer:ba,ZodOptional:Na,ZodNullable:Ai,ZodDefault:Vd,ZodCatch:Yd,ZodNaN:Mc,BRAND:GG,ZodBranded:uB,ZodPipeline:nu,ZodReadonly:Nd,custom:J3,Schema:_e,ZodSchema:_e,late:SG,get ZodFirstPartyTypeKind(){return re},coerce:cS,any:TG,array:IG,bigint:HG,boolean:z3,date:VG,discriminatedUnion:JG,effect:Ew,enum:rS,function:$G,instanceof:ZG,intersection:OG,lazy:eS,literal:tS,map:jG,nan:XG,nativeEnum:aS,never:UG,null:LG,nullable:lS,number:P3,object:DG,oboolean:pS,onumber:uS,optional:iS,ostring:dS,pipeline:oS,preprocess:sS,promise:nS,record:zG,set:qG,strictObject:MG,string:O3,symbol:YG,transformer:Ew,tuple:PG,undefined:NG,union:xG,unknown:kG,void:_G,NEVER:mS,ZodIssueCode:ee,quotelessJson:cG,ZodError:Ba});/*!
* https://github.com/Starcounter-Jack/JSON-Patch
* (c) 2017-2022 Joachim Wester
* MIT licensed
*/const gS=Object.prototype.hasOwnProperty;function AS(t,e){return gS.call(t,e)}function hS(t){if(Array.isArray(t)){const r=new Array(t.length);for(let a=0;a<r.length;a++)r[a]=""+a;return r}if(Object.keys)return Object.keys(t);let e=[];for(let r in t)AS(t,r)&&e.push(r);return e}function Hs(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function zg(t){let e=0;const r=t.length;let a;for(;e<r;){if(a=t.charCodeAt(e),a>=48&&a<=57){e++;continue}return!1}return!0}function BS(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function jg(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(let r=0,a=t.length;r<a;r++)if(jg(t[r]))return!0}else if(typeof t=="object"){const r=hS(t),a=r.length;for(var e=0;e<a;e++)if(jg(t[r[e]]))return!0}}return!1}function Sw(t,e){const r=[t];for(const a in e){const n=typeof e[a]=="object"?JSON.stringify(e[a],null,2):e[a];typeof n<"u"&&r.push(`${a}: ${n}`)}return r.join(`
`)}let CS=class extends Error{constructor(e,r,a,n,i){super(Sw(e,{name:r,index:a,operation:n,tree:i})),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"index",{enumerable:!0,configurable:!0,writable:!0,value:a}),Object.defineProperty(this,"operation",{enumerable:!0,configurable:!0,writable:!0,value:n}),Object.defineProperty(this,"tree",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.setPrototypeOf(this,new.target.prototype),this.message=Sw(e,{name:r,index:a,operation:n,tree:i})}};const kt=CS,gs={add:function(t,e,r){return t[e]=this.value,{newDocument:r}},remove:function(t,e,r){var a=t[e];return delete t[e],{newDocument:r,removed:a}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:function(t,e,r){let a=qg(r,this.path);a&&(a=Hs(a));const n=id(r,{op:"remove",path:this.from}).removed;return id(r,{op:"add",path:this.path,value:n}),{newDocument:r,removed:a}},copy:function(t,e,r){const a=qg(r,this.from);return id(r,{op:"add",path:this.path,value:Hs(a)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Jc(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}};var wS={add:function(t,e,r){return zg(e)?t.splice(e,0,this.value):t[e]=this.value,{newDocument:r,index:e}},remove:function(t,e,r){var a=t.splice(e,1);return{newDocument:r,removed:a[0]}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:gs.move,copy:gs.copy,test:gs.test,_get:gs._get};function qg(t,e){if(e=="")return t;var r={op:"_get",path:e};return id(t,r),r.value}function id(t,e,r=!1,a=!0,n=!0,i=0){if(r&&(typeof r=="function"?r(e,0,t,e.path):$g(e,0)),e.path===""){let l={newDocument:t};if(e.op==="add")return l.newDocument=e.value,l;if(e.op==="replace")return l.newDocument=e.value,l.removed=t,l;if(e.op==="move"||e.op==="copy")return l.newDocument=qg(t,e.from),e.op==="move"&&(l.removed=t),l;if(e.op==="test"){if(l.test=Jc(t,e.value),l.test===!1)throw new kt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return l.newDocument=t,l}else{if(e.op==="remove")return l.removed=t,l.newDocument=null,l;if(e.op==="_get")return e.value=t,l;if(r)throw new kt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",i,e,t);return l}}else{a||(t=Hs(t));const s=(e.path||"").split("/");let o=t,d=1,u=s.length,c,p,A;for(typeof r=="function"?A=r:A=$g;;){if(p=s[d],p&&p.indexOf("~")!=-1&&(p=BS(p)),n&&(p=="__proto__"||p=="prototype"&&d>0&&s[d-1]=="constructor"))throw new TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(r&&c===void 0&&(o[p]===void 0?c=s.slice(0,d).join("/"):d==u-1&&(c=e.path),c!==void 0&&A(e,0,t,c)),d++,Array.isArray(o)){if(p==="-")p=o.length;else{if(r&&!zg(p))throw new kt("Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index","OPERATION_PATH_ILLEGAL_ARRAY_INDEX",i,e,t);zg(p)&&(p=~~p)}if(d>=u){if(r&&e.op==="add"&&p>o.length)throw new kt("The specified index MUST NOT be greater than the number of elements in the array","OPERATION_VALUE_OUT_OF_BOUNDS",i,e,t);const m=wS[e.op].call(e,o,p,t);if(m.test===!1)throw new kt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return m}}else if(d>=u){const m=gs[e.op].call(e,o,p,t);if(m.test===!1)throw new kt("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return m}if(o=o[p],r&&d<u&&(!o||typeof o!="object"))throw new kt("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",i,e,t)}}}function xc(t,e,r,a=!0,n=!0){if(r&&!Array.isArray(e))throw new kt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");a||(t=Hs(t));const i=new Array(e.length);for(let l=0,s=e.length;l<s;l++)i[l]=id(t,e[l],r,!0,n,l),t=i[l].newDocument;return i.newDocument=t,i}function $g(t,e,r,a){if(typeof t!="object"||t===null||Array.isArray(t))throw new kt("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if(gs[t.op]){if(typeof t.path!="string")throw new kt("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new kt('Operation `path` property must start with "/"',"OPERATION_PATH_INVALID",e,t,r);if((t.op==="move"||t.op==="copy")&&typeof t.from!="string")throw new kt("Operation `from` property is not present (applicable in `move` and `copy` operations)","OPERATION_FROM_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&t.value===void 0)throw new kt("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&jg(t.value))throw new kt("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED",e,t,r);if(r){if(t.op=="add"){var n=t.path.split("/").length,i=a.split("/").length;if(n!==i+1&&n!==i)throw new kt("Cannot perform an `add` operation at the desired path","OPERATION_PATH_CANNOT_ADD",e,t,r)}else if(t.op==="replace"||t.op==="remove"||t.op==="_get"){if(t.path!==a)throw new kt("Cannot perform the operation at a path that does not exist","OPERATION_PATH_UNRESOLVABLE",e,t,r)}else if(t.op==="move"||t.op==="copy"){var l={op:"_get",path:t.from,value:void 0},s=bS([l],r);if(s&&s.name==="OPERATION_PATH_UNRESOLVABLE")throw new kt("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new kt("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function bS(t,e,r){try{if(!Array.isArray(t))throw new kt("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)xc(Hs(e),Hs(t),r||!0);else{r=r||$g;for(var a=0;a<t.length;a++)r(t[a],a,e,void 0)}}catch(n){if(n instanceof kt)return n;throw n}}function Jc(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){var r=Array.isArray(t),a=Array.isArray(e),n,i,l;if(r&&a){if(i=t.length,i!=e.length)return!1;for(n=i;n--!==0;)if(!Jc(t[n],e[n]))return!1;return!0}if(r!=a)return!1;var s=Object.keys(t);if(i=s.length,i!==Object.keys(e).length)return!1;for(n=i;n--!==0;)if(!e.hasOwnProperty(s[n]))return!1;for(n=i;n--!==0;)if(l=s[n],!Jc(t[l],e[l]))return!1;return!0}return t!==t&&e!==e}let El=class eA extends ReadableStream{constructor(){super(...arguments),Object.defineProperty(this,"reader",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}ensureReader(){this.reader||(this.reader=this.getReader())}async next(){this.ensureReader();try{const e=await this.reader.read();return e.done?(this.reader.releaseLock(),{done:!0,value:void 0}):{done:!1,value:e.value}}catch(e){throw this.reader.releaseLock(),e}}async return(){if(this.ensureReader(),this.locked){const e=this.reader.cancel();this.reader.releaseLock(),await e}return{done:!0,value:void 0}}async throw(e){if(this.ensureReader(),this.locked){const r=this.reader.cancel();this.reader.releaseLock(),await r}throw e}[Symbol.asyncIterator](){return this}static fromReadableStream(e){const r=e.getReader();return new eA({start(a){return n();function n(){return r.read().then(({done:i,value:l})=>{if(i){a.close();return}return a.enqueue(l),n()})}},cancel(){r.releaseLock()}})}static fromAsyncGenerator(e){return new eA({async pull(r){const{value:a,done:n}=await e.next();n&&r.close(),r.enqueue(a)},async cancel(r){await e.return(r)}})}};function j3(t,e=2){const r=Array.from({length:e},()=>[]);return r.map(async function*(n){for(;;)if(n.length===0){const i=await t.next();for(const l of r)l.push(i)}else{if(n[0].done)return;yield n.shift().value}})}function oi(t,e){if(Array.isArray(t)&&Array.isArray(e))return t.concat(e);if(typeof t=="string"&&typeof e=="string")return t+e;if(typeof t=="number"&&typeof e=="number")return t+e;if("concat"in t&&typeof t.concat=="function")return t.concat(e);if(typeof t=="object"&&typeof e=="object"){const r={...t};for(const[a,n]of Object.entries(e))a in r&&!Array.isArray(r[a])?r[a]=oi(r[a],n):r[a]=n;return r}else throw new Error(`Cannot concat ${typeof t} and ${typeof e}`)}let Ps=class{constructor(e,r){Object.defineProperty(this,"generator",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"setup",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"firstResult",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"firstResultUsed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),this.generator=e,this.setup=new Promise((a,n)=>{this.firstResult=e.next(),r?this.firstResult.then(r).then(a,n):this.firstResult.then(i=>a(void 0),n)})}async next(...e){return this.firstResultUsed?this.generator.next(...e):(this.firstResultUsed=!0,this.firstResult)}async return(e){return this.generator.return(e)}async throw(e){return this.generator.throw(e)}[Symbol.asyncIterator](){return this}};async function KS(t,e,r,...a){const n=new Ps(e,r),i=await n.setup;return{output:t(n,i,...a),setup:i}}let xn=class{constructor(e){Object.defineProperty(this,"ops",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.ops=e.ops??[]}concat(e){const r=this.ops.concat(e.ops),a=xc({},r);return new q3({ops:r,state:a[a.length-1].newDocument})}},q3=class tA extends xn{constructor(e){super(e),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.state=e.state}concat(e){const r=this.ops.concat(e.ops),a=xc(this.state,e.ops);return new tA({ops:r,state:a[a.length-1].newDocument})}static fromRunLogPatch(e){const r=xc({},e.ops);return new tA({ops:e.ops,state:r[r.length-1].newDocument})}};async function Zw(t,e){if(e==="original")throw new Error("Do not assign inputs with original schema drop the key for now. When inputs are added to streamLog they should be added with standardized schema for streaming events.");const{inputs:r}=t;if(["retriever","llm","prompt"].includes(t.run_type))return r;if(!(Object.keys(r).length===1&&(r==null?void 0:r.input)===""))return r.input}async function Xw(t,e){const{outputs:r}=t;return e==="original"||["retriever","llm","prompt"].includes(t.run_type)?r:r!==void 0&&Object.keys(r).length===1&&(r==null?void 0:r.output)!==void 0?r.output:r}function fS(t){return t!==void 0&&t.message!==void 0}let Hw=class extends O0{constructor(e){super({_awaitHandler:!0,...e}),Object.defineProperty(this,"autoClose",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"includeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_schemaFormat",{enumerable:!0,configurable:!0,writable:!0,value:"original"}),Object.defineProperty(this,"rootId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"keyMapByRunId",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"counterMapByRunName",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"transformStream",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"writer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"receiveStream",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"log_stream_tracer"}),this.autoClose=(e==null?void 0:e.autoClose)??!0,this.includeNames=e==null?void 0:e.includeNames,this.includeTypes=e==null?void 0:e.includeTypes,this.includeTags=e==null?void 0:e.includeTags,this.excludeNames=e==null?void 0:e.excludeNames,this.excludeTypes=e==null?void 0:e.excludeTypes,this.excludeTags=e==null?void 0:e.excludeTags,this._schemaFormat=(e==null?void 0:e._schemaFormat)??this._schemaFormat,this.transformStream=new TransformStream,this.writer=this.transformStream.writable.getWriter(),this.receiveStream=El.fromReadableStream(this.transformStream.readable)}[Symbol.asyncIterator](){return this.receiveStream}async persistRun(e){}_includeRun(e){if(e.id===this.rootId)return!1;const r=e.tags??[];let a=this.includeNames===void 0&&this.includeTags===void 0&&this.includeTypes===void 0;return this.includeNames!==void 0&&(a=a||this.includeNames.includes(e.name)),this.includeTypes!==void 0&&(a=a||this.includeTypes.includes(e.run_type)),this.includeTags!==void 0&&(a=a||r.find(n=>{var i;return(i=this.includeTags)==null?void 0:i.includes(n)})!==void 0),this.excludeNames!==void 0&&(a=a&&!this.excludeNames.includes(e.name)),this.excludeTypes!==void 0&&(a=a&&!this.excludeTypes.includes(e.run_type)),this.excludeTags!==void 0&&(a=a&&r.every(n=>{var i;return!((i=this.excludeTags)!=null&&i.includes(n))})),a}async*tapOutputIterable(e,r){for await(const a of r){if(e!==this.rootId){const n=this.keyMapByRunId[e];n&&await this.writer.write(new xn({ops:[{op:"add",path:`/logs/${n}/streamed_output/-`,value:a}]}))}yield a}}async onRunCreate(e){var n;if(this.rootId===void 0&&(this.rootId=e.id,await this.writer.write(new xn({ops:[{op:"replace",path:"",value:{id:e.id,name:e.name,type:e.run_type,streamed_output:[],final_output:void 0,logs:{}}}]}))),!this._includeRun(e))return;this.counterMapByRunName[e.name]===void 0&&(this.counterMapByRunName[e.name]=0),this.counterMapByRunName[e.name]+=1;const r=this.counterMapByRunName[e.name];this.keyMapByRunId[e.id]=r===1?e.name:`${e.name}:${r}`;const a={id:e.id,name:e.name,type:e.run_type,tags:e.tags??[],metadata:((n=e.extra)==null?void 0:n.metadata)??{},start_time:new Date(e.start_time).toISOString(),streamed_output:[],streamed_output_str:[],final_output:void 0,end_time:void 0};this._schemaFormat==="streaming_events"&&(a.inputs=await Zw(e,this._schemaFormat)),await this.writer.write(new xn({ops:[{op:"add",path:`/logs/${this.keyMapByRunId[e.id]}`,value:a}]}))}async onRunUpdate(e){try{const r=this.keyMapByRunId[e.id];if(r===void 0)return;const a=[];this._schemaFormat==="streaming_events"&&a.push({op:"replace",path:`/logs/${r}/inputs`,value:await Zw(e,this._schemaFormat)}),a.push({op:"add",path:`/logs/${r}/final_output`,value:await Xw(e,this._schemaFormat)}),e.end_time!==void 0&&a.push({op:"add",path:`/logs/${r}/end_time`,value:new Date(e.end_time).toISOString()});const n=new xn({ops:a});await this.writer.write(n)}finally{if(e.id===this.rootId){const r=new xn({ops:[{op:"replace",path:"/final_output",value:await Xw(e,this._schemaFormat)}]});await this.writer.write(r),this.autoClose&&await this.writer.close()}}}async onLLMNewToken(e,r,a){const n=this.keyMapByRunId[e.id];if(n===void 0)return;const i=e.inputs.messages!==void 0;let l;i?fS(a==null?void 0:a.chunk)?l=a==null?void 0:a.chunk:l=new kR(r):l=r;const s=new xn({ops:[{op:"add",path:`/logs/${n}/streamed_output_str/-`,value:r},{op:"add",path:`/logs/${n}/streamed_output/-`,value:l}]});await this.writer.write(s)}},QS=class{getStore(){}run(e,r){return r()}},WS=class{constructor(){Object.defineProperty(this,"asyncLocalStorage",{enumerable:!0,configurable:!0,writable:!0,value:new QS}),Object.defineProperty(this,"hasBeenInitialized",{enumerable:!0,configurable:!0,writable:!0,value:!1})}getInstance(){return this.asyncLocalStorage}initializeGlobalInstance(e){this.hasBeenInitialized||(this.hasBeenInitialized=!0,this.asyncLocalStorage=e)}};const Ld=new WS,wm=25;async function Al(t){return bl.configure(t==null?void 0:t.callbacks,void 0,t==null?void 0:t.tags,void 0,t==null?void 0:t.metadata)}function Vw(...t){const e={};for(const r of t.filter(a=>!!a))for(const a of Object.keys(r))if(a==="metadata")e[a]={...e[a],...r[a]};else if(a==="tags"){const n=e[a]??[];e[a]=[...new Set(n.concat(r[a]??[]))]}else if(a==="configurable")e[a]={...e[a],...r[a]};else if(a==="callbacks"){const n=e.callbacks,i=r.callbacks;if(Array.isArray(i))if(!n)e.callbacks=i;else if(Array.isArray(n))e.callbacks=n.concat(i);else{const l=n.copy();for(const s of i)l.addHandler(Fc(s),!0);e.callbacks=l}else if(i)if(!n)e.callbacks=i;else if(Array.isArray(n)){const l=i.copy();for(const s of n)l.addHandler(Fc(s),!0);e.callbacks=l}else e.callbacks=new bl(i._parentRunId,{handlers:n.handlers.concat(i.handlers),inheritableHandlers:n.inheritableHandlers.concat(i.inheritableHandlers),tags:Array.from(new Set(n.tags.concat(i.tags))),inheritableTags:Array.from(new Set(n.inheritableTags.concat(i.inheritableTags))),metadata:{...n.metadata,...i.metadata}})}else{const n=a;e[n]=r[n]??e[n]}return e}const vS=new Set(["string","number","boolean"]);function Lt(t){var a;const e=t??Ld.getInstance().getStore();let r={tags:[],metadata:{},callbacks:void 0,recursionLimit:25,runId:void 0};if(e&&(r={...r,...e}),e!=null&&e.configurable)for(const n of Object.keys(e.configurable))vS.has(typeof e.configurable[n])&&!((a=r.metadata)!=null&&a[n])&&(r.metadata||(r.metadata={}),r.metadata[n]=e.configurable[n]);return r}function Hr(t={},{callbacks:e,maxConcurrency:r,recursionLimit:a,runName:n,configurable:i,runId:l}={}){const s=Lt(t);return e!==void 0&&(delete s.runName,s.callbacks=e),a!==void 0&&(s.recursionLimit=a),r!==void 0&&(s.maxConcurrency=r),n!==void 0&&(s.runName=n),i!==void 0&&(s.configurable={...s.configurable,...i}),l!==void 0&&delete s.runId,s}const FS=[400,401,402,403,404,405,406,407,409],yS=t=>{var r,a;if(t.message.startsWith("Cancel")||t.message.startsWith("AbortError")||t.name==="AbortError"||(t==null?void 0:t.code)==="ECONNABORTED")throw t;const e=((r=t==null?void 0:t.response)==null?void 0:r.status)??(t==null?void 0:t.status);if(e&&FS.includes(+e))throw t;if(((a=t==null?void 0:t.error)==null?void 0:a.code)==="insufficient_quota"){const n=new Error(t==null?void 0:t.message);throw n.name="InsufficientQuotaError",n}};let RS=class{constructor(e){Object.defineProperty(this,"maxConcurrency",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxRetries",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"onFailedAttempt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxConcurrency=e.maxConcurrency??1/0,this.maxRetries=e.maxRetries??6,this.onFailedAttempt=e.onFailedAttempt??yS;const r="default"in wn?wn.default:wn;this.queue=new r({concurrency:this.maxConcurrency})}call(e,...r){return this.queue.add(()=>Wc(()=>e(...r).catch(a=>{throw a instanceof Error?a:new Error(a)}),{onFailedAttempt:this.onFailedAttempt,retries:this.maxRetries,randomize:!0}),{throwOnTimeout:!0})}callWithOptions(e,r,...a){return e.signal?Promise.race([this.call(r,...a),new Promise((n,i)=>{var l;(l=e.signal)==null||l.addEventListener("abort",()=>{i(new Error("AbortError"))})})]):this.call(r,...a)}fetch(...e){return this.call(()=>fetch(...e).then(r=>r.ok?r:Promise.reject(r)))}},$3=class extends O0{constructor({config:e,onStart:r,onEnd:a,onError:n}){super({_awaitHandler:!0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RootListenersTracer"}),Object.defineProperty(this,"rootId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnStart",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnEnd",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnError",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.config=e,this.argOnStart=r,this.argOnEnd=a,this.argOnError=n}persistRun(e){return Promise.resolve()}async onRunCreate(e){this.rootId||(this.rootId=e.id,this.argOnStart&&(this.argOnStart.length===1?await this.argOnStart(e):this.argOnStart.length===2&&await this.argOnStart(e,this.config)))}async onRunUpdate(e){e.id===this.rootId&&(e.error?this.argOnError&&(this.argOnError.length===1?await this.argOnError(e):this.argOnError.length===2&&await this.argOnError(e,this.config)):this.argOnEnd&&(this.argOnEnd.length===1?await this.argOnEnd(e):this.argOnEnd.length===2&&await this.argOnEnd(e,this.config)))}};function eQ(t){return t?t.lc_runnable:!1}let ES=class{constructor(e){Object.defineProperty(this,"includeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.includeNames=e.includeNames,this.includeTypes=e.includeTypes,this.includeTags=e.includeTags,this.excludeNames=e.excludeNames,this.excludeTypes=e.excludeTypes,this.excludeTags=e.excludeTags}includeEvent(e,r){let a=this.includeNames===void 0&&this.includeTypes===void 0&&this.includeTags===void 0;const n=e.tags??[];return this.includeNames!==void 0&&(a=a||this.includeNames.includes(e.name)),this.includeTypes!==void 0&&(a=a||this.includeTypes.includes(r)),this.includeTags!==void 0&&(a=a||n.some(i=>{var l;return(l=this.includeTags)==null?void 0:l.includes(i)})),this.excludeNames!==void 0&&(a=a&&!this.excludeNames.includes(e.name)),this.excludeTypes!==void 0&&(a=a&&!this.excludeTypes.includes(r)),this.excludeTags!==void 0&&(a=a&&n.every(i=>{var l;return!((l=this.excludeTags)!=null&&l.includes(i))})),a}};const GS=Symbol("Let zodToJsonSchema decide on which parser to use"),Yw={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",emailStrategy:"format:email",base64Strategy:"contentEncoding:base64"},SS=t=>typeof t=="string"?{...Yw,name:t}:{...Yw,...t},ZS=t=>{const e=SS(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([a,n])=>[n._def,{def:n._def,path:[...e.basePath,e.definitionPath,a],jsonSchema:void 0}]))}};function tQ(t,e,r,a){a!=null&&a.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function mt(t,e,r,a,n){t[e]=r,tQ(t,e,a,n)}function XS(){return{}}function HS(t,e){var a,n;const r={type:"array"};return((n=(a=t.type)==null?void 0:a._def)==null?void 0:n.typeName)!==re.ZodAny&&(r.items=et(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&mt(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&mt(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(mt(r,"minItems",t.exactLength.value,t.exactLength.message,e),mt(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function VS(t,e){const r={type:"integer",format:"int64"};if(!t.checks)return r;for(const a of t.checks)switch(a.kind){case"min":e.target==="jsonSchema7"?a.inclusive?mt(r,"minimum",a.value,a.message,e):mt(r,"exclusiveMinimum",a.value,a.message,e):(a.inclusive||(r.exclusiveMinimum=!0),mt(r,"minimum",a.value,a.message,e));break;case"max":e.target==="jsonSchema7"?a.inclusive?mt(r,"maximum",a.value,a.message,e):mt(r,"exclusiveMaximum",a.value,a.message,e):(a.inclusive||(r.exclusiveMaximum=!0),mt(r,"maximum",a.value,a.message,e));break;case"multipleOf":mt(r,"multipleOf",a.value,a.message,e);break}return r}function YS(){return{type:"boolean"}}function NS(t,e){return et(t.type._def,e)}const LS=(t,e)=>et(t.innerType._def,e);function rQ(t,e,r){const a=r??e.dateStrategy;if(Array.isArray(a))return{anyOf:a.map((n,i)=>rQ(t,e,n))};switch(a){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return TS(t,e)}}const TS=(t,e)=>{const r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(const a of t.checks)switch(a.kind){case"min":mt(r,"minimum",a.value,a.message,e);break;case"max":mt(r,"maximum",a.value,a.message,e);break}return r};function kS(t,e){return{...et(t.innerType._def,e),default:t.defaultValue()}}function US(t,e){return e.effectStrategy==="input"?et(t.schema._def,e):{}}function _S(t){return{type:"string",enum:t.values}}const IS=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function DS(t,e){const r=[et(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),et(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(i=>!!i);let a=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0;const n=[];return r.forEach(i=>{if(IS(i))n.push(...i.allOf),i.unevaluatedProperties===void 0&&(a=void 0);else{let l=i;if("additionalProperties"in i&&i.additionalProperties===!1){const{additionalProperties:s,...o}=i;l=o}else a=void 0;n.push(l)}}),n.length?{allOf:n,...a}:void 0}function MS(t,e){const r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}const Hi={cuid:"^[cC][^\\s-]{8,}$",cuid2:"^[a-z][a-z0-9]*$",ulid:"^[0-9A-HJKMNP-TV-Z]{26}$",email:"^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_+-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$",emoji:"^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",uuid:"^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$",ipv4:"^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$",ipv6:"^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$",base64:"^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$",nanoid:"^[a-zA-Z0-9_-]{21}$"};function aQ(t,e){const r={type:"string"};function a(n){return e.patternStrategy==="escape"?xS(n):n}if(t.checks)for(const n of t.checks)switch(n.kind){case"min":mt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":mt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":oa(r,"email",n.message,e);break;case"format:idn-email":oa(r,"idn-email",n.message,e);break;case"pattern:zod":da(r,Hi.email,n.message,e);break}break;case"url":oa(r,"uri",n.message,e);break;case"uuid":oa(r,"uuid",n.message,e);break;case"regex":da(r,n.regex.source,n.message,e);break;case"cuid":da(r,Hi.cuid,n.message,e);break;case"cuid2":da(r,Hi.cuid2,n.message,e);break;case"startsWith":da(r,"^"+a(n.value),n.message,e);break;case"endsWith":da(r,a(n.value)+"$",n.message,e);break;case"datetime":oa(r,"date-time",n.message,e);break;case"date":oa(r,"date",n.message,e);break;case"time":oa(r,"time",n.message,e);break;case"duration":oa(r,"duration",n.message,e);break;case"length":mt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),mt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{da(r,a(n.value),n.message,e);break}case"ip":{n.version!=="v6"&&oa(r,"ipv4",n.message,e),n.version!=="v4"&&oa(r,"ipv6",n.message,e);break}case"emoji":da(r,Hi.emoji,n.message,e);break;case"ulid":{da(r,Hi.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{oa(r,"binary",n.message,e);break}case"contentEncoding:base64":{mt(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{da(r,Hi.base64,n.message,e);break}}break}case"nanoid":da(r,Hi.nanoid,n.message,e)}return r}const xS=t=>Array.from(t).map(e=>/[a-zA-Z0-9]/.test(e)?e:`\\${e}`).join(""),oa=(t,e,r,a)=>{var n;t.format||(n=t.anyOf)!=null&&n.some(i=>i.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&a.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&a.errorMessages&&{errorMessage:{format:r}}})):mt(t,"format",e,r,a)},da=(t,e,r,a)=>{var n;t.pattern||(n=t.allOf)!=null&&n.some(i=>i.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&a.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:e,...r&&a.errorMessages&&{errorMessage:{pattern:r}}})):mt(t,"pattern",e,r,a)};function nQ(t,e){var a,n,i,l;if(e.target==="openApi3"&&((a=t.keyType)==null?void 0:a._def.typeName)===re.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((s,o)=>({...s,[o]:et(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??{}}),{}),additionalProperties:!1};const r={type:"object",additionalProperties:et(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??{}};if(e.target==="openApi3")return r;if(((n=t.keyType)==null?void 0:n._def.typeName)===re.ZodString&&((i=t.keyType._def.checks)!=null&&i.length)){const s=Object.entries(aQ(t.keyType._def,e)).reduce((o,[d,u])=>d==="type"?o:{...o,[d]:u},{});return{...r,propertyNames:s}}else if(((l=t.keyType)==null?void 0:l._def.typeName)===re.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};return r}function JS(t,e){if(e.mapStrategy==="record")return nQ(t,e);const r=et(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||{},a=et(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||{};return{type:"array",maxItems:125,items:{type:"array",items:[r,a],minItems:2,maxItems:2}}}function OS(t){const e=t.values,a=Object.keys(t.values).filter(i=>typeof e[e[i]]!="number").map(i=>e[i]),n=Array.from(new Set(a.map(i=>typeof i)));return{type:n.length===1?n[0]==="string"?"string":"number":["string","number"],enum:a}}function PS(){return{not:{}}}function zS(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}const Oc={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function jS(t,e){if(e.target==="openApi3")return Nw(t,e);const r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(a=>a._def.typeName in Oc&&(!a._def.checks||!a._def.checks.length))){const a=r.reduce((n,i)=>{const l=Oc[i._def.typeName];return l&&!n.includes(l)?[...n,l]:n},[]);return{type:a.length>1?a:a[0]}}else if(r.every(a=>a._def.typeName==="ZodLiteral"&&!a.description)){const a=r.reduce((n,i)=>{const l=typeof i._def.value;switch(l){case"string":case"number":case"boolean":return[...n,l];case"bigint":return[...n,"integer"];case"object":if(i._def.value===null)return[...n,"null"];case"symbol":case"undefined":case"function":default:return n}},[]);if(a.length===r.length){const n=a.filter((i,l,s)=>s.indexOf(i)===l);return{type:n.length>1?n:n[0],enum:r.reduce((i,l)=>i.includes(l._def.value)?i:[...i,l._def.value],[])}}}else if(r.every(a=>a._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((a,n)=>[...a,...n._def.values.filter(i=>!a.includes(i))],[])};return Nw(t,e)}const Nw=(t,e)=>{const r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((a,n)=>et(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${n}`]})).filter(a=>!!a&&(!e.strictUnions||typeof a=="object"&&Object.keys(a).length>0));return r.length?{anyOf:r}:void 0};function qS(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Oc[t.innerType._def.typeName],nullable:!0}:{type:[Oc[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){const a=et(t.innerType._def,{...e,currentPath:[...e.currentPath]});return a&&"$ref"in a?{allOf:[a],nullable:!0}:a&&{...a,nullable:!0}}const r=et(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function $S(t,e){const r={type:"number"};if(!t.checks)return r;for(const a of t.checks)switch(a.kind){case"int":r.type="integer",tQ(r,"type",a.message,e);break;case"min":e.target==="jsonSchema7"?a.inclusive?mt(r,"minimum",a.value,a.message,e):mt(r,"exclusiveMinimum",a.value,a.message,e):(a.inclusive||(r.exclusiveMinimum=!0),mt(r,"minimum",a.value,a.message,e));break;case"max":e.target==="jsonSchema7"?a.inclusive?mt(r,"maximum",a.value,a.message,e):mt(r,"exclusiveMaximum",a.value,a.message,e):(a.inclusive||(r.exclusiveMaximum=!0),mt(r,"maximum",a.value,a.message,e));break;case"multipleOf":mt(r,"multipleOf",a.value,a.message,e);break}return r}function eZ(t,e){return e.removeAdditionalStrategy==="strict"?t.catchall._def.typeName==="ZodNever"?t.unknownKeys!=="strict":et(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??!0:t.catchall._def.typeName==="ZodNever"?t.unknownKeys==="passthrough":et(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??!0}function tZ(t,e){const r={type:"object",...Object.entries(t.shape()).reduce((a,[n,i])=>{if(i===void 0||i._def===void 0)return a;const l=et(i._def,{...e,currentPath:[...e.currentPath,"properties",n],propertyPath:[...e.currentPath,"properties",n]});return l===void 0?a:{properties:{...a.properties,[n]:l},required:i.isOptional()?a.required:[...a.required,n]}},{properties:{},required:[]}),additionalProperties:eZ(t,e)};return r.required.length||delete r.required,r}const rZ=(t,e)=>{var a;if(e.currentPath.toString()===((a=e.propertyPath)==null?void 0:a.toString()))return et(t.innerType._def,e);const r=et(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{}},aZ=(t,e)=>{if(e.pipeStrategy==="input")return et(t.in._def,e);if(e.pipeStrategy==="output")return et(t.out._def,e);const r=et(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),a=et(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,a].filter(n=>n!==void 0)}};function nZ(t,e){return et(t.type._def,e)}function iZ(t,e){const a={type:"array",uniqueItems:!0,items:et(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&mt(a,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&mt(a,"maxItems",t.maxSize.value,t.maxSize.message,e),a}function lZ(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,a)=>et(r._def,{...e,currentPath:[...e.currentPath,"items",`${a}`]})).reduce((r,a)=>a===void 0?r:[...r,a],[]),additionalItems:et(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,a)=>et(r._def,{...e,currentPath:[...e.currentPath,"items",`${a}`]})).reduce((r,a)=>a===void 0?r:[...r,a],[])}}function sZ(){return{not:{}}}function oZ(){return{}}const dZ=(t,e)=>et(t.innerType._def,e);function et(t,e,r=!1){var l;const a=e.seen.get(t);if(e.override){const s=(l=e.override)==null?void 0:l.call(e,t,e,a,r);if(s!==GS)return s}if(a&&!r){const s=uZ(a,e);if(s!==void 0)return s}const n={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,n);const i=cZ(t,t.typeName,e);return i&&mZ(t,e,i),n.jsonSchema=i,i}const uZ=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:pZ(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,a)=>e.currentPath[a]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),{}):e.$refStrategy==="seen"?{}:void 0}},pZ=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")},cZ=(t,e,r)=>{switch(e){case re.ZodString:return aQ(t,r);case re.ZodNumber:return $S(t,r);case re.ZodObject:return tZ(t,r);case re.ZodBigInt:return VS(t,r);case re.ZodBoolean:return YS();case re.ZodDate:return rQ(t,r);case re.ZodUndefined:return sZ();case re.ZodNull:return zS(r);case re.ZodArray:return HS(t,r);case re.ZodUnion:case re.ZodDiscriminatedUnion:return jS(t,r);case re.ZodIntersection:return DS(t,r);case re.ZodTuple:return lZ(t,r);case re.ZodRecord:return nQ(t,r);case re.ZodLiteral:return MS(t,r);case re.ZodEnum:return _S(t);case re.ZodNativeEnum:return OS(t);case re.ZodNullable:return qS(t,r);case re.ZodOptional:return rZ(t,r);case re.ZodMap:return JS(t,r);case re.ZodSet:return iZ(t,r);case re.ZodLazy:return et(t.getter()._def,r);case re.ZodPromise:return nZ(t,r);case re.ZodNaN:case re.ZodNever:return PS();case re.ZodEffects:return US(t,r);case re.ZodAny:return XS();case re.ZodUnknown:return oZ();case re.ZodDefault:return kS(t,r);case re.ZodBranded:return NS(t,r);case re.ZodReadonly:return dZ(t,r);case re.ZodCatch:return LS(t,r);case re.ZodPipeline:return aZ(t,r);case re.ZodFunction:case re.ZodVoid:case re.ZodSymbol:return;default:return(a=>{})()}},mZ=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r),gZ=(t,e)=>{const r=ZS(e),a=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((s,[o,d])=>({...s,[o]:et(d._def,{...r,currentPath:[...r.basePath,r.definitionPath,o]},!0)??{}}),{}):void 0,n=typeof e=="string"?e:e==null?void 0:e.name,i=et(t._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1)??{},l=n===void 0?a?{...i,[r.definitionPath]:a}:i:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...a,[n]:i}};return r.target==="jsonSchema7"?l.$schema="http://json-schema.org/draft-07/schema#":r.target==="jsonSchema2019-09"&&(l.$schema="https://json-schema.org/draft/2019-09/schema#"),l};function AZ(t){return eQ(t.data)?{type:"runnable",data:{id:t.data.lc_id,name:t.data.getName()}}:{type:"schema",data:{...gZ(t.data.schema),title:t.data.name}}}class iQ{constructor(){Object.defineProperty(this,"nodes",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"edges",{enumerable:!0,configurable:!0,writable:!0,value:[]})}toJSON(){const e={};return Object.values(this.nodes).forEach((r,a)=>{e[r.id]=mf(r.id)?a:r.id}),{nodes:Object.values(this.nodes).map(r=>({id:e[r.id],...AZ(r)})),edges:this.edges.map(r=>r.data?{source:e[r.source],target:e[r.target],data:r.data}:{source:e[r.source],target:e[r.target]})}}addNode(e,r){if(r!==void 0&&this.nodes[r]!==void 0)throw new Error(`Node with id ${r} already exists`);const a=r||Sa(),n={id:a,data:e};return this.nodes[a]=n,n}removeNode(e){delete this.nodes[e.id],this.edges=this.edges.filter(r=>r.source!==e.id&&r.target!==e.id)}addEdge(e,r,a){if(this.nodes[e.id]===void 0)throw new Error(`Source node ${e.id} not in graph`);if(this.nodes[r.id]===void 0)throw new Error(`Target node ${r.id} not in graph`);const n={source:e.id,target:r.id,data:a};return this.edges.push(n),n}firstNode(){const e=new Set(this.edges.map(a=>a.target)),r=[];return Object.values(this.nodes).forEach(a=>{e.has(a.id)||r.push(a)}),r[0]}lastNode(){const e=new Set(this.edges.map(a=>a.source)),r=[];return Object.values(this.nodes).forEach(a=>{e.has(a.id)||r.push(a)}),r[0]}extend(e){Object.entries(e.nodes).forEach(([r,a])=>{this.nodes[r]=a}),this.edges=[...this.edges,...e.edges]}trimFirstNode(){const e=this.firstNode();if(e){const r=this.edges.filter(a=>a.source===e.id);(Object.keys(this.nodes).length===1||r.length===1)&&this.removeNode(e)}}trimLastNode(){const e=this.lastNode();if(e){const r=this.edges.filter(a=>a.target===e.id);(Object.keys(this.nodes).length===1||r.length===1)&&this.removeNode(e)}}}function hZ(t){const e=new TextEncoder,r=new ReadableStream({async start(a){for await(const n of t)a.enqueue(e.encode(`event: data
data: ${JSON.stringify(n)}
`));a.enqueue(e.encode(`event: end
`)),a.close()}});return El.fromReadableStream(r)}function Lw(t){return typeof t=="object"&&t!==null&&typeof t[Symbol.iterator]=="function"&&typeof t.next=="function"}function Tw(t){return typeof t=="object"&&t!==null&&typeof t[Symbol.asyncIterator]=="function"}function*kw(t,e){const r=Ld.getInstance();for(;;){const{value:a,done:n}=r.run(t,e.next.bind(e));if(n)break;yield a}}async function*Uw(t,e){const r=Ld.getInstance(),a=e[Symbol.asyncIterator]();for(;;){const{value:n,done:i}=await r.run(t,a.next.bind(e));if(i)break;yield n}}function mr(t,e){return t&&!Array.isArray(t)&&!(t instanceof Date)&&typeof t=="object"?t:{[e]:t}}let Vr=class extends Qc{constructor(){super(...arguments),Object.defineProperty(this,"lc_runnable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}getName(e){const r=this.name??this.constructor.lc_name()??this.constructor.name;return e?`${r}${e}`:r}bind(e){return new zp({bound:this,kwargs:e,config:{}})}map(){return new BZ({bound:this})}withRetry(e){return new CZ({bound:this,kwargs:{},config:{},maxAttemptNumber:e==null?void 0:e.stopAfterAttempt,...e})}withConfig(e){return new zp({bound:this,config:e,kwargs:{}})}withFallbacks(e){return new KZ({runnable:this,fallbacks:e.fallbacks})}_getOptionsList(e,r=0){if(Array.isArray(e)&&e.length!==r)throw new Error(`Passed "options" must be an array with the same length as the inputs, but got ${e.length} options for ${r} inputs`);if(Array.isArray(e))return e.map(Lt);if(r>1&&!Array.isArray(e)&&e.runId){console.warn("Provided runId will be used only for the first element of the batch.");const a=Object.fromEntries(Object.entries(e).filter(([n])=>n!=="runId"));return Array.from({length:r},(n,i)=>Lt(i===0?e:a))}return Array.from({length:r},()=>Lt(e))}async batch(e,r,a){var o;const n=this._getOptionsList(r??{},e.length),i=((o=n[0])==null?void 0:o.maxConcurrency)??(a==null?void 0:a.maxConcurrency),l=new RS({maxConcurrency:i,onFailedAttempt:d=>{throw d}}),s=e.map((d,u)=>l.call(async()=>{try{return await this.invoke(d,n[u])}catch(c){if(a!=null&&a.returnExceptions)return c;throw c}}));return Promise.all(s)}async*_streamIterator(e,r){yield this.invoke(e,r)}async stream(e,r){const a=new Ps(this._streamIterator(e,Lt(r)));return await a.setup,El.fromAsyncGenerator(a)}_separateRunnableConfigFromCallOptions(e){let r;e===void 0?r=Lt(e):r=Lt({callbacks:e.callbacks,tags:e.tags,metadata:e.metadata,runName:e.runName,configurable:e.configurable,recursionLimit:e.recursionLimit,maxConcurrency:e.maxConcurrency,runId:e.runId});const a={...e};return delete a.callbacks,delete a.tags,delete a.metadata,delete a.runName,delete a.configurable,delete a.recursionLimit,delete a.maxConcurrency,delete a.runId,[r,a]}async _callWithConfig(e,r,a){const n=Lt(a),i=await Al(n),l=await(i==null?void 0:i.handleChainStart(this.toJSON(),mr(r,"input"),n.runId,n==null?void 0:n.runType,void 0,void 0,(n==null?void 0:n.runName)??this.getName()));delete n.runId;let s;try{s=await e.call(this,r,n,l)}catch(o){throw await(l==null?void 0:l.handleChainError(o)),o}return await(l==null?void 0:l.handleChainEnd(mr(s,"output"))),s}async _batchWithConfig(e,r,a,n){const i=this._getOptionsList(a??{},r.length),l=await Promise.all(i.map(Al)),s=await Promise.all(l.map(async(d,u)=>{const c=await(d==null?void 0:d.handleChainStart(this.toJSON(),mr(r[u],"input"),i[u].runId,i[u].runType,void 0,void 0,i[u].runName??this.getName()));return delete i[u].runId,c}));let o;try{o=await e.call(this,r,i,s,n)}catch(d){throw await Promise.all(s.map(u=>u==null?void 0:u.handleChainError(d))),d}return await Promise.all(s.map(d=>d==null?void 0:d.handleChainEnd(mr(o,"output")))),o}async*_transformStreamWithConfig(e,r,a){let n,i=!0,l,s=!0;const o=Lt(a),d=await Al(o);async function*u(){for await(const p of e){if(i)if(n===void 0)n=p;else try{n=oi(n,p)}catch{n=void 0,i=!1}yield p}}let c;try{const p=await KS(r.bind(this),u(),async()=>d==null?void 0:d.handleChainStart(this.toJSON(),{input:""},o.runId,o.runType,void 0,void 0,o.runName??this.getName()),o);delete o.runId,c=p.setup;const A=C=>C.name==="log_stream_tracer",m=c==null?void 0:c.handlers.find(A);let h=p.output;m!==void 0&&c!==void 0&&(h=await m.tapOutputIterable(c.runId,p.output));for await(const C of h)if(yield C,s)if(l===void 0)l=C;else try{l=oi(l,C)}catch{l=void 0,s=!1}}catch(p){throw await(c==null?void 0:c.handleChainError(p,void 0,void 0,void 0,{inputs:mr(n,"input")})),p}await(c==null?void 0:c.handleChainEnd(l??{},void 0,void 0,void 0,{inputs:mr(n,"input")}))}getGraph(e){const r=new iQ,a=r.addNode({name:`${this.getName()}Input`,schema:Gw.any()}),n=r.addNode(this),i=r.addNode({name:`${this.getName()}Output`,schema:Gw.any()});return r.addEdge(a,n),r.addEdge(n,i),r}pipe(e){return new wZ({first:this,last:il(e)})}pick(e){return this.pipe(new QZ(e))}assign(e){return this.pipe(new fZ(new pB({steps:e})))}async*transform(e,r){let a;for await(const n of e)a===void 0?a=n:a=oi(a,n);yield*this._streamIterator(a,Lt(r))}async*streamLog(e,r,a){const n=new Hw({...a,autoClose:!1,_schemaFormat:"original"}),i=Lt(r);yield*this._streamLog(e,n,i)}async*_streamLog(e,r,a){const{callbacks:n}=a;if(n===void 0)a.callbacks=[r];else if(Array.isArray(n))a.callbacks=n.concat([r]);else{const o=n.copy();o.inheritableHandlers.push(r),a.callbacks=o}const i=this.stream(e,a);async function l(){try{const o=await i;for await(const d of o){const u=new xn({ops:[{op:"add",path:"/streamed_output/-",value:d}]});await r.writer.write(u)}}finally{await r.writer.close()}}const s=l();try{for await(const o of r)yield o}finally{await s}}async*streamEvents(e,r,a){if(r.encoding==="text/event-stream"){const n=await this._streamEvents(e,r,a);yield*hZ(n)}else yield*this._streamEvents(e,r,a)}async*_streamEvents(e,r,a){if(r.version!=="v1")throw new Error('Only version "v1" of the events schema is currently supported.');let n,i=!1;const l=Lt(r),s=l.tags??[],o=l.metadata??{},d=l.runName??this.getName(),u=new Hw({...a,autoClose:!1,_schemaFormat:"streaming_events"}),c=new ES({...a}),p=this._streamLog(e,u,l);for await(const m of p){if(n?n=n.concat(m):n=q3.fromRunLogPatch(m),n.state===void 0)throw new Error('Internal error: "streamEvents" state is missing. Please open a bug report.');if(!i){i=!0;const b={...n.state},f={run_id:b.id,event:`on_${b.type}_start`,name:d,tags:s,metadata:o,data:{input:e}};c.includeEvent(f,b.type)&&(yield f)}const h=m.ops.filter(b=>b.path.startsWith("/logs/")).map(b=>b.path.split("/")[2]),C=[...new Set(h)];for(const b of C){let f,K={};const W=n.state.logs[b];if(W.end_time===void 0?W.streamed_output.length>0?f="stream":f="start":f="end",f==="start")W.inputs!==void 0&&(K.input=W.inputs);else if(f==="end")W.inputs!==void 0&&(K.input=W.inputs),K.output=W.final_output;else if(f==="stream"){const R=W.streamed_output.length;if(R!==1)throw new Error(`Expected exactly one chunk of streamed output, got ${R} instead. Encountered in: "${W.name}"`);K={chunk:W.streamed_output[0]},W.streamed_output=[]}yield{event:`on_${W.type}_${f}`,name:W.name,run_id:W.id,tags:W.tags,metadata:W.metadata,data:K}}const{state:w}=n;if(w.streamed_output.length>0){const b=w.streamed_output.length;if(b!==1)throw new Error(`Expected exactly one chunk of streamed output, got ${b} instead. Encountered in: "${w.name}"`);const f={chunk:w.streamed_output[0]};w.streamed_output=[];const K={event:`on_${w.type}_stream`,run_id:w.id,tags:s,metadata:o,name:d,data:f};c.includeEvent(K,w.type)&&(yield K)}}const A=n==null?void 0:n.state;if(A!==void 0){const m={event:`on_${A.type}_end`,name:d,run_id:A.id,tags:s,metadata:o,data:{output:A.final_output}};c.includeEvent(m,A.type)&&(yield m)}}static isRunnable(e){return eQ(e)}withListeners({onStart:e,onEnd:r,onError:a}){return new zp({bound:this,config:{},configFactories:[n=>({callbacks:[new $3({config:n,onStart:e,onEnd:r,onError:a})]})]})}},zp=class lQ extends Vr{static lc_name(){return"RunnableBinding"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"bound",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"configFactories",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.bound=e.bound,this.kwargs=e.kwargs,this.config=e.config,this.configFactories=e.configFactories}getName(e){return this.bound.getName(e)}async _mergeConfig(...e){const r=Vw(this.config,...e);return Vw(r,...this.configFactories?await Promise.all(this.configFactories.map(async a=>await a(r))):[])}bind(e){return new this.constructor({bound:this.bound,kwargs:{...this.kwargs,...e},config:this.config})}withConfig(e){return new this.constructor({bound:this.bound,kwargs:this.kwargs,config:{...this.config,...e}})}withRetry(e){return new this.constructor({bound:this.bound.withRetry(e),kwargs:this.kwargs,config:this.config})}async invoke(e,r){return this.bound.invoke(e,await this._mergeConfig(Lt(r),this.kwargs))}async batch(e,r,a){const n=Array.isArray(r)?await Promise.all(r.map(async i=>this._mergeConfig(Lt(i),this.kwargs))):await this._mergeConfig(Lt(r),this.kwargs);return this.bound.batch(e,n,a)}async*_streamIterator(e,r){yield*this.bound._streamIterator(e,await this._mergeConfig(Lt(r),this.kwargs))}async stream(e,r){return this.bound.stream(e,await this._mergeConfig(Lt(r),this.kwargs))}async*transform(e,r){yield*this.bound.transform(e,await this._mergeConfig(Lt(r),this.kwargs))}async*streamEvents(e,r,a){yield*this.bound.streamEvents(e,{...await this._mergeConfig(Lt(r),this.kwargs),version:r.version},a)}static isRunnableBinding(e){return e.bound&&Vr.isRunnable(e.bound)}withListeners({onStart:e,onEnd:r,onError:a}){return new lQ({bound:this.bound,kwargs:this.kwargs,config:this.config,configFactories:[n=>({callbacks:[new $3({config:n,onStart:e,onEnd:r,onError:a})]})]})}},BZ=class rA extends Vr{static lc_name(){return"RunnableEach"}constructor(e){super(e),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"bound",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.bound=e.bound}bind(e){return new rA({bound:this.bound.bind(e)})}async invoke(e,r){return this._callWithConfig(this._invoke,e,r)}async _invoke(e,r,a){return this.bound.batch(e,Hr(r,{callbacks:a==null?void 0:a.getChild()}))}withListeners({onStart:e,onEnd:r,onError:a}){return new rA({bound:this.bound.withListeners({onStart:e,onEnd:r,onError:a})})}},CZ=class extends zp{static lc_name(){return"RunnableRetry"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"maxAttemptNumber",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"onFailedAttempt",{enumerable:!0,configurable:!0,writable:!0,value:()=>{}}),this.maxAttemptNumber=e.maxAttemptNumber??this.maxAttemptNumber,this.onFailedAttempt=e.onFailedAttempt??this.onFailedAttempt}_patchConfigForRetry(e,r,a){const n=e>1?`retry:attempt:${e}`:void 0;return Hr(r,{callbacks:a==null?void 0:a.getChild(n)})}async _invoke(e,r,a){return Wc(n=>super.invoke(e,this._patchConfigForRetry(n,r,a)),{onFailedAttempt:n=>this.onFailedAttempt(n,e),retries:Math.max(this.maxAttemptNumber-1,0),randomize:!0})}async invoke(e,r){return this._callWithConfig(this._invoke,e,r)}async _batch(e,r,a,n){const i={};try{await Wc(async l=>{const s=e.map((p,A)=>A).filter(p=>i[p.toString()]===void 0||i[p.toString()]instanceof Error),o=s.map(p=>e[p]),d=s.map(p=>this._patchConfigForRetry(l,r==null?void 0:r[p],a==null?void 0:a[p])),u=await super.batch(o,d,{...n,returnExceptions:!0});let c;for(let p=0;p<u.length;p+=1){const A=u[p],m=s[p];A instanceof Error&&c===void 0&&(c=A,c.input=o[p]),i[m.toString()]=A}if(c)throw c;return u},{onFailedAttempt:l=>this.onFailedAttempt(l,l.input),retries:Math.max(this.maxAttemptNumber-1,0),randomize:!0})}catch(l){if((n==null?void 0:n.returnExceptions)!==!0)throw l}return Object.keys(i).sort((l,s)=>parseInt(l,10)-parseInt(s,10)).map(l=>i[parseInt(l,10)])}async batch(e,r,a){return this._batchWithConfig(this._batch.bind(this),e,r,a)}},wZ=class Lo extends Vr{static lc_name(){return"RunnableSequence"}constructor(e){super(e),Object.defineProperty(this,"first",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"middle",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"last",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),this.first=e.first,this.middle=e.middle??this.middle,this.last=e.last,this.name=e.name}get steps(){return[this.first,...this.middle,this.last]}async invoke(e,r){const a=Lt(r),n=await Al(a),i=await(n==null?void 0:n.handleChainStart(this.toJSON(),mr(e,"input"),a.runId,void 0,void 0,void 0,a==null?void 0:a.runName));delete a.runId;let l=e,s;try{const o=[this.first,...this.middle];for(let d=0;d<o.length;d+=1)l=await o[d].invoke(l,Hr(a,{callbacks:i==null?void 0:i.getChild(`seq:step:${d+1}`)}));s=await this.last.invoke(l,Hr(a,{callbacks:i==null?void 0:i.getChild(`seq:step:${this.steps.length}`)}))}catch(o){throw await(i==null?void 0:i.handleChainError(o)),o}return await(i==null?void 0:i.handleChainEnd(mr(s,"output"))),s}async batch(e,r,a){const n=this._getOptionsList(r??{},e.length),i=await Promise.all(n.map(Al)),l=await Promise.all(i.map(async(o,d)=>{const u=await(o==null?void 0:o.handleChainStart(this.toJSON(),mr(e[d],"input"),n[d].runId,void 0,void 0,void 0,n[d].runName));return delete n[d].runId,u}));let s=e;try{for(let o=0;o<this.steps.length;o+=1)s=await this.steps[o].batch(s,l.map((u,c)=>{const p=u==null?void 0:u.getChild(`seq:step:${o+1}`);return Hr(n[c],{callbacks:p})}),a)}catch(o){throw await Promise.all(l.map(d=>d==null?void 0:d.handleChainError(o))),o}return await Promise.all(l.map(o=>o==null?void 0:o.handleChainEnd(mr(s,"output")))),s}async*_streamIterator(e,r){const a=await Al(r),{runId:n,...i}=r??{},l=await(a==null?void 0:a.handleChainStart(this.toJSON(),mr(e,"input"),n,void 0,void 0,void 0,i==null?void 0:i.runName)),s=[this.first,...this.middle,this.last];let o=!0,d;async function*u(){yield e}try{let c=s[0].transform(u(),Hr(i,{callbacks:l==null?void 0:l.getChild("seq:step:1")}));for(let p=1;p<s.length;p+=1)c=await s[p].transform(c,Hr(i,{callbacks:l==null?void 0:l.getChild(`seq:step:${p+1}`)}));for await(const p of c)if(yield p,o)if(d===void 0)d=p;else try{d=oi(d,p)}catch{d=void 0,o=!1}}catch(c){throw await(l==null?void 0:l.handleChainError(c)),c}await(l==null?void 0:l.handleChainEnd(mr(d,"output")))}getGraph(e){const r=new iQ;let a=null;return this.steps.forEach((n,i)=>{const l=n.getGraph(e);i!==0&&l.trimFirstNode(),i!==this.steps.length-1&&l.trimLastNode(),r.extend(l);const s=l.firstNode();if(!s)throw new Error(`Runnable ${n} has no first node`);a&&r.addEdge(a,s),a=l.lastNode()}),r}pipe(e){return Lo.isRunnableSequence(e)?new Lo({first:this.first,middle:this.middle.concat([this.last,e.first,...e.middle]),last:e.last,name:this.name??e.name}):new Lo({first:this.first,middle:[...this.middle,this.last],last:il(e),name:this.name})}static isRunnableSequence(e){return Array.isArray(e.middle)&&Vr.isRunnable(e)}static from([e,...r],a){return new Lo({first:il(e),middle:r.slice(0,-1).map(il),last:il(r[r.length-1]),name:a})}},pB=class sQ extends Vr{static lc_name(){return"RunnableMap"}getStepsKeys(){return Object.keys(this.steps)}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"steps",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.steps={};for(const[r,a]of Object.entries(e.steps))this.steps[r]=il(a)}static from(e){return new sQ({steps:e})}async invoke(e,r){const a=Lt(r),n=await Al(a),i=await(n==null?void 0:n.handleChainStart(this.toJSON(),{input:e},a.runId,void 0,void 0,void 0,a==null?void 0:a.runName));delete a.runId;const l={};try{await Promise.all(Object.entries(this.steps).map(async([s,o])=>{l[s]=await o.invoke(e,Hr(a,{callbacks:i==null?void 0:i.getChild(`map:key:${s}`)}))}))}catch(s){throw await(i==null?void 0:i.handleChainError(s)),s}return await(i==null?void 0:i.handleChainEnd(l)),l}async*_transform(e,r,a){const n={...this.steps},i=j3(e,Object.keys(n).length),l=new Map(Object.entries(n).map(([s,o],d)=>{const u=o.transform(i[d],Hr(a,{callbacks:r==null?void 0:r.getChild(`map:key:${s}`)}));return[s,u.next().then(c=>({key:s,gen:u,result:c}))]}));for(;l.size;){const{key:s,result:o,gen:d}=await Promise.race(l.values());l.delete(s),o.done||(yield{[s]:o.value},l.set(s,d.next().then(u=>({key:s,gen:d,result:u}))))}}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new Ps(this.transform(a(),r));return await n.setup,El.fromAsyncGenerator(n)}},bZ=class oQ extends Vr{static lc_name(){return"RunnableLambda"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"func",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.func=e.func}static from(e){return new oQ({func:e})}async _invoke(e,r,a){return new Promise((n,i)=>{const l=Hr(r,{callbacks:a==null?void 0:a.getChild(),recursionLimit:((r==null?void 0:r.recursionLimit)??wm)-1});Ld.getInstance().run(l,async()=>{try{let s=await this.func(e,{...l,config:l});if(s&&Vr.isRunnable(s)){if((r==null?void 0:r.recursionLimit)===0)throw new Error("Recursion limit reached.");s=await s.invoke(e,{...l,recursionLimit:(l.recursionLimit??wm)-1})}else if(Tw(s)){let o;for await(const d of Uw(l,s))if(o===void 0)o=d;else try{o=oi(o,d)}catch{o=d}s=o}else if(Lw(s)){let o;for(const d of kw(l,s))if(o===void 0)o=d;else try{o=oi(o,d)}catch{o=d}s=o}n(s)}catch(s){i(s)}})})}async invoke(e,r){return this._callWithConfig(this._invoke,e,r)}async*_transform(e,r,a){let n;for await(const l of e)if(n===void 0)n=l;else try{n=oi(n,l)}catch{n=l}const i=await new Promise((l,s)=>{Ld.getInstance().run(a,async()=>{try{const o=await this.func(n,{...a,config:a});l(o)}catch(o){s(o)}})});if(i&&Vr.isRunnable(i)){if((a==null?void 0:a.recursionLimit)===0)throw new Error("Recursion limit reached.");const l=await i.stream(n,Hr(a,{callbacks:r==null?void 0:r.getChild(),recursionLimit:((a==null?void 0:a.recursionLimit)??wm)-1}));for await(const s of l)yield s}else if(Tw(i))for await(const l of Uw(a,i))yield l;else if(Lw(i))for(const l of kw(a,i))yield l;else yield i}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new Ps(this.transform(a(),r));return await n.setup,El.fromAsyncGenerator(n)}},KZ=class extends Vr{static lc_name(){return"RunnableWithFallbacks"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"runnable",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fallbacks",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.runnable=e.runnable,this.fallbacks=e.fallbacks}*runnables(){yield this.runnable;for(const e of this.fallbacks)yield e}async invoke(e,r){const a=await bl.configure(r==null?void 0:r.callbacks,void 0,r==null?void 0:r.tags,void 0,r==null?void 0:r.metadata),{runId:n,...i}=r??{},l=await(a==null?void 0:a.handleChainStart(this.toJSON(),mr(e,"input"),n,void 0,void 0,void 0,i==null?void 0:i.runName));let s;for(const o of this.runnables())try{const d=await o.invoke(e,Hr(i,{callbacks:l==null?void 0:l.getChild()}));return await(l==null?void 0:l.handleChainEnd(mr(d,"output"))),d}catch(d){s===void 0&&(s=d)}throw s===void 0?new Error("No error stored at end of fallback."):(await(l==null?void 0:l.handleChainError(s)),s)}async batch(e,r,a){if(a!=null&&a.returnExceptions)throw new Error("Not implemented.");const n=this._getOptionsList(r??{},e.length),i=await Promise.all(n.map(o=>bl.configure(o==null?void 0:o.callbacks,void 0,o==null?void 0:o.tags,void 0,o==null?void 0:o.metadata))),l=await Promise.all(i.map(async(o,d)=>{const u=await(o==null?void 0:o.handleChainStart(this.toJSON(),mr(e[d],"input"),n[d].runId,void 0,void 0,void 0,n[d].runName));return delete n[d].runId,u}));let s;for(const o of this.runnables())try{const d=await o.batch(e,l.map((u,c)=>Hr(n[c],{callbacks:u==null?void 0:u.getChild()})),a);return await Promise.all(l.map((u,c)=>u==null?void 0:u.handleChainEnd(mr(d[c],"output")))),d}catch(d){s===void 0&&(s=d)}throw s?(await Promise.all(l.map(o=>o==null?void 0:o.handleChainError(s))),s):new Error("No error stored at end of fallbacks.")}};function il(t){if(typeof t=="function")return new bZ({func:t});if(Vr.isRunnable(t))return t;if(!Array.isArray(t)&&typeof t=="object"){const e={};for(const[r,a]of Object.entries(t))e[r]=il(a);return new pB({steps:e})}else throw new Error(`Expected a Runnable, function or object.
Instead got an unsupported type.`)}let fZ=class extends Vr{static lc_name(){return"RunnableAssign"}constructor(e){e instanceof pB&&(e={mapper:e}),super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"mapper",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.mapper=e.mapper}async invoke(e,r){const a=await this.mapper.invoke(e,r);return{...e,...a}}async*_transform(e,r,a){const n=this.mapper.getStepsKeys(),[i,l]=j3(e),s=this.mapper.transform(l,Hr(a,{callbacks:r==null?void 0:r.getChild()})),o=s.next();for await(const d of i){if(typeof d!="object"||Array.isArray(d))throw new Error(`RunnableAssign can only be used with objects as input, got ${typeof d}`);const u=Object.fromEntries(Object.entries(d).filter(([c])=>!n.includes(c)));Object.keys(u).length>0&&(yield u)}yield(await o).value;for await(const d of s)yield d}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new Ps(this.transform(a(),r));return await n.setup,El.fromAsyncGenerator(n)}},QZ=class extends Vr{static lc_name(){return"RunnablePick"}constructor(e){(typeof e=="string"||Array.isArray(e))&&(e={keys:e}),super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"keys",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.keys=e.keys}async _pick(e){if(typeof this.keys=="string")return e[this.keys];{const r=this.keys.map(a=>[a,e[a]]).filter(a=>a[1]!==void 0);return r.length===0?void 0:Object.fromEntries(r)}}async invoke(e,r){return this._callWithConfig(this._pick.bind(this),e,r)}async*_transform(e){for await(const r of e){const a=await this._pick(r);a!==void 0&&(yield a)}}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new Ps(this.transform(a(),r));return await n.setup,El.fromAsyncGenerator(n)}};class WZ extends Vr{constructor(){super(...arguments),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","documents","transformers"]})}invoke(e,r){return this.transformDocuments(e)}}var a1={};a1.byteLength=yZ;a1.toByteArray=EZ;a1.fromByteArray=ZZ;var Ha=[],Jr=[],vZ=typeof Uint8Array<"u"?Uint8Array:Array,bm="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var Ol=0,FZ=bm.length;Ol<FZ;++Ol)Ha[Ol]=bm[Ol],Jr[bm.charCodeAt(Ol)]=Ol;Jr["-".charCodeAt(0)]=62;Jr["_".charCodeAt(0)]=63;function dQ(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");r===-1&&(r=e);var a=r===e?0:4-r%4;return[r,a]}function yZ(t){var e=dQ(t),r=e[0],a=e[1];return(r+a)*3/4-a}function RZ(t,e,r){return(e+r)*3/4-r}function EZ(t){var e,r=dQ(t),a=r[0],n=r[1],i=new vZ(RZ(t,a,n)),l=0,s=n>0?a-4:a,o;for(o=0;o<s;o+=4)e=Jr[t.charCodeAt(o)]<<18|Jr[t.charCodeAt(o+1)]<<12|Jr[t.charCodeAt(o+2)]<<6|Jr[t.charCodeAt(o+3)],i[l++]=e>>16&255,i[l++]=e>>8&255,i[l++]=e&255;return n===2&&(e=Jr[t.charCodeAt(o)]<<2|Jr[t.charCodeAt(o+1)]>>4,i[l++]=e&255),n===1&&(e=Jr[t.charCodeAt(o)]<<10|Jr[t.charCodeAt(o+1)]<<4|Jr[t.charCodeAt(o+2)]>>2,i[l++]=e>>8&255,i[l++]=e&255),i}function GZ(t){return Ha[t>>18&63]+Ha[t>>12&63]+Ha[t>>6&63]+Ha[t&63]}function SZ(t,e,r){for(var a,n=[],i=e;i<r;i+=3)a=(t[i]<<16&16711680)+(t[i+1]<<8&65280)+(t[i+2]&255),n.push(GZ(a));return n.join("")}function ZZ(t){for(var e,r=t.length,a=r%3,n=[],i=16383,l=0,s=r-a;l<s;l+=i)n.push(SZ(t,l,l+i>s?s:l+i));return a===1?(e=t[r-1],n.push(Ha[e>>2]+Ha[e<<4&63]+"==")):a===2&&(e=(t[r-2]<<8)+t[r-1],n.push(Ha[e>>10]+Ha[e>>4&63]+Ha[e<<2&63]+"=")),n.join("")}var XZ=Object.defineProperty,HZ=(t,e,r)=>e in t?XZ(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,VZ=(t,e,r)=>(HZ(t,typeof e!="symbol"?e+"":e,r),r);function YZ(t,e){let r=Array.from({length:t.length},(a,n)=>({start:n,end:n+1}));for(;r.length>1;){let a=null;for(let n=0;n<r.length-1;n++){const i=t.slice(r[n].start,r[n+1].end),l=e.get(i.join(","));l!=null&&(a==null||l<a[0])&&(a=[l,n])}if(a!=null){const n=a[1];r[n]={start:r[n].start,end:r[n+1].end},r.splice(n+1,1)}else break}return r}function NZ(t,e){return t.length===1?[e.get(t.join(","))]:YZ(t,e).map(r=>e.get(t.slice(r.start,r.end).join(","))).filter(r=>r!=null)}function LZ(t){return t.replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")}var aA=class{constructor(e,r){Ze(this,"specialTokens");Ze(this,"inverseSpecialTokens");Ze(this,"patStr");Ze(this,"textEncoder",new TextEncoder);Ze(this,"textDecoder",new TextDecoder("utf-8"));Ze(this,"rankMap",new Map);Ze(this,"textMap",new Map);this.patStr=e.pat_str;const a=e.bpe_ranks.split(`
`).filter(Boolean).reduce((n,i)=>{const[l,s,...o]=i.split(" "),d=Number.parseInt(s,10);return o.forEach((u,c)=>n[u]=d+c),n},{});for(const[n,i]of Object.entries(a)){const l=a1.toByteArray(n);this.rankMap.set(l.join(","),i),this.textMap.set(i,l)}this.specialTokens={...e.special_tokens,...r},this.inverseSpecialTokens=Object.entries(this.specialTokens).reduce((n,[i,l])=>(n[l]=this.textEncoder.encode(i),n),{})}encode(e,r=[],a="all"){const n=new RegExp(this.patStr,"ug"),i=aA.specialTokenRegex(Object.keys(this.specialTokens)),l=[],s=new Set(r==="all"?Object.keys(this.specialTokens):r),o=new Set(a==="all"?Object.keys(this.specialTokens).filter(u=>!s.has(u)):a);if(o.size>0){const u=aA.specialTokenRegex([...o]),c=e.match(u);if(c!=null)throw new Error(`The text contains a special token that is not allowed: ${c[0]}`)}let d=0;for(;;){let u=null,c=d;for(;i.lastIndex=c,u=i.exec(e),!(u==null||s.has(u[0]));)c=u.index+1;const p=(u==null?void 0:u.index)??e.length;for(const m of e.substring(d,p).matchAll(n)){const h=this.textEncoder.encode(m[0]),C=this.rankMap.get(h.join(","));if(C!=null){l.push(C);continue}l.push(...NZ(h,this.rankMap))}if(u==null)break;let A=this.specialTokens[u[0]];l.push(A),d=u.index+u[0].length}return l}decode(e){const r=[];let a=0;for(let l=0;l<e.length;++l){const s=e[l],o=this.textMap.get(s)??this.inverseSpecialTokens[s];o!=null&&(r.push(o),a+=o.length)}const n=new Uint8Array(a);let i=0;for(const l of r)n.set(l,i),i+=l.length;return this.textDecoder.decode(n)}},TZ=aA;VZ(TZ,"specialTokenRegex",t=>new RegExp(t.map(e=>LZ(e)).join("|"),"g"));class kZ extends WZ{constructor(e){if(super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain","document_transformers","text_splitters"]}),Object.defineProperty(this,"chunkSize",{enumerable:!0,configurable:!0,writable:!0,value:1e3}),Object.defineProperty(this,"chunkOverlap",{enumerable:!0,configurable:!0,writable:!0,value:200}),Object.defineProperty(this,"keepSeparator",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lengthFunction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.chunkSize=(e==null?void 0:e.chunkSize)??this.chunkSize,this.chunkOverlap=(e==null?void 0:e.chunkOverlap)??this.chunkOverlap,this.keepSeparator=(e==null?void 0:e.keepSeparator)??this.keepSeparator,this.lengthFunction=(e==null?void 0:e.lengthFunction)??(r=>r.length),this.chunkOverlap>=this.chunkSize)throw new Error("Cannot have chunkOverlap >= chunkSize")}async transformDocuments(e,r={}){return this.splitDocuments(e,r)}splitOnSeparator(e,r){let a;if(r)if(this.keepSeparator){const n=r.replace(/[/\-\\^$*+?.()|[\]{}]/g,"\\$&");a=e.split(new RegExp(`(?=${n})`))}else a=e.split(r);else a=e.split("");return a.filter(n=>n!=="")}async createDocuments(e,r=[],a={}){const n=r.length>0?r:[...Array(e.length)].map(()=>({})),{chunkHeader:i="",chunkOverlapHeader:l="(cont'd) ",appendChunkOverlapHeader:s=!1}=a,o=new Array;for(let d=0;d<e.length;d+=1){const u=e[d];let c=1,p=null,A=-1;for(const m of await this.splitText(u)){let h=i;const C=u.indexOf(m,A+1);if(p===null){const K=this.numberOfNewLines(u,0,C);c+=K}else{const K=A+await this.lengthFunction(p);if(K<C){const W=this.numberOfNewLines(u,K,C);c+=W}else if(K>C){const W=this.numberOfNewLines(u,C,K);c-=W}s&&(h+=l)}const w=this.numberOfNewLines(m),b=n[d].loc&&typeof n[d].loc=="object"?{...n[d].loc}:{};b.lines={from:c,to:c+w};const f={...n[d],loc:b};h+=m,o.push(new pG({pageContent:h,metadata:f})),c+=w,p=m,A=C}}return o}numberOfNewLines(e,r,a){return(e.slice(r,a).match(/\n/g)||[]).length}async splitDocuments(e,r={}){const a=e.filter(l=>l.pageContent!==void 0),n=a.map(l=>l.pageContent),i=a.map(l=>l.metadata);return this.createDocuments(n,i,r)}joinDocs(e,r){const a=e.join(r).trim();return a===""?null:a}async mergeSplits(e,r){const a=[],n=[];let i=0;for(const s of e){const o=await this.lengthFunction(s);if(i+o+n.length*r.length>this.chunkSize&&(i>this.chunkSize&&console.warn(`Created a chunk of size ${i}, +
which is longer than the specified ${this.chunkSize}`),n.length>0)){const d=this.joinDocs(n,r);for(d!==null&&a.push(d);i>this.chunkOverlap||i+o+n.length*r.length>this.chunkSize&&i>0;)i-=await this.lengthFunction(n[0]),n.shift()}n.push(s),i+=o}const l=this.joinDocs(n,r);return l!==null&&a.push(l),a}}class Pc extends kZ{static lc_name(){return"RecursiveCharacterTextSplitter"}constructor(e){super(e),Object.defineProperty(this,"separators",{enumerable:!0,configurable:!0,writable:!0,value:[`
`,`
`," ",""]}),this.separators=(e==null?void 0:e.separators)??this.separators,this.keepSeparator=(e==null?void 0:e.keepSeparator)??!0}async _splitText(e,r){const a=[];let n=r[r.length-1],i;for(let d=0;d<r.length;d+=1){const u=r[d];if(u===""){n=u;break}if(e.includes(u)){n=u,i=r.slice(d+1);break}}const l=this.splitOnSeparator(e,n);let s=[];const o=this.keepSeparator?"":n;for(const d of l)if(await this.lengthFunction(d)<this.chunkSize)s.push(d);else{if(s.length){const u=await this.mergeSplits(s,o);a.push(...u),s=[]}if(!i)a.push(d);else{const u=await this._splitText(d,i);a.push(...u)}}if(s.length){const d=await this.mergeSplits(s,o);a.push(...d)}return a}async splitText(e){return this._splitText(e,this.separators)}static fromLanguage(e,r){return new Pc({...r,separators:Pc.getSeparatorsForLanguage(e)})}static getSeparatorsForLanguage(e){if(e==="cpp")return[`
class `,`
void `,`
int `,`
float `,`
double `,`
if `,`
for `,`
while `,`
switch `,`
case `,`
`,`
`," ",""];if(e==="go")return[`
func `,`
var `,`
const `,`
type `,`
if `,`
for `,`
switch `,`
case `,`
`,`
`," ",""];if(e==="java")return[`
class `,`
public `,`
protected `,`
private `,`
static `,`
if `,`
for `,`
while `,`
switch `,`
case `,`
`,`
`," ",""];if(e==="js")return[`
function `,`
const `,`
let `,`
var `,`
class `,`
if `,`
for `,`
while `,`
switch `,`
case `,`
default `,`
`,`
`," ",""];if(e==="php")return[`
function `,`
class `,`
if `,`
foreach `,`
while `,`
do `,`
switch `,`
case `,`
`,`
`," ",""];if(e==="proto")return[`
message `,`
service `,`
enum `,`
option `,`
import `,`
syntax `,`
`,`
`," ",""];if(e==="python")return[`
class `,`
def `,`
def `,`
`,`
`," ",""];if(e==="rst")return[`
===
`,`
---
`,`
***
`,`
.. `,`
`,`
`," ",""];if(e==="ruby")return[`
def `,`
class `,`
if `,`
unless `,`
while `,`
for `,`
do `,`
begin `,`
rescue `,`
`,`
`," ",""];if(e==="rust")return[`
fn `,`
const `,`
let `,`
if `,`
while `,`
for `,`
loop `,`
match `,`
const `,`
`,`
`," ",""];if(e==="scala")return[`
class `,`
object `,`
def `,`
val `,`
var `,`
if `,`
for `,`
while `,`
match `,`
case `,`
`,`
`," ",""];if(e==="swift")return[`
func `,`
class `,`
struct `,`
enum `,`
if `,`
for `,`
while `,`
do `,`
switch `,`
case `,`
`,`
`," ",""];if(e==="markdown")return[`
## `,`
### `,`
#### `,`
##### `,`
###### `,"```\n\n",`
***
`,`
---
`,`
___
`,`
`,`
`," ",""];if(e==="latex")return[`
\\chapter{`,`
\\section{`,`
\\subsection{`,`
\\subsubsection{`,`
\\begin{enumerate}`,`
\\begin{itemize}`,`
\\begin{description}`,`
\\begin{list}`,`
\\begin{quote}`,`
\\begin{quotation}`,`
\\begin{verse}`,`
\\begin{verbatim}`,`
\\begin{align}`,"$$","$",`
`,`
`," ",""];if(e==="html")return["<body>","<div>","<p>","<br>","<li>","<h1>","<h2>","<h3>","<h4>","<h5>","<h6>","<span>","<table>","<tr>","<td>","<th>","<ul>","<ol>","<header>","<footer>","<nav>","<head>","<style>","<script>","<meta>","<title>"," ",""];if(e==="sol")return[`
pragma `,`
using `,`
contract `,`
interface `,`
library `,`
constructor `,`
type `,`
function `,`
event `,`
modifier `,`
error `,`
struct `,`
enum `,`
if `,`
for `,`
while `,`
do while `,`
assembly `,`
`,`
`," ",""];throw new Error(`Language ${e} is not supported.`)}}var UZ=Object.create,n1=Object.defineProperty,_Z=Object.getOwnPropertyDescriptor,cB=Object.getOwnPropertyNames,IZ=Object.getPrototypeOf,DZ=Object.prototype.hasOwnProperty,MZ=(t,e,r)=>e in t?n1(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,hi=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')}),be=(t,e)=>function(){return t&&(e=(0,t[cB(t)[0]])(t=0)),e},tt=(t,e)=>function(){return e||(0,t[cB(t)[0]])((e={exports:{}}).exports,e),e.exports},iu=(t,e)=>{for(var r in e)n1(t,r,{get:e[r],enumerable:!0})},xZ=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of cB(e))!DZ.call(t,n)&&n!==r&&n1(t,n,{get:()=>e[n],enumerable:!(a=_Z(e,n))||a.enumerable});return t},Gr=(t,e,r)=>(r=t!=null?UZ(IZ(t)):{},xZ(e||!t||!t.__esModule?n1(r,"default",{value:t,enumerable:!0}):r,t)),Vi=(t,e,r)=>(MZ(t,typeof e!="symbol"?e+"":e,r),r),JZ=tt({"node_modules/decamelize/index.js"(t,e){e.exports=function(r,a){if(typeof r!="string")throw new TypeError("Expected a string");return a=typeof a>"u"?"_":a,r.replace(/([a-z\d])([A-Z])/g,"$1"+a+"$2").replace(/([A-Z]+)([A-Z][a-z\d]+)/g,"$1"+a+"$2").toLowerCase()}}}),OZ=tt({"node_modules/camelcase/index.js"(t,e){var r=/[\p{Lu}]/u,a=/[\p{Ll}]/u,n=/^[\p{Lu}](?![\p{Lu}])/gu,i=/([\p{Alpha}\p{N}_]|$)/u,l=/[_.\- ]+/,s=new RegExp("^"+l.source),o=new RegExp(l.source+i.source,"gu"),d=new RegExp("\\d+"+i.source,"gu"),u=(m,h,C)=>{let w=!1,b=!1,f=!1;for(let K=0;K<m.length;K++){const W=m[K];w&&r.test(W)?(m=m.slice(0,K)+"-"+m.slice(K),w=!1,f=b,b=!0,K++):b&&f&&a.test(W)?(m=m.slice(0,K-1)+"-"+m.slice(K-1),f=b,b=!1,w=!0):(w=h(W)===W&&C(W)!==W,f=b,b=C(W)===W&&h(W)!==W)}return m},c=(m,h)=>(n.lastIndex=0,m.replace(n,C=>h(C))),p=(m,h)=>(o.lastIndex=0,d.lastIndex=0,m.replace(o,(C,w)=>h(w)).replace(d,C=>h(C))),A=(m,h)=>{if(!(typeof m=="string"||Array.isArray(m)))throw new TypeError("Expected the input to be `string | string[]`");if(h={pascalCase:!1,preserveConsecutiveUppercase:!1,...h},Array.isArray(m)?m=m.map(f=>f.trim()).filter(f=>f.length).join("-"):m=m.trim(),m.length===0)return"";const C=h.locale===!1?f=>f.toLowerCase():f=>f.toLocaleLowerCase(h.locale),w=h.locale===!1?f=>f.toUpperCase():f=>f.toLocaleUpperCase(h.locale);return m.length===1?h.pascalCase?w(m):C(m):(m!==C(m)&&(m=u(m,C,w)),m=m.replace(s,""),h.preserveConsecutiveUppercase?m=c(m,C):m=C(m),h.pascalCase&&(m=w(m.charAt(0))+m.slice(1)),p(m,w))};e.exports=A,e.exports.default=A}});function PZ(t,e){return(e==null?void 0:e[t])||(0,uQ.default)(t)}function zZ(t,e,r){const a={};for(const n in t)Object.hasOwn(t,n)&&(a[e(n,r)]=t[n]);return a}var uQ,jZ=be({"node_modules/@langchain/core/dist/load/map_keys.js"(){uQ=Gr(JZ(),1),Gr(OZ(),1)}});function _w(t){return Array.isArray(t)?[...t]:{...t}}function qZ(t,e){const r=_w(t);for(const[a,n]of Object.entries(e)){const[i,...l]=a.split(".").reverse();let s=r;for(const o of l.reverse()){if(s[o]===void 0)break;s[o]=_w(s[o]),s=s[o]}s[i]!==void 0&&(s[i]={lc:1,type:"secret",id:[n]})}return r}function pQ(t){const e=Object.getPrototypeOf(t);return typeof t.lc_name=="function"&&(typeof e.lc_name!="function"||t.lc_name()!==e.lc_name())?t.lc_name():t.name}var Fl,lu=be({"node_modules/@langchain/core/dist/load/serializable.js"(){jZ(),Fl=class cQ{static lc_name(){return this.name}get lc_id(){return[...this.lc_namespace,pQ(this.constructor)]}get lc_secrets(){}get lc_attributes(){}get lc_aliases(){}constructor(e,...r){Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lc_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.lc_kwargs=e||{}}toJSON(){if(!this.lc_serializable)return this.toJSONNotImplemented();if(this.lc_kwargs instanceof cQ||typeof this.lc_kwargs!="object"||Array.isArray(this.lc_kwargs))return this.toJSONNotImplemented();const e={},r={},a=Object.keys(this.lc_kwargs).reduce((n,i)=>(n[i]=i in this?this[i]:this.lc_kwargs[i],n),{});for(let n=Object.getPrototypeOf(this);n;n=Object.getPrototypeOf(n))Object.assign(e,Reflect.get(n,"lc_aliases",this)),Object.assign(r,Reflect.get(n,"lc_secrets",this)),Object.assign(a,Reflect.get(n,"lc_attributes",this));return Object.keys(r).forEach(n=>{let i=this,l=a;const[s,...o]=n.split(".").reverse();for(const d of o.reverse()){if(!(d in i)||i[d]===void 0)return;(!(d in l)||l[d]===void 0)&&(typeof i[d]=="object"&&i[d]!=null?l[d]={}:Array.isArray(i[d])&&(l[d]=[])),i=i[d],l=l[d]}s in i&&i[s]!==void 0&&(l[s]=l[s]||i[s])}),{lc:1,type:"constructor",id:this.lc_id,kwargs:zZ(Object.keys(r).length?qZ(a,r):a,PZ,e)}}toJSONNotImplemented(){return{lc:1,type:"not_implemented",id:this.lc_id}}}}});function Pl(t,e){return typeof t=="string"?typeof e=="string"?t+e:[{type:"text",text:t},...e]:Array.isArray(e)?[...t,...e]:[...t,{type:"text",text:e}]}function Iw(t){return Array.isArray(t)&&t.every(e=>typeof e.index=="number")}function mB(t){return typeof(t==null?void 0:t._getType)=="function"}function $Z(t){return mB(t)&&typeof t.concat=="function"}function To(t){if(typeof t=="string")return new Td(t);if(mB(t))return t;const[e,r]=t;if(e==="human"||e==="user")return new Td({content:r});if(e==="ai"||e==="assistant")return new i1({content:r});if(e==="system")return new gQ({content:r});throw new Error("Unable to coerce message from array: only human, AI, or system message coercion is currently supported.")}function mQ(t,e="Human",r="AI"){const a=[];for(const n of t){let i;if(n._getType()==="human")i=e;else if(n._getType()==="ai")i=r;else if(n._getType()==="system")i="System";else if(n._getType()==="function")i="Function";else if(n._getType()==="tool")i="Tool";else if(n._getType()==="generic")i=n.role;else throw new Error(`Got unsupported message type: ${n._getType()}`);const l=n.name?`${n.name}, `:"";a.push(`${i}: ${l}${n.content}`)}return a.join(`
`)}var zl,Yi,Td,nA,i1,ti,gQ,iA,lA,AQ,kd,sA,ta=be({"node_modules/@langchain/core/dist/messages/index.js"(){lu(),zl=class extends Fl{get lc_aliases(){return{additional_kwargs:"additional_kwargs"}}get text(){return typeof this.content=="string"?this.content:""}constructor(t,e){typeof t=="string"&&(t={content:t,additional_kwargs:e}),t.additional_kwargs||(t.additional_kwargs={}),super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","messages"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"content",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"additional_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=t.name,this.content=t.content,this.additional_kwargs=t.additional_kwargs}toDict(){return{type:this._getType(),data:this.toJSON().kwargs}}toChunk(){const t=this._getType();if(t==="human")return new nA({...this});if(t==="ai")return new ti({...this});if(t==="system")return new iA({...this});if(t==="function")return new lA({...this});if(kd.isInstance(this))return new sA({...this});throw new Error("Unknown message type.")}},Yi=class extends zl{static _mergeAdditionalKwargs(t,e){var a,n;const r={...t};for(const[i,l]of Object.entries(e))if(r[i]===void 0)r[i]=l;else{if(typeof r[i]!=typeof l)throw new Error(`additional_kwargs[${i}] already exists in the message chunk, but with a different type.`);if(typeof r[i]=="string")r[i]=r[i]+l;else if(!Array.isArray(r[i])&&typeof r[i]=="object")r[i]=this._mergeAdditionalKwargs(r[i],l);else if(i==="tool_calls"&&Iw(r[i])&&Iw(l))for(const s of l)((a=r[i])==null?void 0:a[s.index])!==void 0?r[i]=(n=r[i])==null?void 0:n.map((o,d)=>d!==s.index?o:{...o,...s,function:{name:s.function.name??o.function.name,arguments:(o.function.arguments??"")+(s.function.arguments??"")}}):r[i][s.index]=s;else throw new Error(`additional_kwargs[${i}] already exists in this message chunk.`)}return r}},Td=class extends zl{static lc_name(){return"HumanMessage"}_getType(){return"human"}},nA=class oA extends Yi{static lc_name(){return"HumanMessageChunk"}_getType(){return"human"}concat(e){return new oA({content:Pl(this.content,e.content),additional_kwargs:oA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs)})}},i1=class extends zl{static lc_name(){return"AIMessage"}_getType(){return"ai"}},ti=class dA extends Yi{static lc_name(){return"AIMessageChunk"}_getType(){return"ai"}concat(e){return new dA({content:Pl(this.content,e.content),additional_kwargs:dA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs)})}},gQ=class extends zl{static lc_name(){return"SystemMessage"}_getType(){return"system"}},iA=class uA extends Yi{static lc_name(){return"SystemMessageChunk"}_getType(){return"system"}concat(e){return new uA({content:Pl(this.content,e.content),additional_kwargs:uA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs)})}},lA=class pA extends Yi{static lc_name(){return"FunctionMessageChunk"}_getType(){return"function"}concat(e){return new pA({content:Pl(this.content,e.content),additional_kwargs:pA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs),name:this.name??""})}},AQ=class cA extends Yi{constructor(e){super(e),Object.defineProperty(this,"tool_call_id",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.tool_call_id=e.tool_call_id}static lc_name(){return"ToolMessageChunk"}_getType(){return"tool"}concat(e){return new cA({content:Pl(this.content,e.content),additional_kwargs:cA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs),tool_call_id:this.tool_call_id})}},kd=class hQ extends zl{static lc_name(){return"ChatMessage"}static _chatMessageClass(){return hQ}constructor(e,r){typeof e=="string"&&(e={content:e,role:r}),super(e),Object.defineProperty(this,"role",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.role=e.role}_getType(){return"generic"}static isInstance(e){return e._getType()==="generic"}},sA=class mA extends Yi{static lc_name(){return"ChatMessageChunk"}constructor(e,r){typeof e=="string"&&(e={content:e,role:r}),super(e),Object.defineProperty(this,"role",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.role=e.role}_getType(){return"generic"}concat(e){return new mA({content:Pl(this.content,e.content),additional_kwargs:mA._mergeAdditionalKwargs(this.additional_kwargs,e.additional_kwargs),role:this.role})}}}}),Km,gB,AB,l1=be({"node_modules/@langchain/core/dist/prompt_values.js"(){lu(),ta(),Km=class extends Fl{},gB=class extends Km{static lc_name(){return"StringPromptValue"}constructor(t){super({value:t}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","prompt_values"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"value",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.value=t}toString(){return this.value}toChatMessages(){return[new Td(this.value)]}},AB=class extends Km{static lc_name(){return"ChatPromptValue"}constructor(t){Array.isArray(t)&&(t={messages:t}),super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","prompt_values"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"messages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.messages=t.messages}toString(){return mQ(this.messages)}toChatMessages(){return this.messages}}}}),e7=tt({"node_modules/retry/lib/retry_operation.js"(t,e){function r(a,n){typeof n=="boolean"&&(n={forever:n}),this._originalTimeouts=JSON.parse(JSON.stringify(a)),this._timeouts=a,this._options=n||{},this._maxRetryTime=n&&n.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=r,r.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)},r.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null},r.prototype.retry=function(a){if(this._timeout&&clearTimeout(this._timeout),!a)return!1;var n=new Date().getTime();if(a&&n-this._operationStart>=this._maxRetryTime)return this._errors.push(a),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(a);var i=this._timeouts.shift();if(i===void 0)if(this._cachedTimeouts)this._errors.splice(0,this._errors.length-1),i=this._cachedTimeouts.slice(-1);else return!1;var l=this;return this._timer=setTimeout(function(){l._attempts++,l._operationTimeoutCb&&(l._timeout=setTimeout(function(){l._operationTimeoutCb(l._attempts)},l._operationTimeout),l._options.unref&&l._timeout.unref()),l._fn(l._attempts)},i),this._options.unref&&this._timer.unref(),!0},r.prototype.attempt=function(a,n){this._fn=a,n&&(n.timeout&&(this._operationTimeout=n.timeout),n.cb&&(this._operationTimeoutCb=n.cb));var i=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){i._operationTimeoutCb()},i._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)},r.prototype.try=function(a){console.log("Using RetryOperation.try() is deprecated"),this.attempt(a)},r.prototype.start=function(a){console.log("Using RetryOperation.start() is deprecated"),this.attempt(a)},r.prototype.start=r.prototype.try,r.prototype.errors=function(){return this._errors},r.prototype.attempts=function(){return this._attempts},r.prototype.mainError=function(){if(this._errors.length===0)return null;for(var a={},n=null,i=0,l=0;l<this._errors.length;l++){var s=this._errors[l],o=s.message,d=(a[o]||0)+1;a[o]=d,d>=i&&(n=s,i=d)}return n}}}),t7=tt({"node_modules/retry/lib/retry.js"(t){var e=e7();t.operation=function(r){var a=t.timeouts(r);return new e(a,{forever:r&&(r.forever||r.retries===1/0),unref:r&&r.unref,maxRetryTime:r&&r.maxRetryTime})},t.timeouts=function(r){if(r instanceof Array)return[].concat(r);var a={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in r)a[n]=r[n];if(a.minTimeout>a.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var i=[],l=0;l<a.retries;l++)i.push(this.createTimeout(l,a));return r&&r.forever&&!i.length&&i.push(this.createTimeout(l,a)),i.sort(function(s,o){return s-o}),i},t.createTimeout=function(r,a){var n=a.randomize?Math.random()+1:1,i=Math.round(n*Math.max(a.minTimeout,1)*Math.pow(a.factor,r));return i=Math.min(i,a.maxTimeout),i},t.wrap=function(r,a,n){if(a instanceof Array&&(n=a,a=null),!n){n=[];for(var i in r)typeof r[i]=="function"&&n.push(i)}for(var l=0;l<n.length;l++){var s=n[l],o=r[s];r[s]=(function(u){var c=t.operation(a),p=Array.prototype.slice.call(arguments,1),A=p.pop();p.push(function(m){c.retry(m)||(m&&(arguments[0]=c.mainError()),A.apply(this,arguments))}),c.attempt(function(){u.apply(r,p)})}).bind(r,o),r[s].options=a}}}}),r7=tt({"node_modules/retry/index.js"(t,e){e.exports=t7()}}),hB=tt({"node_modules/p-retry/index.js"(t,e){var r=r7(),a=["Failed to fetch","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed"],n=class extends Error{constructor(o){super(),o instanceof Error?(this.originalError=o,{message:o}=o):(this.originalError=new Error(o),this.originalError.stack=this.stack),this.name="AbortError",this.message=o}},i=(o,d,u)=>{const c=u.retries-(d-1);return o.attemptNumber=d,o.retriesLeft=c,o},l=o=>a.includes(o),s=(o,d)=>new Promise((u,c)=>{d={onFailedAttempt:()=>{},retries:10,...d};const p=r.operation(d);p.attempt(async A=>{try{u(await o(A))}catch(m){if(!(m instanceof Error)){c(new TypeError(`Non-error was thrown: "${m}". You should only throw errors.`));return}if(m instanceof n)p.stop(),c(m.originalError);else if(m instanceof TypeError&&!l(m.message))p.stop(),c(m);else{i(m,A,d);try{await d.onFailedAttempt(m)}catch(h){c(h);return}p.retry(m)||c(p.mainError())}}})});e.exports=s,e.exports.default=s,e.exports.AbortError=n}}),a7=tt({"node_modules/eventemitter3/index.js"(t,e){var r=Object.prototype.hasOwnProperty,a="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(a=!1));function i(d,u,c){this.fn=d,this.context=u,this.once=c||!1}function l(d,u,c,p,A){if(typeof c!="function")throw new TypeError("The listener must be a function");var m=new i(c,p||d,A),h=a?a+u:u;return d._events[h]?d._events[h].fn?d._events[h]=[d._events[h],m]:d._events[h].push(m):(d._events[h]=m,d._eventsCount++),d}function s(d,u){--d._eventsCount===0?d._events=new n:delete d._events[u]}function o(){this._events=new n,this._eventsCount=0}o.prototype.eventNames=function(){var u=[],c,p;if(this._eventsCount===0)return u;for(p in c=this._events)r.call(c,p)&&u.push(a?p.slice(1):p);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(c)):u},o.prototype.listeners=function(u){var c=a?a+u:u,p=this._events[c];if(!p)return[];if(p.fn)return[p.fn];for(var A=0,m=p.length,h=new Array(m);A<m;A++)h[A]=p[A].fn;return h},o.prototype.listenerCount=function(u){var c=a?a+u:u,p=this._events[c];return p?p.fn?1:p.length:0},o.prototype.emit=function(u,c,p,A,m,h){var C=a?a+u:u;if(!this._events[C])return!1;var w=this._events[C],b=arguments.length,f,K;if(w.fn){switch(w.once&&this.removeListener(u,w.fn,void 0,!0),b){case 1:return w.fn.call(w.context),!0;case 2:return w.fn.call(w.context,c),!0;case 3:return w.fn.call(w.context,c,p),!0;case 4:return w.fn.call(w.context,c,p,A),!0;case 5:return w.fn.call(w.context,c,p,A,m),!0;case 6:return w.fn.call(w.context,c,p,A,m,h),!0}for(K=1,f=new Array(b-1);K<b;K++)f[K-1]=arguments[K];w.fn.apply(w.context,f)}else{var W=w.length,R;for(K=0;K<W;K++)switch(w[K].once&&this.removeListener(u,w[K].fn,void 0,!0),b){case 1:w[K].fn.call(w[K].context);break;case 2:w[K].fn.call(w[K].context,c);break;case 3:w[K].fn.call(w[K].context,c,p);break;case 4:w[K].fn.call(w[K].context,c,p,A);break;default:if(!f)for(R=1,f=new Array(b-1);R<b;R++)f[R-1]=arguments[R];w[K].fn.apply(w[K].context,f)}}return!0},o.prototype.on=function(u,c,p){return l(this,u,c,p,!1)},o.prototype.once=function(u,c,p){return l(this,u,c,p,!0)},o.prototype.removeListener=function(u,c,p,A){var m=a?a+u:u;if(!this._events[m])return this;if(!c)return s(this,m),this;var h=this._events[m];if(h.fn)h.fn===c&&(!A||h.once)&&(!p||h.context===p)&&s(this,m);else{for(var C=0,w=[],b=h.length;C<b;C++)(h[C].fn!==c||A&&!h[C].once||p&&h[C].context!==p)&&w.push(h[C]);w.length?this._events[m]=w.length===1?w[0]:w:s(this,m)}return this},o.prototype.removeAllListeners=function(u){var c;return u?(c=a?a+u:u,this._events[c]&&s(this,c)):(this._events=new n,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=a,o.EventEmitter=o,typeof e<"u"&&(e.exports=o)}}),n7=tt({"node_modules/p-finally/index.js"(t,e){e.exports=(r,a)=>(a=a||(()=>{}),r.then(n=>new Promise(i=>{i(a())}).then(()=>n),n=>new Promise(i=>{i(a())}).then(()=>{throw n})))}}),i7=tt({"node_modules/p-timeout/index.js"(t,e){var r=n7(),a=class extends Error{constructor(i){super(i),this.name="TimeoutError"}},n=(i,l,s)=>new Promise((o,d)=>{if(typeof l!="number"||l<0)throw new TypeError("Expected `milliseconds` to be a positive number");if(l===1/0){o(i);return}const u=setTimeout(()=>{if(typeof s=="function"){try{o(s())}catch(A){d(A)}return}const c=typeof s=="string"?s:`Promise timed out after ${l} milliseconds`,p=s instanceof Error?s:new a(c);typeof i.cancel=="function"&&i.cancel(),d(p)},l);r(i.then(o,d),()=>{clearTimeout(u)})});e.exports=n,e.exports.default=n,e.exports.TimeoutError=a}}),l7=tt({"node_modules/p-queue/dist/lower-bound.js"(t){Object.defineProperty(t,"__esModule",{value:!0});function e(r,a,n){let i=0,l=r.length;for(;l>0;){const s=l/2|0;let o=i+s;n(r[o],a)<=0?(i=++o,l-=s+1):l=s}return i}t.default=e}}),s7=tt({"node_modules/p-queue/dist/priority-queue.js"(t){Object.defineProperty(t,"__esModule",{value:!0});var e=l7(),r=class{constructor(){this._queue=[]}enqueue(a,n){n=Object.assign({priority:0},n);const i={priority:n.priority,run:a};if(this.size&&this._queue[this.size-1].priority>=n.priority){this._queue.push(i);return}const l=e.default(this._queue,i,(s,o)=>o.priority-s.priority);this._queue.splice(l,0,i)}dequeue(){const a=this._queue.shift();return a==null?void 0:a.run}filter(a){return this._queue.filter(n=>n.priority===a.priority).map(n=>n.run)}get size(){return this._queue.length}};t.default=r}}),BB=tt({"node_modules/p-queue/dist/index.js"(t){Object.defineProperty(t,"__esModule",{value:!0});var e=a7(),r=i7(),a=s7(),n=()=>{},i=new r.TimeoutError,l=class extends e{constructor(s){var o,d,u,c;if(super(),this._intervalCount=0,this._intervalEnd=0,this._pendingCount=0,this._resolveEmpty=n,this._resolveIdle=n,s=Object.assign({carryoverConcurrencyCount:!1,intervalCap:1/0,interval:0,concurrency:1/0,autoStart:!0,queueClass:a.default},s),!(typeof s.intervalCap=="number"&&s.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${(d=(o=s.intervalCap)===null||o===void 0?void 0:o.toString())!==null&&d!==void 0?d:""}\` (${typeof s.intervalCap})`);if(s.interval===void 0||!(Number.isFinite(s.interval)&&s.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${(c=(u=s.interval)===null||u===void 0?void 0:u.toString())!==null&&c!==void 0?c:""}\` (${typeof s.interval})`);this._carryoverConcurrencyCount=s.carryoverConcurrencyCount,this._isIntervalIgnored=s.intervalCap===1/0||s.interval===0,this._intervalCap=s.intervalCap,this._interval=s.interval,this._queue=new s.queueClass,this._queueClass=s.queueClass,this.concurrency=s.concurrency,this._timeout=s.timeout,this._throwOnTimeout=s.throwOnTimeout===!0,this._isPaused=s.autoStart===!1}get _doesIntervalAllowAnother(){return this._isIntervalIgnored||this._intervalCount<this._intervalCap}get _doesConcurrentAllowAnother(){return this._pendingCount<this._concurrency}_next(){this._pendingCount--,this._tryToStartAnother(),this.emit("next")}_resolvePromises(){this._resolveEmpty(),this._resolveEmpty=n,this._pendingCount===0&&(this._resolveIdle(),this._resolveIdle=n,this.emit("idle"))}_onResumeInterval(){this._onInterval(),this._initializeIntervalIfNeeded(),this._timeoutId=void 0}_isIntervalPaused(){const s=Date.now();if(this._intervalId===void 0){const o=this._intervalEnd-s;if(o<0)this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0;else return this._timeoutId===void 0&&(this._timeoutId=setTimeout(()=>{this._onResumeInterval()},o)),!0}return!1}_tryToStartAnother(){if(this._queue.size===0)return this._intervalId&&clearInterval(this._intervalId),this._intervalId=void 0,this._resolvePromises(),!1;if(!this._isPaused){const s=!this._isIntervalPaused();if(this._doesIntervalAllowAnother&&this._doesConcurrentAllowAnother){const o=this._queue.dequeue();return o?(this.emit("active"),o(),s&&this._initializeIntervalIfNeeded(),!0):!1}}return!1}_initializeIntervalIfNeeded(){this._isIntervalIgnored||this._intervalId!==void 0||(this._intervalId=setInterval(()=>{this._onInterval()},this._interval),this._intervalEnd=Date.now()+this._interval)}_onInterval(){this._intervalCount===0&&this._pendingCount===0&&this._intervalId&&(clearInterval(this._intervalId),this._intervalId=void 0),this._intervalCount=this._carryoverConcurrencyCount?this._pendingCount:0,this._processQueue()}_processQueue(){for(;this._tryToStartAnother(););}get concurrency(){return this._concurrency}set concurrency(s){if(!(typeof s=="number"&&s>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${s}\` (${typeof s})`);this._concurrency=s,this._processQueue()}async add(s,o={}){return new Promise((d,u)=>{const c=async()=>{this._pendingCount++,this._intervalCount++;try{const p=this._timeout===void 0&&o.timeout===void 0?s():r.default(Promise.resolve(s()),o.timeout===void 0?this._timeout:o.timeout,()=>{(o.throwOnTimeout===void 0?this._throwOnTimeout:o.throwOnTimeout)&&u(i)});d(await p)}catch(p){u(p)}this._next()};this._queue.enqueue(c,o),this._tryToStartAnother(),this.emit("add")})}async addAll(s,o){return Promise.all(s.map(async d=>this.add(d,o)))}start(){return this._isPaused?(this._isPaused=!1,this._processQueue(),this):this}pause(){this._isPaused=!0}clear(){this._queue=new this._queueClass}async onEmpty(){if(this._queue.size!==0)return new Promise(s=>{const o=this._resolveEmpty;this._resolveEmpty=()=>{o(),s()}})}async onIdle(){if(!(this._pendingCount===0&&this._queue.size===0))return new Promise(s=>{const o=this._resolveIdle;this._resolveIdle=()=>{o(),s()}})}get size(){return this._queue.size}sizeBy(s){return this._queue.filter(s).length}get pending(){return this._pendingCount}get isPaused(){return this._isPaused}get timeout(){return this._timeout}set timeout(s){this._timeout=s}};t.default=l}}),Dw,mp,Mw,xw,su,s1=be({"node_modules/@langchain/core/dist/utils/async_caller.js"(){Dw=Gr(hB(),1),mp=Gr(BB(),1),Mw=[400,401,402,403,404,405,406,407,409],xw=t=>{var r,a;if(t.message.startsWith("Cancel")||t.message.startsWith("AbortError")||t.name==="AbortError"||(t==null?void 0:t.code)==="ECONNABORTED")throw t;const e=((r=t==null?void 0:t.response)==null?void 0:r.status)??(t==null?void 0:t.status);if(e&&Mw.includes(+e))throw t;if(((a=t==null?void 0:t.error)==null?void 0:a.code)==="insufficient_quota"){const n=new Error(t==null?void 0:t.message);throw n.name="InsufficientQuotaError",n}},su=class{constructor(t){Object.defineProperty(this,"maxConcurrency",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxRetries",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"onFailedAttempt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxConcurrency=t.maxConcurrency??1/0,this.maxRetries=t.maxRetries??6,this.onFailedAttempt=t.onFailedAttempt??xw;const e="default"in mp.default?mp.default.default:mp.default;this.queue=new e({concurrency:this.maxConcurrency})}call(t,...e){return this.queue.add(()=>(0,Dw.default)(()=>t(...e).catch(r=>{throw r instanceof Error?r:new Error(r)}),{onFailedAttempt:this.onFailedAttempt,retries:this.maxRetries,randomize:!0}),{throwOnTimeout:!0})}callWithOptions(t,e,...r){return t.signal?Promise.race([this.call(e,...r),new Promise((a,n)=>{var i;(i=t.signal)==null||i.addEventListener("abort",()=>{n(new Error("AbortError"))})})]):this.call(e,...r)}fetch(...t){return this.call(()=>fetch(...t).then(e=>e.ok?e:Promise.reject(e)))}}}}),o7=tt({"node_modules/base64-js/index.js"(t){t.byteLength=o,t.toByteArray=u,t.fromByteArray=A;var e=[],r=[],a=typeof Uint8Array<"u"?Uint8Array:Array,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(i=0,l=n.length;i<l;++i)e[i]=n[i],r[n.charCodeAt(i)]=i;var i,l;r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63;function s(m){var h=m.length;if(h%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var C=m.indexOf("=");C===-1&&(C=h);var w=C===h?0:4-C%4;return[C,w]}function o(m){var h=s(m),C=h[0],w=h[1];return(C+w)*3/4-w}function d(m,h,C){return(h+C)*3/4-C}function u(m){var h,C=s(m),w=C[0],b=C[1],f=new a(d(m,w,b)),K=0,W=b>0?w-4:w,R;for(R=0;R<W;R+=4)h=r[m.charCodeAt(R)]<<18|r[m.charCodeAt(R+1)]<<12|r[m.charCodeAt(R+2)]<<6|r[m.charCodeAt(R+3)],f[K++]=h>>16&255,f[K++]=h>>8&255,f[K++]=h&255;return b===2&&(h=r[m.charCodeAt(R)]<<2|r[m.charCodeAt(R+1)]>>4,f[K++]=h&255),b===1&&(h=r[m.charCodeAt(R)]<<10|r[m.charCodeAt(R+1)]<<4|r[m.charCodeAt(R+2)]>>2,f[K++]=h>>8&255,f[K++]=h&255),f}function c(m){return e[m>>18&63]+e[m>>12&63]+e[m>>6&63]+e[m&63]}function p(m,h,C){for(var w,b=[],f=h;f<C;f+=3)w=(m[f]<<16&16711680)+(m[f+1]<<8&65280)+(m[f+2]&255),b.push(c(w));return b.join("")}function A(m){for(var h,C=m.length,w=C%3,b=[],f=16383,K=0,W=C-w;K<W;K+=f)b.push(p(m,K,K+f>W?W:K+f));return w===1?(h=m[C-1],b.push(e[h>>2]+e[h<<4&63]+"==")):w===2&&(h=(m[C-2]<<8)+m[C-1],b.push(e[h>>10]+e[h>>4&63]+e[h<<2&63]+"=")),b.join("")}}});function d7(){return ko>ld.length-16&&(Xh.randomFillSync(ld),ko=0),ld.slice(ko,ko+=16)}var ld,ko,u7=be({"node_modules/uuid/dist/esm-node/rng.js"(){ld=new Uint8Array(256),ko=ld.length}}),BQ,p7=be({"node_modules/uuid/dist/esm-node/regex.js"(){BQ=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i}});function c7(t){return typeof t=="string"&&BQ.test(t)}var CQ,m7=be({"node_modules/uuid/dist/esm-node/validate.js"(){p7(),CQ=c7}});function g7(t,e=0){return tr[t[e+0]]+tr[t[e+1]]+tr[t[e+2]]+tr[t[e+3]]+"-"+tr[t[e+4]]+tr[t[e+5]]+"-"+tr[t[e+6]]+tr[t[e+7]]+"-"+tr[t[e+8]]+tr[t[e+9]]+"-"+tr[t[e+10]]+tr[t[e+11]]+tr[t[e+12]]+tr[t[e+13]]+tr[t[e+14]]+tr[t[e+15]]}var tr,A7=be({"node_modules/uuid/dist/esm-node/stringify.js"(){tr=[];for(let t=0;t<256;++t)tr.push((t+256).toString(16).slice(1))}}),gA,h7=be({"node_modules/uuid/dist/esm-node/native.js"(){gA={randomUUID:Xh.randomUUID}}});function B7(t,e,r){if(gA.randomUUID&&!e&&!t)return gA.randomUUID();t=t||{};const a=t.random||(t.rng||d7)();if(a[6]=a[6]&15|64,a[8]=a[8]&63|128,e){r=r||0;for(let n=0;n<16;++n)e[r+n]=a[n];return e}return g7(a)}var Za,C7=be({"node_modules/uuid/dist/esm-node/v4.js"(){h7(),u7(),A7(),Za=B7}}),CB=be({"node_modules/uuid/dist/esm-node/index.js"(){C7(),m7()}}),Jw,o1,wQ=be({"node_modules/@langchain/core/dist/callbacks/base.js"(){CB(),lu(),Jw=class{},o1=class bQ extends Jw{get lc_namespace(){return["langchain_core","callbacks",this.name]}get lc_secrets(){}get lc_attributes(){}get lc_aliases(){}static lc_name(){return this.name}get lc_id(){return[...this.lc_namespace,pQ(this.constructor)]}constructor(e){var r;super(),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lc_kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ignoreLLM",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreChain",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreAgent",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"ignoreRetriever",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"awaitHandlers",{enumerable:!0,configurable:!0,writable:!0,value:typeof process<"u"?((r=process.env)==null?void 0:r.LANGCHAIN_CALLBACKS_BACKGROUND)!=="true":!0}),this.lc_kwargs=e||{},e&&(this.ignoreLLM=e.ignoreLLM??this.ignoreLLM,this.ignoreChain=e.ignoreChain??this.ignoreChain,this.ignoreAgent=e.ignoreAgent??this.ignoreAgent,this.ignoreRetriever=e.ignoreRetriever??this.ignoreRetriever)}copy(){return new this.constructor(this)}toJSON(){return Fl.prototype.toJSON.call(this)}toJSONNotImplemented(){return Fl.prototype.toJSONNotImplemented.call(this)}static fromMethods(e){class r extends bQ{constructor(){super(),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:Za()}),Object.assign(this,e)}}return new r}}}}),w7=tt({"node_modules/ansi-styles/index.js"(t,e){var r=10,a=(l=0)=>s=>`\x1B[${38+l};5;${s}m`,n=(l=0)=>(s,o,d)=>`\x1B[${38+l};2;${s};${o};${d}m`;function i(){const l=new Map,s={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};s.color.gray=s.color.blackBright,s.bgColor.bgGray=s.bgColor.bgBlackBright,s.color.grey=s.color.blackBright,s.bgColor.bgGrey=s.bgColor.bgBlackBright;for(const[o,d]of Object.entries(s)){for(const[u,c]of Object.entries(d))s[u]={open:`\x1B[${c[0]}m`,close:`\x1B[${c[1]}m`},d[u]=s[u],l.set(c[0],c[1]);Object.defineProperty(s,o,{value:d,enumerable:!1})}return Object.defineProperty(s,"codes",{value:l,enumerable:!1}),s.color.close="\x1B[39m",s.bgColor.close="\x1B[49m",s.color.ansi256=a(),s.color.ansi16m=n(),s.bgColor.ansi256=a(r),s.bgColor.ansi16m=n(r),Object.defineProperties(s,{rgbToAnsi256:{value:(o,d,u)=>o===d&&d===u?o<8?16:o>248?231:Math.round((o-8)/247*24)+232:16+36*Math.round(o/255*5)+6*Math.round(d/255*5)+Math.round(u/255*5),enumerable:!1},hexToRgb:{value:o=>{const d=/(?<colorString>[a-f\d]{6}|[a-f\d]{3})/i.exec(o.toString(16));if(!d)return[0,0,0];let{colorString:u}=d.groups;u.length===3&&(u=u.split("").map(p=>p+p).join(""));const c=Number.parseInt(u,16);return[c>>16&255,c>>8&255,c&255]},enumerable:!1},hexToAnsi256:{value:o=>s.rgbToAnsi256(...s.hexToRgb(o)),enumerable:!1}}),s}Object.defineProperty(e,"exports",{enumerable:!0,get:i})}});function fm(t,e){return t&&!Array.isArray(t)&&typeof t=="object"?t:{[e]:t}}function b7(t){return t.replace(/[-:.]/g,"")}function K7(t,e){return b7(`${new Date(t).toISOString().slice(0,-1)}000Z`)+e}var ou,du=be({"node_modules/@langchain/core/dist/tracers/base.js"(){wQ(),ou=class extends o1{constructor(t){super(...arguments),Object.defineProperty(this,"runMap",{enumerable:!0,configurable:!0,writable:!0,value:new Map})}copy(){return this}stringifyError(t){return t instanceof Error?t.message+(t!=null&&t.stack?`
${t.stack}`:""):typeof t=="string"?t:`${t}`}_addChildRun(t,e){t.child_runs.push(e)}async _startTrace(t){var a;const e=K7(t.start_time,t.id),r={...t};if(r.parent_run_id!==void 0){const n=this.runMap.get(r.parent_run_id);n&&(this._addChildRun(n,r),n.child_execution_order=Math.max(n.child_execution_order,r.child_execution_order),r.trace_id=n.trace_id,n.dotted_order!==void 0&&(r.dotted_order=[n.dotted_order,e].join(".")))}else r.trace_id=r.id,r.dotted_order=e;this.runMap.set(r.id,r),await((a=this.onRunCreate)==null?void 0:a.call(this,r))}async _endTrace(t){var r;const e=t.parent_run_id!==void 0&&this.runMap.get(t.parent_run_id);e?e.child_execution_order=Math.max(e.child_execution_order,t.child_execution_order):await this.persistRun(t),this.runMap.delete(t.id),await((r=this.onRunUpdate)==null?void 0:r.call(this,t))}_getExecutionOrder(t){const e=t!==void 0&&this.runMap.get(t);return e?e.child_execution_order+1:1}async handleLLMStart(t,e,r,a,n,i,l,s){var p;const o=this._getExecutionOrder(a),d=Date.now(),u=l?{...n,metadata:l}:n,c={id:r,name:s??t.id[t.id.length-1],parent_run_id:a,start_time:d,serialized:t,events:[{name:"start",time:new Date(d).toISOString()}],inputs:{prompts:e},execution_order:o,child_runs:[],child_execution_order:o,run_type:"llm",extra:u??{},tags:i||[]};return await this._startTrace(c),await((p=this.onLLMStart)==null?void 0:p.call(this,c)),c}async handleChatModelStart(t,e,r,a,n,i,l,s){var p;const o=this._getExecutionOrder(a),d=Date.now(),u=l?{...n,metadata:l}:n,c={id:r,name:s??t.id[t.id.length-1],parent_run_id:a,start_time:d,serialized:t,events:[{name:"start",time:new Date(d).toISOString()}],inputs:{messages:e},execution_order:o,child_runs:[],child_execution_order:o,run_type:"llm",extra:u??{},tags:i||[]};return await this._startTrace(c),await((p=this.onLLMStart)==null?void 0:p.call(this,c)),c}async handleLLMEnd(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="llm")throw new Error("No LLM run to end.");return r.end_time=Date.now(),r.outputs=t,r.events.push({name:"end",time:new Date(r.end_time).toISOString()}),await((a=this.onLLMEnd)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleLLMError(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="llm")throw new Error("No LLM run to end.");return r.end_time=Date.now(),r.error=this.stringifyError(t),r.events.push({name:"error",time:new Date(r.end_time).toISOString()}),await((a=this.onLLMError)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleChainStart(t,e,r,a,n,i,l,s){var c;const o=this._getExecutionOrder(a),d=Date.now(),u={id:r,name:s??t.id[t.id.length-1],parent_run_id:a,start_time:d,serialized:t,events:[{name:"start",time:new Date(d).toISOString()}],inputs:e,execution_order:o,child_execution_order:o,run_type:l??"chain",child_runs:[],extra:i?{metadata:i}:{},tags:n||[]};return await this._startTrace(u),await((c=this.onChainStart)==null?void 0:c.call(this,u)),u}async handleChainEnd(t,e,r,a,n){var l;const i=this.runMap.get(e);if(!i)throw new Error("No chain run to end.");return i.end_time=Date.now(),i.outputs=fm(t,"output"),i.events.push({name:"end",time:new Date(i.end_time).toISOString()}),(n==null?void 0:n.inputs)!==void 0&&(i.inputs=fm(n.inputs,"input")),await((l=this.onChainEnd)==null?void 0:l.call(this,i)),await this._endTrace(i),i}async handleChainError(t,e,r,a,n){var l;const i=this.runMap.get(e);if(!i)throw new Error("No chain run to end.");return i.end_time=Date.now(),i.error=this.stringifyError(t),i.events.push({name:"error",time:new Date(i.end_time).toISOString()}),(n==null?void 0:n.inputs)!==void 0&&(i.inputs=fm(n.inputs,"input")),await((l=this.onChainError)==null?void 0:l.call(this,i)),await this._endTrace(i),i}async handleToolStart(t,e,r,a,n,i,l){var u;const s=this._getExecutionOrder(a),o=Date.now(),d={id:r,name:l??t.id[t.id.length-1],parent_run_id:a,start_time:o,serialized:t,events:[{name:"start",time:new Date(o).toISOString()}],inputs:{input:e},execution_order:s,child_execution_order:s,run_type:"tool",child_runs:[],extra:i?{metadata:i}:{},tags:n||[]};return await this._startTrace(d),await((u=this.onToolStart)==null?void 0:u.call(this,d)),d}async handleToolEnd(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="tool")throw new Error("No tool run to end");return r.end_time=Date.now(),r.outputs={output:t},r.events.push({name:"end",time:new Date(r.end_time).toISOString()}),await((a=this.onToolEnd)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleToolError(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="tool")throw new Error("No tool run to end");return r.end_time=Date.now(),r.error=this.stringifyError(t),r.events.push({name:"error",time:new Date(r.end_time).toISOString()}),await((a=this.onToolError)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleAgentAction(t,e){var n;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="chain")return;const a=r;a.actions=a.actions||[],a.actions.push(t),a.events.push({name:"agent_action",time:new Date().toISOString(),kwargs:{action:t}}),await((n=this.onAgentAction)==null?void 0:n.call(this,r))}async handleAgentEnd(t,e){var a;const r=this.runMap.get(e);!r||(r==null?void 0:r.run_type)!=="chain"||(r.events.push({name:"agent_end",time:new Date().toISOString(),kwargs:{action:t}}),await((a=this.onAgentEnd)==null?void 0:a.call(this,r)))}async handleRetrieverStart(t,e,r,a,n,i,l){var u;const s=this._getExecutionOrder(a),o=Date.now(),d={id:r,name:l??t.id[t.id.length-1],parent_run_id:a,start_time:o,serialized:t,events:[{name:"start",time:new Date(o).toISOString()}],inputs:{query:e},execution_order:s,child_execution_order:s,run_type:"retriever",child_runs:[],extra:i?{metadata:i}:{},tags:n||[]};return await this._startTrace(d),await((u=this.onRetrieverStart)==null?void 0:u.call(this,d)),d}async handleRetrieverEnd(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="retriever")throw new Error("No retriever run to end");return r.end_time=Date.now(),r.outputs={documents:t},r.events.push({name:"end",time:new Date(r.end_time).toISOString()}),await((a=this.onRetrieverEnd)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleRetrieverError(t,e){var a;const r=this.runMap.get(e);if(!r||(r==null?void 0:r.run_type)!=="retriever")throw new Error("No retriever run to end");return r.end_time=Date.now(),r.error=this.stringifyError(t),r.events.push({name:"error",time:new Date(r.end_time).toISOString()}),await((a=this.onRetrieverError)==null?void 0:a.call(this,r)),await this._endTrace(r),r}async handleText(t,e){var a;const r=this.runMap.get(e);!r||(r==null?void 0:r.run_type)!=="chain"||(r.events.push({name:"text",time:new Date().toISOString(),kwargs:{text:t}}),await((a=this.onText)==null?void 0:a.call(this,r)))}async handleLLMNewToken(t,e,r,a,n,i){var s;const l=this.runMap.get(r);if(!l||(l==null?void 0:l.run_type)!=="llm")throw new Error('Invalid "runId" provided to "handleLLMNewToken" callback.');return l.events.push({name:"new_token",time:new Date().toISOString(),kwargs:{token:t,idx:e,chunk:i==null?void 0:i.chunk}}),await((s=this.onLLMNewToken)==null?void 0:s.call(this,l,t,{chunk:i==null?void 0:i.chunk})),l}}}});function Qr(t,e){return`${t.open}${e}${t.close}`}function ua(t,e){try{return JSON.stringify(t,null,2)}catch{return e}}function Yn(t){if(!t.end_time)return"";const e=t.end_time-t.start_time;return e<1e3?`${e}ms`:`${(e/1e3).toFixed(2)}s`}var Qm,Wr,AA,f7=be({"node_modules/@langchain/core/dist/tracers/console.js"(){Qm=Gr(w7(),1),du(),{color:Wr}=Qm.default,AA=class extends ou{constructor(){super(...arguments),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"console_callback_handler"})}persistRun(t){return Promise.resolve()}getParents(t){const e=[];let r=t;for(;r.parent_run_id;){const a=this.runMap.get(r.parent_run_id);if(a)e.push(a),r=a;else break}return e}getBreadcrumbs(t){const r=[...this.getParents(t).reverse(),t].map((a,n,i)=>{const l=`${a.execution_order}:${a.run_type}:${a.name}`;return n===i.length-1?Qr(Qm.default.bold,l):l}).join(" > ");return Qr(Wr.grey,r)}onChainStart(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.green,"[chain/start]")} [${e}] Entering Chain run with input: ${ua(t.inputs,"[inputs]")}`)}onChainEnd(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.cyan,"[chain/end]")} [${e}] [${Yn(t)}] Exiting Chain run with output: ${ua(t.outputs,"[outputs]")}`)}onChainError(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.red,"[chain/error]")} [${e}] [${Yn(t)}] Chain run errored with error: ${ua(t.error,"[error]")}`)}onLLMStart(t){const e=this.getBreadcrumbs(t),r="prompts"in t.inputs?{prompts:t.inputs.prompts.map(a=>a.trim())}:t.inputs;console.log(`${Qr(Wr.green,"[llm/start]")} [${e}] Entering LLM run with input: ${ua(r,"[inputs]")}`)}onLLMEnd(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.cyan,"[llm/end]")} [${e}] [${Yn(t)}] Exiting LLM run with output: ${ua(t.outputs,"[response]")}`)}onLLMError(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.red,"[llm/error]")} [${e}] [${Yn(t)}] LLM run errored with error: ${ua(t.error,"[error]")}`)}onToolStart(t){var r;const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.green,"[tool/start]")} [${e}] Entering Tool run with input: "${(r=t.inputs.input)==null?void 0:r.trim()}"`)}onToolEnd(t){var r,a;const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.cyan,"[tool/end]")} [${e}] [${Yn(t)}] Exiting Tool run with output: "${(a=(r=t.outputs)==null?void 0:r.output)==null?void 0:a.trim()}"`)}onToolError(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.red,"[tool/error]")} [${e}] [${Yn(t)}] Tool run errored with error: ${ua(t.error,"[error]")}`)}onRetrieverStart(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.green,"[retriever/start]")} [${e}] Entering Retriever run with input: ${ua(t.inputs,"[inputs]")}`)}onRetrieverEnd(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.cyan,"[retriever/end]")} [${e}] [${Yn(t)}] Exiting Retriever run with output: ${ua(t.outputs,"[outputs]")}`)}onRetrieverError(t){const e=this.getBreadcrumbs(t);console.log(`${Qr(Wr.red,"[retriever/error]")} [${e}] [${Yn(t)}] Retriever run errored with error: ${ua(t.error,"[error]")}`)}onAgentAction(t){const e=t,r=this.getBreadcrumbs(t);console.log(`${Qr(Wr.blue,"[agent/action]")} [${r}] Agent selected action: ${ua(e.actions[e.actions.length-1],"[action]")}`)}}}}),Ow,gp,Pw,zw,hA,Q7=be({"node_modules/langsmith/dist/utils/async_caller.js"(){Ow=Gr(hB(),1),gp=Gr(BB(),1),Pw=[400,401,403,404,405,406,407,408],zw=[409],hA=class{constructor(t){Object.defineProperty(this,"maxConcurrency",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"maxRetries",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"onFailedResponseHook",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxConcurrency=t.maxConcurrency??1/0,this.maxRetries=t.maxRetries??6;const e="default"in gp.default?gp.default.default:gp.default;this.queue=new e({concurrency:this.maxConcurrency}),this.onFailedResponseHook=t==null?void 0:t.onFailedResponseHook}call(t,...e){const r=this.onFailedResponseHook;return this.queue.add(()=>(0,Ow.default)(()=>t(...e).catch(a=>{throw a instanceof Error?a:new Error(a)}),{async onFailedAttempt(a){if(a.message.startsWith("Cancel")||a.message.startsWith("TimeoutError")||a.message.startsWith("AbortError")||(a==null?void 0:a.code)==="ECONNABORTED")throw a;const n=a==null?void 0:a.response,i=n==null?void 0:n.status;if(i){if(Pw.includes(+i))throw a;if(zw.includes(+i))return;r&&await r(n)}},retries:this.maxRetries,randomize:!0}),{throwOnTimeout:!0})}callWithOptions(t,e,...r){return t.signal?Promise.race([this.call(e,...r),new Promise((a,n)=>{var i;(i=t.signal)==null||i.addEventListener("abort",()=>{n(new Error("AbortError"))})})]):this.call(e,...r)}fetch(...t){return this.call(()=>fetch(...t).then(e=>e.ok?e:Promise.reject(e)))}}}});function jw(t){return typeof(t==null?void 0:t._getType)=="function"}function qw(t){const e={type:t._getType(),data:{content:t.content}};return t!=null&&t.additional_kwargs&&Object.keys(t.additional_kwargs).length>0&&(e.data.additional_kwargs={...t.additional_kwargs}),e}var W7=be({"node_modules/langsmith/dist/utils/messages.js"(){}});async function v7(){if(vm===void 0){const t=KQ(),e=R7();vm={library:"langsmith",runtime:t,sdk:"langsmith-js",sdk_version:bB,...e}}return vm}function F7(){const t=y7()||{},e={},r=["LANGCHAIN_API_KEY","LANGCHAIN_ENDPOINT","LANGCHAIN_TRACING_V2","LANGCHAIN_PROJECT","LANGCHAIN_SESSION"];for(const[a,n]of Object.entries(t))a.startsWith("LANGCHAIN_")&&typeof n=="string"&&!r.includes(a)&&!a.toLowerCase().includes("key")&&!a.toLowerCase().includes("secret")&&!a.toLowerCase().includes("token")&&(a==="LANGCHAIN_REVISION_ID"?e.revision_id=n:e[a]=n);return e}function y7(){try{return typeof process<"u"&&process.env?Object.entries(process.env).reduce((t,[e,r])=>(t[e]=String(r),t),{}):void 0}catch{return}}function Ji(t){var e;try{return typeof process<"u"?(e=process.env)==null?void 0:e[t]:void 0}catch{return}}function R7(){if(Fm!==void 0)return Fm;const t=["VERCEL_GIT_COMMIT_SHA","NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA","COMMIT_REF","RENDER_GIT_COMMIT","CI_COMMIT_SHA","CIRCLE_SHA1","CF_PAGES_COMMIT_SHA","REACT_APP_GIT_SHA","SOURCE_VERSION","GITHUB_SHA","TRAVIS_COMMIT","GIT_COMMIT","BUILD_VCS_NUMBER","bamboo_planRepository_revision","Build.SourceVersion","BITBUCKET_COMMIT","DRONE_COMMIT_SHA","SEMAPHORE_GIT_SHA","BUILDKITE_COMMIT"],e={};for(const r of t){const a=Ji(r);a!==void 0&&(e[r]=a)}return Fm=e,e}var en,$w,e2,t2,Wm,r2,KQ,vm,Fm,fQ=be({"node_modules/langsmith/dist/utils/env.js"(){KB(),$w=()=>typeof window<"u"&&typeof window.document<"u",e2=()=>typeof globalThis=="object"&&globalThis.constructor&&globalThis.constructor.name==="DedicatedWorkerGlobalScope",t2=()=>typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Wm=()=>typeof Deno<"u",r2=()=>typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"&&!Wm(),KQ=()=>en||($w()?en="browser":r2()?en="node":e2()?en="webworker":t2()?en="jsdom":Wm()?en="deno":en="other",en)}});async function a2(t){const e=await v7(),r=F7();return t.map(a=>{const n=a.extra??{},i=n.metadata;return a.extra={...n,runtime:{...e,...n==null?void 0:n.runtime},metadata:{...r,...r.revision_id||a.revision_id?{revision_id:a.revision_id??r.revision_id}:{},...i}},a})}async function E7(t){const e=[];for await(const r of t)e.push(r);return e}function ym(t){if(t!==void 0)return t.trim().replace(/^"(.*)"$/,"$1").replace(/^'(.*)'$/,"$1")}function Et(t){if(!CQ(t))throw new Error(`Invalid UUID: ${t}`)}var n2,i2,tn,l2,s2,o2,wB,QQ=be({"node_modules/langsmith/dist/client.js"(){CB(),Q7(),W7(),fQ(),KB(),n2=()=>{const t=Ji("LANGCHAIN_TRACING_SAMPLING_RATE");if(t===void 0)return;const e=parseFloat(t);if(e<0||e>1)throw new Error(`LANGCHAIN_TRACING_SAMPLING_RATE must be between 0 and 1 if set. Got: ${e}`);return e},i2=t=>{const r=t.replace("http://","").replace("https://","").split("/")[0].split(":")[0];return r==="localhost"||r==="127.0.0.1"||r==="::1"},tn=async(t,e)=>{const r=await t.text();if(!t.ok)throw new Error(`Failed to ${e}: ${t.status} ${t.statusText} ${r}`)},l2=async t=>{if((t==null?void 0:t.status)===429){const e=parseInt(t.headers.get("retry-after")??"30",10)*1e3;if(e>0)return await new Promise(r=>setTimeout(r,e)),!0}return!1},s2=class{constructor(){Object.defineProperty(this,"items",{enumerable:!0,configurable:!0,writable:!0,value:[]})}get size(){return this.items.length}push(t){return new Promise(e=>{this.items.push([t,e])})}pop(t){if(t<1)throw new Error("Number of items to pop off may not be less than 1.");const e=[];for(;e.length<t&&this.items.length;){const r=this.items.shift();if(r)e.push(r);else break}return[e.map(r=>r[0]),()=>e.forEach(r=>r[1]())]}},o2=20971520,wB=class WQ{constructor(e={}){Object.defineProperty(this,"apiKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"apiUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"webUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"caller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"batchIngestCaller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timeout_ms",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_tenantId",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"hideInputs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"hideOutputs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tracingSampleRate",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sampledPostUuids",{enumerable:!0,configurable:!0,writable:!0,value:new Set}),Object.defineProperty(this,"autoBatchTracing",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"batchEndpointSupported",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"autoBatchQueue",{enumerable:!0,configurable:!0,writable:!0,value:new s2}),Object.defineProperty(this,"pendingAutoBatchedRunLimit",{enumerable:!0,configurable:!0,writable:!0,value:100}),Object.defineProperty(this,"autoBatchTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"autoBatchInitialDelayMs",{enumerable:!0,configurable:!0,writable:!0,value:250}),Object.defineProperty(this,"autoBatchAggregationDelayMs",{enumerable:!0,configurable:!0,writable:!0,value:50}),Object.defineProperty(this,"serverInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0});const r=WQ.getDefaultClientConfig();this.tracingSampleRate=n2(),this.apiUrl=ym(e.apiUrl??r.apiUrl)??"",this.apiKey=ym(e.apiKey??r.apiKey),this.webUrl=ym(e.webUrl??r.webUrl),this.timeout_ms=e.timeout_ms??12e3,this.caller=new hA(e.callerOptions??{}),this.batchIngestCaller=new hA({...e.callerOptions??{},onFailedResponseHook:l2}),this.hideInputs=e.hideInputs??r.hideInputs,this.hideOutputs=e.hideOutputs??r.hideOutputs,this.autoBatchTracing=e.autoBatchTracing??this.autoBatchTracing,this.pendingAutoBatchedRunLimit=e.pendingAutoBatchedRunLimit??this.pendingAutoBatchedRunLimit}static getDefaultClientConfig(){const e=Ji("LANGCHAIN_API_KEY"),r=Ji("LANGCHAIN_ENDPOINT")??"https://api.smith.langchain.com",a=Ji("LANGCHAIN_HIDE_INPUTS")==="true",n=Ji("LANGCHAIN_HIDE_OUTPUTS")==="true";return{apiUrl:r,apiKey:e,webUrl:void 0,hideInputs:a,hideOutputs:n}}getHostUrl(){return this.webUrl?this.webUrl:i2(this.apiUrl)?(this.webUrl="http://localhost","http://localhost"):this.apiUrl.includes("/api")&&!this.apiUrl.split(".",1)[0].endsWith("api")?(this.webUrl=this.apiUrl.replace("/api",""),this.webUrl):this.apiUrl.split(".",1)[0].includes("dev")?(this.webUrl="https://dev.smith.langchain.com","https://dev.smith.langchain.com"):(this.webUrl="https://smith.langchain.com","https://smith.langchain.com")}get headers(){const e={"User-Agent":`langsmith-js/${bB}`};return this.apiKey&&(e["x-api-key"]=`${this.apiKey}`),e}processInputs(e){return this.hideInputs===!1?e:this.hideInputs===!0?{}:typeof this.hideInputs=="function"?this.hideInputs(e):e}processOutputs(e){return this.hideOutputs===!1?e:this.hideOutputs===!0?{}:typeof this.hideOutputs=="function"?this.hideOutputs(e):e}prepareRunCreateOrUpdateInputs(e){const r={...e};return r.inputs!==void 0&&(r.inputs=this.processInputs(r.inputs)),r.outputs!==void 0&&(r.outputs=this.processOutputs(r.outputs)),r}async _getResponse(e,r){const a=(r==null?void 0:r.toString())??"",n=`${this.apiUrl}${e}?${a}`,i=await this.caller.call(fetch,n,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});if(!i.ok)throw new Error(`Failed to fetch ${e}: ${i.status} ${i.statusText}`);return i}async _get(e,r){return(await this._getResponse(e,r)).json()}async*_getPaginated(e,r=new URLSearchParams){let a=Number(r.get("offset"))||0;const n=Number(r.get("limit"))||100;for(;;){r.set("offset",String(a)),r.set("limit",String(n));const i=`${this.apiUrl}${e}?${r}`,l=await this.caller.call(fetch,i,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});if(!l.ok)throw new Error(`Failed to fetch ${e}: ${l.status} ${l.statusText}`);const s=await l.json();if(s.length===0||(yield s,s.length<n))break;a+=s.length}}async*_getCursorPaginatedList(e,r=null,a="POST",n="runs"){const i=r?{...r}:{};for(;;){const s=await(await this.caller.call(fetch,`${this.apiUrl}${e}`,{method:a,headers:{...this.headers,"Content-Type":"application/json"},signal:AbortSignal.timeout(this.timeout_ms),body:JSON.stringify(i)})).json();if(!s||!s[n])break;yield s[n];const o=s.cursors;if(!o||!o.next)break;i.cursor=o.next}}_filterForSampling(e,r=!1){if(this.tracingSampleRate===void 0)return e;if(r){const a=[];for(const n of e)this.sampledPostUuids.has(n.id)&&(a.push(n),this.sampledPostUuids.delete(n.id));return a}else{const a=[];for(const n of e)Math.random()<this.tracingSampleRate&&(a.push(n),this.sampledPostUuids.add(n.id));return a}}async drainAutoBatchQueue(){for(;this.autoBatchQueue.size>=0;){const[e,r]=this.autoBatchQueue.pop(this.pendingAutoBatchedRunLimit);if(!e.length){r();return}try{await this.batchIngestRuns({runCreates:e.filter(a=>a.action==="create").map(a=>a.item),runUpdates:e.filter(a=>a.action==="update").map(a=>a.item)})}finally{r()}}}async processRunOperation(e,r){const a=this.autoBatchTimeout;clearTimeout(this.autoBatchTimeout),this.autoBatchTimeout=void 0;const n=this.autoBatchQueue.push(e);return(r||this.autoBatchQueue.size>this.pendingAutoBatchedRunLimit)&&await this.drainAutoBatchQueue(),this.autoBatchQueue.size>0&&(this.autoBatchTimeout=setTimeout(()=>{this.autoBatchTimeout=void 0,this.drainAutoBatchQueue().catch(console.error)},a?this.autoBatchAggregationDelayMs:this.autoBatchInitialDelayMs)),n}async _getServerInfo(){const e=await fetch(`${this.apiUrl}/info`,{method:"GET",headers:{Accept:"application/json"},signal:AbortSignal.timeout(this.timeout_ms)});if(!e.ok)throw await e.text(),new Error("Failed to retrieve server info.");return e.json()}async batchEndpointIsSupported(){try{this.serverInfo=await this._getServerInfo()}catch{return!1}return!0}async createRun(e){if(!this._filterForSampling([e]).length)return;const r={...this.headers,"Content-Type":"application/json"},a=e.project_name;delete e.project_name;const n=this.prepareRunCreateOrUpdateInputs({session_name:a,...e,start_time:e.start_time??Date.now()});if(this.autoBatchTracing&&n.trace_id!==void 0&&n.dotted_order!==void 0){this.processRunOperation({action:"create",item:n}).catch(console.error);return}const i=await a2([n]),l=await this.caller.call(fetch,`${this.apiUrl}/runs`,{method:"POST",headers:r,body:JSON.stringify(i[0]),signal:AbortSignal.timeout(this.timeout_ms)});await tn(l,"create run")}async batchIngestRuns({runCreates:e,runUpdates:r}){var d,u;if(e===void 0&&r===void 0)return;let a=(e==null?void 0:e.map(c=>this.prepareRunCreateOrUpdateInputs(c)))??[],n=(r==null?void 0:r.map(c=>this.prepareRunCreateOrUpdateInputs(c)))??[];if(a.length>0&&n.length>0){const c=a.reduce((A,m)=>(m.id&&(A[m.id]=m),A),{}),p=[];for(const A of n)A.id!==void 0&&c[A.id]?c[A.id]={...c[A.id],...A}:p.push(A);a=Object.values(c),n=p}const i={post:this._filterForSampling(a),patch:this._filterForSampling(n,!0)};if(!i.post.length&&!i.patch.length)return;if(a=await a2(a),this.batchEndpointSupported===void 0&&(this.batchEndpointSupported=await this.batchEndpointIsSupported()),!this.batchEndpointSupported){this.autoBatchTracing=!1;for(const c of i.post)await this.createRun(c);for(const c of i.patch)c.id!==void 0&&await this.updateRun(c.id,c);return}const l=((u=(d=this.serverInfo)==null?void 0:d.batch_ingest_config)==null?void 0:u.size_limit_bytes)??o2,s={post:[],patch:[]};let o=0;for(const c of["post","patch"]){const p=c,A=i[p].reverse();let m=A.pop();for(;m!==void 0;){const h=JSON.stringify(m);o>0&&o+h.length>l&&(await this._postBatchIngestRuns(JSON.stringify(s)),o=0,s.post=[],s.patch=[]),o+=h.length,s[p].push(m),m=A.pop()}}(s.post.length>0||s.patch.length>0)&&await this._postBatchIngestRuns(JSON.stringify(s))}async _postBatchIngestRuns(e){const r={...this.headers,"Content-Type":"application/json",Accept:"application/json"},a=await this.batchIngestCaller.call(fetch,`${this.apiUrl}/runs/batch`,{method:"POST",headers:r,body:e,signal:AbortSignal.timeout(this.timeout_ms)});await tn(a,"batch create run")}async updateRun(e,r){Et(e),r.inputs&&(r.inputs=this.processInputs(r.inputs)),r.outputs&&(r.outputs=this.processOutputs(r.outputs));const a={...r,id:e};if(!this._filterForSampling([a],!0).length)return;if(this.autoBatchTracing&&a.trace_id!==void 0&&a.dotted_order!==void 0){if(r.end_time!==void 0&&a.parent_run_id===void 0){await this.processRunOperation({action:"update",item:a},!0);return}else this.processRunOperation({action:"update",item:a}).catch(console.error);return}const n={...this.headers,"Content-Type":"application/json"},i=await this.caller.call(fetch,`${this.apiUrl}/runs/${e}`,{method:"PATCH",headers:n,body:JSON.stringify(r),signal:AbortSignal.timeout(this.timeout_ms)});await tn(i,"update run")}async readRun(e,{loadChildRuns:r}={loadChildRuns:!1}){Et(e);let a=await this._get(`/runs/${e}`);return r&&a.child_run_ids&&(a=await this._loadChildRuns(a)),a}async getRunUrl({runId:e,run:r,projectOpts:a}){if(r!==void 0){let n;r.session_id?n=r.session_id:a!=null&&a.projectName?n=(await this.readProject({projectName:a==null?void 0:a.projectName})).id:a!=null&&a.projectId?n=a==null?void 0:a.projectId:n=(await this.readProject({projectName:Ji("LANGCHAIN_PROJECT")||"default"})).id;const i=await this._getTenantId();return`${this.getHostUrl()}/o/${i}/projects/p/${n}/r/${r.id}?poll=true`}else if(e!==void 0){const n=await this.readRun(e);if(!n.app_path)throw new Error(`Run ${e} has no app_path`);return`${this.getHostUrl()}${n.app_path}`}else throw new Error("Must provide either runId or run")}async _loadChildRuns(e){const r=await E7(this.listRuns({id:e.child_run_ids})),a={},n={};r.sort((i,l)=>((i==null?void 0:i.dotted_order)??"").localeCompare((l==null?void 0:l.dotted_order)??""));for(const i of r){if(i.parent_run_id===null||i.parent_run_id===void 0)throw new Error(`Child run ${i.id} has no parent`);i.parent_run_id in a||(a[i.parent_run_id]=[]),a[i.parent_run_id].push(i),n[i.id]=i}e.child_runs=a[e.id]||[];for(const i in a)i!==e.id&&(n[i].child_runs=a[i]);return e}async*listRuns(e){const{projectId:r,projectName:a,parentRunId:n,traceId:i,referenceExampleId:l,startTime:s,executionOrder:o,runType:d,error:u,id:c,query:p,filter:A,traceFilter:m,treeFilter:h,limit:C}=e;let w=[];if(r&&(w=Array.isArray(r)?r:[r]),a){const f=Array.isArray(a)?a:[a],K=await Promise.all(f.map(W=>this.readProject({projectName:W}).then(R=>R.id)));w.push(...K)}const b={session:w.length?w:null,run_type:d,reference_example:l,query:p,filter:A,trace_filter:m,tree_filter:h,execution_order:o,parent_run:n,start_time:s?s.toISOString():null,error:u,id:c,limit:C,trace:i};for await(const f of this._getCursorPaginatedList("/runs/query",b))yield*f}async shareRun(e,{shareId:r}={}){const a={run_id:e,share_token:r||Za()};Et(e);const i=await(await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"PUT",headers:this.headers,body:JSON.stringify(a),signal:AbortSignal.timeout(this.timeout_ms)})).json();if(i===null||!("share_token"in i))throw new Error("Invalid response from server");return`${this.getHostUrl()}/public/${i.share_token}/r`}async unshareRun(e){Et(e);const r=await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});await tn(r,"unshare run")}async readRunSharedLink(e){Et(e);const a=await(await this.caller.call(fetch,`${this.apiUrl}/runs/${e}/share`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)})).json();if(!(a===null||!("share_token"in a)))return`${this.getHostUrl()}/public/${a.share_token}/r`}async listSharedRuns(e,{runIds:r}={}){const a=new URLSearchParams({share_token:e});if(r!==void 0)for(const l of r)a.append("id",l);return Et(e),await(await this.caller.call(fetch,`${this.apiUrl}/public/${e}/runs${a}`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)})).json()}async readDatasetSharedSchema(e,r){if(!e&&!r)throw new Error("Either datasetId or datasetName must be given");e||(e=(await this.readDataset({datasetName:r})).id),Et(e);const n=await(await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)})).json();return n.url=`${this.getHostUrl()}/public/${n.share_token}/d`,n}async shareDataset(e,r){if(!e&&!r)throw new Error("Either datasetId or datasetName must be given");e||(e=(await this.readDataset({datasetName:r})).id);const a={dataset_id:e};Et(e);const i=await(await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"PUT",headers:this.headers,body:JSON.stringify(a),signal:AbortSignal.timeout(this.timeout_ms)})).json();return i.url=`${this.getHostUrl()}/public/${i.share_token}/d`,i}async unshareDataset(e){Et(e);const r=await this.caller.call(fetch,`${this.apiUrl}/datasets/${e}/share`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});await tn(r,"unshare dataset")}async readSharedDataset(e){return Et(e),await(await this.caller.call(fetch,`${this.apiUrl}/public/${e}/datasets`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)})).json()}async createProject({projectName:e,description:r=null,metadata:a=null,upsert:n=!1,projectExtra:i=null,referenceDatasetId:l=null}){const s=n?"?upsert=true":"",o=`${this.apiUrl}/sessions${s}`,d=i||{};a&&(d.metadata=a);const u={name:e,extra:d,description:r};l!==null&&(u.reference_dataset_id=l);const c=await this.caller.call(fetch,o,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(u),signal:AbortSignal.timeout(this.timeout_ms)}),p=await c.json();if(!c.ok)throw new Error(`Failed to create session ${e}: ${c.status} ${c.statusText}`);return p}async updateProject(e,{name:r=null,description:a=null,metadata:n=null,projectExtra:i=null,endTime:l=null}){const s=`${this.apiUrl}/sessions/${e}`;let o=i;n&&(o={...o||{},metadata:n});const d={name:r,extra:o,description:a,end_time:l?new Date(l).toISOString():null},u=await this.caller.call(fetch,s,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(d),signal:AbortSignal.timeout(this.timeout_ms)}),c=await u.json();if(!u.ok)throw new Error(`Failed to update project ${e}: ${u.status} ${u.statusText}`);return c}async hasProject({projectId:e,projectName:r}){let a="/sessions";const n=new URLSearchParams;if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");if(e!==void 0)Et(e),a+=`/${e}`;else if(r!==void 0)n.append("name",r);else throw new Error("Must provide projectName or projectId");const i=await this.caller.call(fetch,`${this.apiUrl}${a}?${n}`,{method:"GET",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});try{const l=await i.json();return i.ok?Array.isArray(l)?l.length>0:!0:!1}catch{return!1}}async readProject({projectId:e,projectName:r,includeStats:a}){let n="/sessions";const i=new URLSearchParams;if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");if(e!==void 0)Et(e),n+=`/${e}`;else if(r!==void 0)i.append("name",r);else throw new Error("Must provide projectName or projectId");a!==void 0&&i.append("include_stats",a.toString());const l=await this._get(n,i);let s;if(Array.isArray(l)){if(l.length===0)throw new Error(`Project[id=${e}, name=${r}] not found`);s=l[0]}else s=l;return s}async _getTenantId(){if(this._tenantId!==null)return this._tenantId;const e=new URLSearchParams({limit:"1"});for await(const r of this._getPaginated("/sessions",e))return this._tenantId=r[0].tenant_id,r[0].tenant_id;throw new Error("No projects found to resolve tenant.")}async*listProjects({projectIds:e,name:r,nameContains:a,referenceDatasetId:n,referenceDatasetName:i,referenceFree:l}={}){const s=new URLSearchParams;if(e!==void 0)for(const o of e)s.append("id",o);if(r!==void 0&&s.append("name",r),a!==void 0&&s.append("name_contains",a),n!==void 0)s.append("reference_dataset",n);else if(i!==void 0){const o=await this.readDataset({datasetName:i});s.append("reference_dataset",o.id)}l!==void 0&&s.append("reference_free",l.toString());for await(const o of this._getPaginated("/sessions",s))yield*o}async deleteProject({projectId:e,projectName:r}){let a;if(e===void 0&&r===void 0)throw new Error("Must provide projectName or projectId");if(e!==void 0&&r!==void 0)throw new Error("Must provide either projectName or projectId, not both");e===void 0?a=(await this.readProject({projectName:r})).id:a=e,Et(a);const n=await this.caller.call(fetch,`${this.apiUrl}/sessions/${a}`,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});await tn(n,`delete session ${a} (${r})`)}async uploadCsv({csvFile:e,fileName:r,inputKeys:a,outputKeys:n,description:i,dataType:l,name:s}){const o=`${this.apiUrl}/datasets/upload`,d=new FormData;d.append("file",e,r),a.forEach(p=>{d.append("input_keys",p)}),n.forEach(p=>{d.append("output_keys",p)}),i&&d.append("description",i),l&&d.append("data_type",l),s&&d.append("name",s);const u=await this.caller.call(fetch,o,{method:"POST",headers:this.headers,body:d,signal:AbortSignal.timeout(this.timeout_ms)});if(!u.ok){const p=await u.json();throw p.detail&&p.detail.includes("already exists")?new Error(`Dataset ${r} already exists`):new Error(`Failed to upload CSV: ${u.status} ${u.statusText}`)}return await u.json()}async createDataset(e,{description:r,dataType:a}={}){const n={name:e,description:r};a&&(n.data_type=a);const i=await this.caller.call(fetch,`${this.apiUrl}/datasets`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(n),signal:AbortSignal.timeout(this.timeout_ms)});if(!i.ok){const s=await i.json();throw s.detail&&s.detail.includes("already exists")?new Error(`Dataset ${e} already exists`):new Error(`Failed to create dataset ${i.status} ${i.statusText}`)}return await i.json()}async readDataset({datasetId:e,datasetName:r}){let a="/datasets";const n=new URLSearchParams({limit:"1"});if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(e!==void 0)Et(e),a+=`/${e}`;else if(r!==void 0)n.append("name",r);else throw new Error("Must provide datasetName or datasetId");const i=await this._get(a,n);let l;if(Array.isArray(i)){if(i.length===0)throw new Error(`Dataset[id=${e}, name=${r}] not found`);l=i[0]}else l=i;return l}async diffDatasetVersions({datasetId:e,datasetName:r,fromVersion:a,toVersion:n}){let i=e;if(i===void 0&&r===void 0)throw new Error("Must provide either datasetName or datasetId");if(i!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");i===void 0&&(i=(await this.readDataset({datasetName:r})).id);const l=new URLSearchParams({from_version:typeof a=="string"?a:a.toISOString(),to_version:typeof n=="string"?n:n.toISOString()});return await this._get(`/datasets/${i}/versions/diff`,l)}async readDatasetOpenaiFinetuning({datasetId:e,datasetName:r}){const a="/datasets";if(e===void 0)if(r!==void 0)e=(await this.readDataset({datasetName:r})).id;else throw new Error("Must provide datasetName or datasetId");return(await(await this._getResponse(`${a}/${e}/openai_ft`)).text()).trim().split(`
`).map(s=>JSON.parse(s))}async*listDatasets({limit:e=100,offset:r=0,datasetIds:a,datasetName:n,datasetNameContains:i}={}){const l="/datasets",s=new URLSearchParams({limit:e.toString(),offset:r.toString()});if(a!==void 0)for(const o of a)s.append("id",o);n!==void 0&&s.append("name",n),i!==void 0&&s.append("name_contains",i);for await(const o of this._getPaginated(l,s))yield*o}async deleteDataset({datasetId:e,datasetName:r}){let a="/datasets",n=e;if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(r!==void 0&&(n=(await this.readDataset({datasetName:r})).id),n!==void 0)Et(n),a+=`/${n}`;else throw new Error("Must provide datasetName or datasetId");const i=await this.caller.call(fetch,this.apiUrl+a,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});if(!i.ok)throw new Error(`Failed to delete ${a}: ${i.status} ${i.statusText}`);await i.json()}async createExample(e,r,{datasetId:a,datasetName:n,createdAt:i,exampleId:l}){let s=a;if(s===void 0&&n===void 0)throw new Error("Must provide either datasetName or datasetId");if(s!==void 0&&n!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");s===void 0&&(s=(await this.readDataset({datasetName:n})).id);const o=i||new Date,d={dataset_id:s,inputs:e,outputs:r,created_at:o==null?void 0:o.toISOString(),id:l},u=await this.caller.call(fetch,`${this.apiUrl}/examples`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(d),signal:AbortSignal.timeout(this.timeout_ms)});if(!u.ok)throw new Error(`Failed to create example: ${u.status} ${u.statusText}`);return await u.json()}async createExamples(e){const{inputs:r,outputs:a,sourceRunIds:n,exampleIds:i,datasetId:l,datasetName:s}=e;let o=l;if(o===void 0&&s===void 0)throw new Error("Must provide either datasetName or datasetId");if(o!==void 0&&s!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");o===void 0&&(o=(await this.readDataset({datasetName:s})).id);const d=r.map((p,A)=>({dataset_id:o,inputs:p,outputs:a?a[A]:void 0,id:i?i[A]:void 0,source_run_id:n?n[A]:void 0})),u=await this.caller.call(fetch,`${this.apiUrl}/examples/bulk`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(d),signal:AbortSignal.timeout(this.timeout_ms)});if(!u.ok)throw new Error(`Failed to create examples: ${u.status} ${u.statusText}`);return await u.json()}async createLLMExample(e,r,a){return this.createExample({input:e},{output:r},a)}async createChatExample(e,r,a){const n=e.map(l=>jw(l)?qw(l):l),i=jw(r)?qw(r):r;return this.createExample({input:n},{output:i},a)}async readExample(e){Et(e);const r=`/examples/${e}`;return await this._get(r)}async*listExamples({datasetId:e,datasetName:r,exampleIds:a,asOf:n,inlineS3Urls:i}={}){let l;if(e!==void 0&&r!==void 0)throw new Error("Must provide either datasetName or datasetId, not both");if(e!==void 0)l=e;else if(r!==void 0)l=(await this.readDataset({datasetName:r})).id;else throw new Error("Must provide a datasetName or datasetId");const s=new URLSearchParams({dataset:l}),o=n?typeof n=="string"?n:n==null?void 0:n.toISOString():void 0;o&&s.append("as_of",o);const d=i??!0;if(s.append("inline_s3_urls",d.toString()),a!==void 0)for(const u of a)s.append("id",u);for await(const u of this._getPaginated("/examples",s))yield*u}async deleteExample(e){Et(e);const r=`/examples/${e}`,a=await this.caller.call(fetch,this.apiUrl+r,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});if(!a.ok)throw new Error(`Failed to delete ${r}: ${a.status} ${a.statusText}`);await a.json()}async updateExample(e,r){Et(e);const a=await this.caller.call(fetch,`${this.apiUrl}/examples/${e}`,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(r),signal:AbortSignal.timeout(this.timeout_ms)});if(!a.ok)throw new Error(`Failed to update example ${e}: ${a.status} ${a.statusText}`);return await a.json()}async evaluateRun(e,r,{sourceInfo:a,loadChildRuns:n,referenceExample:i}={loadChildRuns:!1}){let l;if(typeof e=="string")l=await this.readRun(e,{loadChildRuns:n});else if(typeof e=="object"&&"id"in e)l=e;else throw new Error(`Invalid run type: ${typeof e}`);l.reference_example_id!==null&&l.reference_example_id!==void 0&&(i=await this.readExample(l.reference_example_id));const s=await r.evaluateRun(l,i);let o=a??{};s.evaluatorInfo&&(o={...o,...s.evaluatorInfo});const d=s.targetRunId??l.id;return await this.createFeedback(d,s.key,{score:s==null?void 0:s.score,value:s==null?void 0:s.value,comment:s==null?void 0:s.comment,correction:s==null?void 0:s.correction,sourceInfo:o,feedbackSourceType:"model",sourceRunId:s==null?void 0:s.sourceRunId})}async createFeedback(e,r,{score:a,value:n,correction:i,comment:l,sourceInfo:s,feedbackSourceType:o="api",sourceRunId:d,feedbackId:u,feedbackConfig:c}){var C;const p={type:o??"api",metadata:s??{}};d!==void 0&&(p==null?void 0:p.metadata)!==void 0&&!p.metadata.__run&&(p.metadata.__run={run_id:d}),(p==null?void 0:p.metadata)!==void 0&&((C=p.metadata.__run)==null?void 0:C.run_id)!==void 0&&Et(p.metadata.__run.run_id);const A={id:u??Za(),run_id:e,key:r,score:a,value:n,correction:i,comment:l,feedback_source:p,feedbackConfig:c},m=`${this.apiUrl}/feedback`,h=await this.caller.call(fetch,m,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(A),signal:AbortSignal.timeout(this.timeout_ms)});return await tn(h,"create feedback"),A}async updateFeedback(e,{score:r,value:a,correction:n,comment:i}){const l={};r!=null&&(l.score=r),a!=null&&(l.value=a),n!=null&&(l.correction=n),i!=null&&(l.comment=i),Et(e);const s=await this.caller.call(fetch,`${this.apiUrl}/feedback/${e}`,{method:"PATCH",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(l),signal:AbortSignal.timeout(this.timeout_ms)});await tn(s,"update feedback")}async readFeedback(e){Et(e);const r=`/feedback/${e}`;return await this._get(r)}async deleteFeedback(e){Et(e);const r=`/feedback/${e}`,a=await this.caller.call(fetch,this.apiUrl+r,{method:"DELETE",headers:this.headers,signal:AbortSignal.timeout(this.timeout_ms)});if(!a.ok)throw new Error(`Failed to delete ${r}: ${a.status} ${a.statusText}`);await a.json()}async*listFeedback({runIds:e,feedbackKeys:r,feedbackSourceTypes:a}={}){const n=new URLSearchParams;if(e&&n.append("run",e.join(",")),r)for(const i of r)n.append("key",i);if(a)for(const i of a)n.append("source",i);for await(const i of this._getPaginated("/feedback",n))yield*i}async createPresignedFeedbackToken(e,r,{expiration:a,feedbackConfig:n}={}){const i={run_id:e,feedback_key:r,feedback_config:n};return a?typeof a=="string"?i.expires_at=a:(a!=null&&a.hours||a!=null&&a.minutes||a!=null&&a.days)&&(i.expires_in=a):i.expires_in={hours:3},await(await this.caller.call(fetch,`${this.apiUrl}/feedback/tokens`,{method:"POST",headers:{...this.headers,"Content-Type":"application/json"},body:JSON.stringify(i),signal:AbortSignal.timeout(this.timeout_ms)})).json()}async*listPresignedFeedbackTokens(e){Et(e);const r=new URLSearchParams({run_id:e});for await(const a of this._getPaginated("/feedback/tokens",r))yield*a}}}}),G7=be({"node_modules/langsmith/dist/run_trees.js"(){fQ(),QQ()}}),bB,KB=be({"node_modules/langsmith/dist/index.js"(){QQ(),G7(),bB="0.1.13"}}),vQ=be({"node_modules/langsmith/index.js"(){KB()}});async function S7(){return Em===void 0&&(Em={library:"langchain-js",runtime:FQ()}),Em}function Ut(t){var e;try{return typeof process<"u"?(e=process.env)==null?void 0:e[t]:void 0}catch{return}}var d2,u2,p2,Rm,c2,FQ,Em,d1=be({"node_modules/@langchain/core/dist/utils/env.js"(){d2=()=>typeof window<"u"&&typeof window.document<"u",u2=()=>typeof globalThis=="object"&&globalThis.constructor&&globalThis.constructor.name==="DedicatedWorkerGlobalScope",p2=()=>typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Rm=()=>typeof Deno<"u",c2=()=>typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"&&!Rm(),FQ=()=>{let t;return d2()?t="browser":c2()?t="node":u2()?t="webworker":p2()?t="jsdom":Rm()?t="deno":t="other",t}}}),yQ,RQ=be({"node_modules/@langchain/core/dist/tracers/tracer_langchain.js"(){vQ(),d1(),du(),yQ=class extends ou{constructor(t={}){super(t),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"langchain_tracer"}),Object.defineProperty(this,"projectName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"exampleId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"client",{enumerable:!0,configurable:!0,writable:!0,value:void 0});const{exampleId:e,projectName:r,client:a}=t;this.projectName=r??Ut("LANGCHAIN_PROJECT")??Ut("LANGCHAIN_SESSION"),this.exampleId=e,this.client=a??new wB({})}async _convertToCreate(t,e=void 0){return{...t,extra:{...t.extra,runtime:await S7()},child_runs:void 0,session_name:this.projectName,reference_example_id:t.parent_run_id?void 0:e}}async persistRun(t){}async onRunCreate(t){const e=await this._convertToCreate(t,this.exampleId);await this.client.createRun(e)}async onRunUpdate(t){const e={end_time:t.end_time,error:t.error,outputs:t.outputs,events:t.events,inputs:t.inputs,trace_id:t.trace_id,dotted_order:t.dotted_order,parent_run_id:t.parent_run_id};await this.client.updateRun(t.id,e)}getRun(t){return this.runMap.get(t)}}}}),Z7=be({"node_modules/@langchain/core/dist/tracers/tracer_langchain_v1.js"(){ta(),d1(),du()}});async function X7(){return new yQ}var H7=be({"node_modules/@langchain/core/dist/tracers/initialize.js"(){RQ(),Z7()}});function V7(){const t="default"in jp.default?jp.default.default:jp.default;return new t({autoStart:!0,concurrency:1})}async function nr(t,e){e===!0?await t():(typeof Gm>"u"&&(Gm=V7()),Gm.add(t))}var jp,Gm,Y7=be({"node_modules/@langchain/core/dist/callbacks/promises.js"(){jp=Gr(BB(),1)}});function N7(t){return t?Array.isArray(t)||"name"in t?{callbacks:t}:t:{}}function zc(t){return"name"in t?t:o1.fromMethods(t)}var m2,Bo,g2,Sm,A2,h2,Pr,uu=be({"node_modules/@langchain/core/dist/callbacks/manager.js"(){CB(),wQ(),f7(),H7(),ta(),d1(),RQ(),Y7(),m2=class{setHandler(t){return this.setHandlers([t])}},Bo=class{constructor(t,e,r,a,n,i,l,s){Object.defineProperty(this,"runId",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"inheritableHandlers",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:a}),Object.defineProperty(this,"inheritableTags",{enumerable:!0,configurable:!0,writable:!0,value:n}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"inheritableMetadata",{enumerable:!0,configurable:!0,writable:!0,value:l}),Object.defineProperty(this,"_parentRunId",{enumerable:!0,configurable:!0,writable:!0,value:s})}async handleText(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;try{await((r=e.handleText)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleText: ${a}`)}},e.awaitHandlers)))}},g2=class extends Bo{getChild(t){const e=new Pr(this.runId);return e.setHandlers(this.inheritableHandlers),e.addTags(this.inheritableTags),e.addMetadata(this.inheritableMetadata),t&&e.addTags([t],!1),e}async handleRetrieverEnd(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreRetriever)try{await((r=e.handleRetrieverEnd)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch{console.error(`Error in handler ${e.constructor.name}, handleRetriever`)}},e.awaitHandlers)))}async handleRetrieverError(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreRetriever)try{await((r=e.handleRetrieverError)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleRetrieverError: ${a}`)}},e.awaitHandlers)))}},Sm=class extends Bo{async handleLLMNewToken(t,e,r,a,n,i){await Promise.all(this.handlers.map(l=>nr(async()=>{var s;if(!l.ignoreLLM)try{await((s=l.handleLLMNewToken)==null?void 0:s.call(l,t,e??{prompt:0,completion:0},this.runId,this._parentRunId,this.tags,i))}catch(o){console.error(`Error in handler ${l.constructor.name}, handleLLMNewToken: ${o}`)}},l.awaitHandlers)))}async handleLLMError(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreLLM)try{await((r=e.handleLLMError)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleLLMError: ${a}`)}},e.awaitHandlers)))}async handleLLMEnd(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreLLM)try{await((r=e.handleLLMEnd)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleLLMEnd: ${a}`)}},e.awaitHandlers)))}},A2=class extends Bo{getChild(t){const e=new Pr(this.runId);return e.setHandlers(this.inheritableHandlers),e.addTags(this.inheritableTags),e.addMetadata(this.inheritableMetadata),t&&e.addTags([t],!1),e}async handleChainError(t,e,r,a,n){await Promise.all(this.handlers.map(i=>nr(async()=>{var l;if(!i.ignoreChain)try{await((l=i.handleChainError)==null?void 0:l.call(i,t,this.runId,this._parentRunId,this.tags,n))}catch(s){console.error(`Error in handler ${i.constructor.name}, handleChainError: ${s}`)}},i.awaitHandlers)))}async handleChainEnd(t,e,r,a,n){await Promise.all(this.handlers.map(i=>nr(async()=>{var l;if(!i.ignoreChain)try{await((l=i.handleChainEnd)==null?void 0:l.call(i,t,this.runId,this._parentRunId,this.tags,n))}catch(s){console.error(`Error in handler ${i.constructor.name}, handleChainEnd: ${s}`)}},i.awaitHandlers)))}async handleAgentAction(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreAgent)try{await((r=e.handleAgentAction)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleAgentAction: ${a}`)}},e.awaitHandlers)))}async handleAgentEnd(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreAgent)try{await((r=e.handleAgentEnd)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleAgentEnd: ${a}`)}},e.awaitHandlers)))}},h2=class extends Bo{getChild(t){const e=new Pr(this.runId);return e.setHandlers(this.inheritableHandlers),e.addTags(this.inheritableTags),e.addMetadata(this.inheritableMetadata),t&&e.addTags([t],!1),e}async handleToolError(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreAgent)try{await((r=e.handleToolError)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleToolError: ${a}`)}},e.awaitHandlers)))}async handleToolEnd(t){await Promise.all(this.handlers.map(e=>nr(async()=>{var r;if(!e.ignoreAgent)try{await((r=e.handleToolEnd)==null?void 0:r.call(e,t,this.runId,this._parentRunId,this.tags))}catch(a){console.error(`Error in handler ${e.constructor.name}, handleToolEnd: ${a}`)}},e.awaitHandlers)))}},Pr=class qp extends m2{constructor(e,r){super(),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"inheritableHandlers",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"inheritableTags",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"inheritableMetadata",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"callback_manager"}),Object.defineProperty(this,"_parentRunId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.handlers=(r==null?void 0:r.handlers)??this.handlers,this.inheritableHandlers=(r==null?void 0:r.inheritableHandlers)??this.inheritableHandlers,this.tags=(r==null?void 0:r.tags)??this.tags,this.inheritableTags=(r==null?void 0:r.inheritableTags)??this.inheritableTags,this.metadata=(r==null?void 0:r.metadata)??this.metadata,this.inheritableMetadata=(r==null?void 0:r.inheritableMetadata)??this.inheritableMetadata,this._parentRunId=e}getParentRunId(){return this._parentRunId}async handleLLMStart(e,r,a=void 0,n=void 0,i=void 0,l=void 0,s=void 0,o=void 0){return Promise.all(r.map(async d=>{const u=Za();return await Promise.all(this.handlers.map(c=>nr(async()=>{var p;if(!c.ignoreLLM)try{await((p=c.handleLLMStart)==null?void 0:p.call(c,e,[d],u,this._parentRunId,i,this.tags,this.metadata,o))}catch(A){console.error(`Error in handler ${c.constructor.name}, handleLLMStart: ${A}`)}},c.awaitHandlers))),new Sm(u,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}))}async handleChatModelStart(e,r,a=void 0,n=void 0,i=void 0,l=void 0,s=void 0,o=void 0){return Promise.all(r.map(async d=>{const u=Za();return await Promise.all(this.handlers.map(c=>nr(async()=>{var p,A;if(!c.ignoreLLM)try{if(c.handleChatModelStart)await((p=c.handleChatModelStart)==null?void 0:p.call(c,e,[d],u,this._parentRunId,i,this.tags,this.metadata,o));else if(c.handleLLMStart){const m=mQ(d);await((A=c.handleLLMStart)==null?void 0:A.call(c,e,[m],u,this._parentRunId,i,this.tags,this.metadata,o))}}catch(m){console.error(`Error in handler ${c.constructor.name}, handleLLMStart: ${m}`)}},c.awaitHandlers))),new Sm(u,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}))}async handleChainStart(e,r,a=Za(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>nr(async()=>{var d;if(!o.ignoreChain)try{await((d=o.handleChainStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,n,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleChainStart: ${u}`)}},o.awaitHandlers))),new A2(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}async handleToolStart(e,r,a=Za(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>nr(async()=>{var d;if(!o.ignoreAgent)try{await((d=o.handleToolStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleToolStart: ${u}`)}},o.awaitHandlers))),new h2(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}async handleRetrieverStart(e,r,a=Za(),n=void 0,i=void 0,l=void 0,s=void 0){return await Promise.all(this.handlers.map(o=>nr(async()=>{var d;if(!o.ignoreRetriever)try{await((d=o.handleRetrieverStart)==null?void 0:d.call(o,e,r,a,this._parentRunId,this.tags,this.metadata,s))}catch(u){console.error(`Error in handler ${o.constructor.name}, handleRetrieverStart: ${u}`)}},o.awaitHandlers))),new g2(a,this.handlers,this.inheritableHandlers,this.tags,this.inheritableTags,this.metadata,this.inheritableMetadata,this._parentRunId)}addHandler(e,r=!0){this.handlers.push(e),r&&this.inheritableHandlers.push(e)}removeHandler(e){this.handlers=this.handlers.filter(r=>r!==e),this.inheritableHandlers=this.inheritableHandlers.filter(r=>r!==e)}setHandlers(e,r=!0){this.handlers=[],this.inheritableHandlers=[];for(const a of e)this.addHandler(a,r)}addTags(e,r=!0){this.removeTags(e),this.tags.push(...e),r&&this.inheritableTags.push(...e)}removeTags(e){this.tags=this.tags.filter(r=>!e.includes(r)),this.inheritableTags=this.inheritableTags.filter(r=>!e.includes(r))}addMetadata(e,r=!0){this.metadata={...this.metadata,...e},r&&(this.inheritableMetadata={...this.inheritableMetadata,...e})}removeMetadata(e){for(const r of Object.keys(e))delete this.metadata[r],delete this.inheritableMetadata[r]}copy(e=[],r=!0){const a=new qp(this._parentRunId);for(const n of this.handlers){const i=this.inheritableHandlers.includes(n);a.addHandler(n,i)}for(const n of this.tags){const i=this.inheritableTags.includes(n);a.addTags([n],i)}for(const n of Object.keys(this.metadata)){const i=Object.keys(this.inheritableMetadata).includes(n);a.addMetadata({[n]:this.metadata[n]},i)}for(const n of e)a.handlers.filter(i=>i.name==="console_callback_handler").some(i=>i.name===n.name)||a.addHandler(n,r);return a}static fromHandlers(e){class r extends o1{constructor(){super(),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:Za()}),Object.assign(this,e)}}const a=new this;return a.addHandler(new r),a}static async configure(e,r,a,n,i,l,s){let o;(e||r)&&(Array.isArray(e)||!e?(o=new qp,o.setHandlers((e==null?void 0:e.map(zc))??[],!0)):o=e,o=o.copy(Array.isArray(r)?r.map(zc):r==null?void 0:r.handlers,!1));const d=Ut("LANGCHAIN_VERBOSE")==="true"||(s==null?void 0:s.verbose),u=Ut("LANGCHAIN_TRACING_V2")==="true",c=u||(Ut("LANGCHAIN_TRACING")??!1);if(d||c){if(o||(o=new qp),d&&!o.handlers.some(p=>p.name===AA.prototype.name)){const p=new AA;o.addHandler(p,!0)}c&&!o.handlers.some(p=>p.name==="langchain_tracer")&&u&&o.addHandler(await X7(),!0)}return(a||n)&&o&&(o.addTags(a??[]),o.addTags(n??[],!1)),(i||l)&&o&&(o.addMetadata(i??{}),o.addMetadata(l??{},!1)),o}}}});function BA(t,e){return GQ.call(t,e)}function CA(t){if(Array.isArray(t)){const r=new Array(t.length);for(let a=0;a<r.length;a++)r[a]=""+a;return r}if(Object.keys)return Object.keys(t);let e=[];for(let r in t)BA(t,r)&&e.push(r);return e}function zr(t){switch(typeof t){case"object":return JSON.parse(JSON.stringify(t));case"undefined":return null;default:return t}}function wA(t){let e=0;const r=t.length;let a;for(;e<r;){if(a=t.charCodeAt(e),a>=48&&a<=57){e++;continue}return!1}return!0}function Oi(t){return t.indexOf("/")===-1&&t.indexOf("~")===-1?t:t.replace(/~/g,"~0").replace(/\//g,"~1")}function EQ(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}function bA(t){if(t===void 0)return!0;if(t){if(Array.isArray(t)){for(let r=0,a=t.length;r<a;r++)if(bA(t[r]))return!0}else if(typeof t=="object"){const r=CA(t),a=r.length;for(var e=0;e<a;e++)if(bA(t[r[e]]))return!0}}return!1}function B2(t,e){const r=[t];for(const a in e){const n=typeof e[a]=="object"?JSON.stringify(e[a],null,2):e[a];typeof n<"u"&&r.push(`${a}: ${n}`)}return r.join(`
`)}var GQ,fB,jc=be({"node_modules/@langchain/core/dist/utils/fast-json-patch/src/helpers.js"(){GQ=Object.prototype.hasOwnProperty,fB=class extends Error{constructor(t,e,r,a,n){super(B2(t,{name:e,index:r,operation:a,tree:n})),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:e}),Object.defineProperty(this,"index",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"operation",{enumerable:!0,configurable:!0,writable:!0,value:a}),Object.defineProperty(this,"tree",{enumerable:!0,configurable:!0,writable:!0,value:n}),Object.setPrototypeOf(this,new.target.prototype),this.message=B2(t,{name:e,index:r,operation:a,tree:n})}}}}),SQ={};iu(SQ,{JsonPatchError:()=>St,_areEquals:()=>Ud,applyOperation:()=>hl,applyPatch:()=>sd,applyReducer:()=>L7,deepClone:()=>XQ,getValueByPointer:()=>qc,validate:()=>ZQ,validator:()=>$c});function qc(t,e){if(e=="")return t;var r={op:"_get",path:e};return hl(t,r),r.value}function hl(t,e,r=!1,a=!0,n=!0,i=0){if(r&&(typeof r=="function"?r(e,0,t,e.path):$c(e,0)),e.path===""){let l={newDocument:t};if(e.op==="add")return l.newDocument=e.value,l;if(e.op==="replace")return l.newDocument=e.value,l.removed=t,l;if(e.op==="move"||e.op==="copy")return l.newDocument=qc(t,e.from),e.op==="move"&&(l.removed=t),l;if(e.op==="test"){if(l.test=Ud(t,e.value),l.test===!1)throw new St("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return l.newDocument=t,l}else{if(e.op==="remove")return l.removed=t,l.newDocument=null,l;if(e.op==="_get")return e.value=t,l;if(r)throw new St("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",i,e,t);return l}}else{a||(t=zr(t));const s=(e.path||"").split("/");let o=t,d=1,u=s.length,c,p,A;for(typeof r=="function"?A=r:A=$c;;){if(p=s[d],p&&p.indexOf("~")!=-1&&(p=EQ(p)),n&&(p=="__proto__"||p=="prototype"&&d>0&&s[d-1]=="constructor"))throw new TypeError("JSON-Patch: modifying `__proto__` or `constructor/prototype` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README");if(r&&c===void 0&&(o[p]===void 0?c=s.slice(0,d).join("/"):d==u-1&&(c=e.path),c!==void 0&&A(e,0,t,c)),d++,Array.isArray(o)){if(p==="-")p=o.length;else{if(r&&!wA(p))throw new St("Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index","OPERATION_PATH_ILLEGAL_ARRAY_INDEX",i,e,t);wA(p)&&(p=~~p)}if(d>=u){if(r&&e.op==="add"&&p>o.length)throw new St("The specified index MUST NOT be greater than the number of elements in the array","OPERATION_VALUE_OUT_OF_BOUNDS",i,e,t);const m=HQ[e.op].call(e,o,p,t);if(m.test===!1)throw new St("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return m}}else if(d>=u){const m=$i[e.op].call(e,o,p,t);if(m.test===!1)throw new St("Test operation failed","TEST_OPERATION_FAILED",i,e,t);return m}if(o=o[p],r&&d<u&&(!o||typeof o!="object"))throw new St("Cannot perform operation at the desired path","OPERATION_PATH_UNRESOLVABLE",i,e,t)}}}function sd(t,e,r,a=!0,n=!0){if(r&&!Array.isArray(e))throw new St("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");a||(t=zr(t));const i=new Array(e.length);for(let l=0,s=e.length;l<s;l++)i[l]=hl(t,e[l],r,!0,n,l),t=i[l].newDocument;return i.newDocument=t,i}function L7(t,e,r){const a=hl(t,e);if(a.test===!1)throw new St("Test operation failed","TEST_OPERATION_FAILED",r,e,t);return a.newDocument}function $c(t,e,r,a){if(typeof t!="object"||t===null||Array.isArray(t))throw new St("Operation is not an object","OPERATION_NOT_AN_OBJECT",e,t,r);if($i[t.op]){if(typeof t.path!="string")throw new St("Operation `path` property is not a string","OPERATION_PATH_INVALID",e,t,r);if(t.path.indexOf("/")!==0&&t.path.length>0)throw new St('Operation `path` property must start with "/"',"OPERATION_PATH_INVALID",e,t,r);if((t.op==="move"||t.op==="copy")&&typeof t.from!="string")throw new St("Operation `from` property is not present (applicable in `move` and `copy` operations)","OPERATION_FROM_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&t.value===void 0)throw new St("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_REQUIRED",e,t,r);if((t.op==="add"||t.op==="replace"||t.op==="test")&&bA(t.value))throw new St("Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)","OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED",e,t,r);if(r){if(t.op=="add"){var n=t.path.split("/").length,i=a.split("/").length;if(n!==i+1&&n!==i)throw new St("Cannot perform an `add` operation at the desired path","OPERATION_PATH_CANNOT_ADD",e,t,r)}else if(t.op==="replace"||t.op==="remove"||t.op==="_get"){if(t.path!==a)throw new St("Cannot perform the operation at a path that does not exist","OPERATION_PATH_UNRESOLVABLE",e,t,r)}else if(t.op==="move"||t.op==="copy"){var l={op:"_get",path:t.from,value:void 0},s=ZQ([l],r);if(s&&s.name==="OPERATION_PATH_UNRESOLVABLE")throw new St("Cannot perform the operation from a path that does not exist","OPERATION_FROM_UNRESOLVABLE",e,t,r)}}}else throw new St("Operation `op` property is not one of operations defined in RFC-6902","OPERATION_OP_INVALID",e,t,r)}function ZQ(t,e,r){try{if(!Array.isArray(t))throw new St("Patch sequence must be an array","SEQUENCE_NOT_AN_ARRAY");if(e)sd(zr(e),zr(t),r||!0);else{r=r||$c;for(var a=0;a<t.length;a++)r(t[a],a,e,void 0)}}catch(n){if(n instanceof St)return n;throw n}}function Ud(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){var r=Array.isArray(t),a=Array.isArray(e),n,i,l;if(r&&a){if(i=t.length,i!=e.length)return!1;for(n=i;n--!==0;)if(!Ud(t[n],e[n]))return!1;return!0}if(r!=a)return!1;var s=Object.keys(t);if(i=s.length,i!==Object.keys(e).length)return!1;for(n=i;n--!==0;)if(!e.hasOwnProperty(s[n]))return!1;for(n=i;n--!==0;)if(l=s[n],!Ud(t[l],e[l]))return!1;return!0}return t!==t&&e!==e}var St,XQ,$i,HQ,KA=be({"node_modules/@langchain/core/dist/utils/fast-json-patch/src/core.js"(){jc(),St=fB,XQ=zr,$i={add:function(t,e,r){return t[e]=this.value,{newDocument:r}},remove:function(t,e,r){var a=t[e];return delete t[e],{newDocument:r,removed:a}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:function(t,e,r){let a=qc(r,this.path);a&&(a=zr(a));const n=hl(r,{op:"remove",path:this.from}).removed;return hl(r,{op:"add",path:this.path,value:n}),{newDocument:r,removed:a}},copy:function(t,e,r){const a=qc(r,this.from);return hl(r,{op:"add",path:this.path,value:zr(a)}),{newDocument:r}},test:function(t,e,r){return{newDocument:r,test:Ud(t[e],this.value)}},_get:function(t,e,r){return this.value=t[e],{newDocument:r}}},HQ={add:function(t,e,r){return wA(e)?t.splice(e,0,this.value):t[e]=this.value,{newDocument:r,index:e}},remove:function(t,e,r){var a=t.splice(e,1);return{newDocument:r,removed:a[0]}},replace:function(t,e,r){var a=t[e];return t[e]=this.value,{newDocument:r,removed:a}},move:$i.move,copy:$i.copy,test:$i.test,_get:$i._get}}});function VQ(t,e,r,a,n){if(e!==t){typeof e.toJSON=="function"&&(e=e.toJSON());for(var i=CA(e),l=CA(t),s=!1,o=l.length-1;o>=0;o--){var d=l[o],u=t[d];if(BA(e,d)&&!(e[d]===void 0&&u!==void 0&&Array.isArray(e)===!1)){var c=e[d];typeof u=="object"&&u!=null&&typeof c=="object"&&c!=null&&Array.isArray(u)===Array.isArray(c)?VQ(u,c,r,a+"/"+Oi(d),n):u!==c&&(n&&r.push({op:"test",path:a+"/"+Oi(d),value:zr(u)}),r.push({op:"replace",path:a+"/"+Oi(d),value:zr(c)}))}else Array.isArray(t)===Array.isArray(e)?(n&&r.push({op:"test",path:a+"/"+Oi(d),value:zr(u)}),r.push({op:"remove",path:a+"/"+Oi(d)}),s=!0):(n&&r.push({op:"test",path:a,value:t}),r.push({op:"replace",path:a,value:e}))}if(!(!s&&i.length==l.length))for(var o=0;o<i.length;o++){var d=i[o];!BA(t,d)&&e[d]!==void 0&&r.push({op:"add",path:a+"/"+Oi(d),value:zr(e[d])})}}}function T7(t,e,r=!1){var a=[];return VQ(t,e,a,"",r),a}var k7=be({"node_modules/@langchain/core/dist/utils/fast-json-patch/src/duplex.js"(){jc(),KA()}}),YQ=be({"node_modules/@langchain/core/dist/utils/fast-json-patch/index.js"(){KA(),k7(),jc(),KA(),jc(),{...SQ}}});function C2(t,e=2){const r=Array.from({length:e},()=>[]);return r.map(async function*(n){for(;;)if(n.length===0){const i=await t.next();for(const l of r)l.push(i)}else{if(n[0].done)return;yield n.shift().value}})}function el(t,e){if(Array.isArray(t)&&Array.isArray(e))return t.concat(e);if(typeof t=="string"&&typeof e=="string")return t+e;if(typeof t=="number"&&typeof e=="number")return t+e;if("concat"in t&&typeof t.concat=="function")return t.concat(e);if(typeof t=="object"&&typeof e=="object"){const r={...t};for(const[a,n]of Object.entries(e))a in r&&!Array.isArray(r[a])?r[a]=el(r[a],n):r[a]=n;return r}else throw new Error(`Cannot concat ${typeof t} and ${typeof e}`)}async function U7(t,e,r,...a){const n=new tl(e,r),i=await n.setup;return{output:t(n,i,...a),setup:i}}var jn,tl,pu=be({"node_modules/@langchain/core/dist/utils/stream.js"(){jn=class fA extends ReadableStream{constructor(){super(...arguments),Object.defineProperty(this,"reader",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}ensureReader(){this.reader||(this.reader=this.getReader())}async next(){this.ensureReader();try{const e=await this.reader.read();return e.done?(this.reader.releaseLock(),{done:!0,value:void 0}):{done:!1,value:e.value}}catch(e){throw this.reader.releaseLock(),e}}async return(){if(this.ensureReader(),this.locked){const e=this.reader.cancel();this.reader.releaseLock(),await e}return{done:!0,value:void 0}}async throw(e){if(this.ensureReader(),this.locked){const r=this.reader.cancel();this.reader.releaseLock(),await r}throw e}[Symbol.asyncIterator](){return this}static fromReadableStream(e){const r=e.getReader();return new fA({start(a){return n();function n(){return r.read().then(({done:i,value:l})=>{if(i){a.close();return}return a.enqueue(l),n()})}},cancel(){r.releaseLock()}})}static fromAsyncGenerator(e){return new fA({async pull(r){const{value:a,done:n}=await e.next();n&&r.close(),r.enqueue(a)},async cancel(r){await e.return(r)}})}},tl=class{constructor(t,e){Object.defineProperty(this,"generator",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"setup",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"firstResult",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"firstResultUsed",{enumerable:!0,configurable:!0,writable:!0,value:!1}),this.generator=t,this.setup=new Promise((r,a)=>{this.firstResult=t.next(),e?this.firstResult.then(e).then(r,a):this.firstResult.then(n=>r(void 0),a)})}async next(...t){return this.firstResultUsed?this.generator.next(...t):(this.firstResultUsed=!0,this.firstResult)}async return(t){return this.generator.return(t)}async throw(t){return this.generator.throw(t)}[Symbol.asyncIterator](){return this}}}});async function w2(t,e){if(e==="original")throw new Error("Do not assign inputs with original schema drop the key for now. When inputs are added to streamLog they should be added with standardized schema for streaming events.");const{inputs:r}=t;if(["retriever","llm","prompt"].includes(t.run_type))return r;if(!(Object.keys(r).length===1&&(r==null?void 0:r.input)===""))return r.input}async function b2(t,e){const{outputs:r}=t;return e==="original"||["retriever","llm","prompt"].includes(t.run_type)?r:r!==void 0&&Object.keys(r).length===1&&(r==null?void 0:r.output)!==void 0?r.output:r}function _7(t){return t!==void 0&&t.message!==void 0}var sn,QA,WA,I7=be({"node_modules/@langchain/core/dist/tracers/log_stream.js"(){YQ(),du(),pu(),ta(),sn=class{constructor(t){Object.defineProperty(this,"ops",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.ops=t.ops??[]}concat(t){const e=this.ops.concat(t.ops),r=sd({},e);return new QA({ops:e,state:r[r.length-1].newDocument})}},QA=class vA extends sn{constructor(e){super(e),Object.defineProperty(this,"state",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.state=e.state}concat(e){const r=this.ops.concat(e.ops),a=sd(this.state,e.ops);return new vA({ops:r,state:a[a.length-1].newDocument})}static fromRunLogPatch(e){const r=sd({},e.ops);return new vA({ops:e.ops,state:r[r.length-1].newDocument})}},WA=class extends ou{constructor(t){super(t),Object.defineProperty(this,"autoClose",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"includeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_schemaFormat",{enumerable:!0,configurable:!0,writable:!0,value:"original"}),Object.defineProperty(this,"rootId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"keyMapByRunId",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"counterMapByRunName",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,"transformStream",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"writer",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"receiveStream",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"log_stream_tracer"}),this.autoClose=(t==null?void 0:t.autoClose)??!0,this.includeNames=t==null?void 0:t.includeNames,this.includeTypes=t==null?void 0:t.includeTypes,this.includeTags=t==null?void 0:t.includeTags,this.excludeNames=t==null?void 0:t.excludeNames,this.excludeTypes=t==null?void 0:t.excludeTypes,this.excludeTags=t==null?void 0:t.excludeTags,this._schemaFormat=(t==null?void 0:t._schemaFormat)??this._schemaFormat,this.transformStream=new TransformStream,this.writer=this.transformStream.writable.getWriter(),this.receiveStream=jn.fromReadableStream(this.transformStream.readable)}[Symbol.asyncIterator](){return this.receiveStream}async persistRun(t){}_includeRun(t){if(t.id===this.rootId)return!1;const e=t.tags??[];let r=this.includeNames===void 0&&this.includeTags===void 0&&this.includeTypes===void 0;return this.includeNames!==void 0&&(r=r||this.includeNames.includes(t.name)),this.includeTypes!==void 0&&(r=r||this.includeTypes.includes(t.run_type)),this.includeTags!==void 0&&(r=r||e.find(a=>{var n;return(n=this.includeTags)==null?void 0:n.includes(a)})!==void 0),this.excludeNames!==void 0&&(r=r&&!this.excludeNames.includes(t.name)),this.excludeTypes!==void 0&&(r=r&&!this.excludeTypes.includes(t.run_type)),this.excludeTags!==void 0&&(r=r&&e.every(a=>{var n;return!((n=this.excludeTags)!=null&&n.includes(a))})),r}async*tapOutputIterable(t,e){for await(const r of e){if(t!==this.rootId){const a=this.keyMapByRunId[t];a&&await this.writer.write(new sn({ops:[{op:"add",path:`/logs/${a}/streamed_output/-`,value:r}]}))}yield r}}async onRunCreate(t){var a;if(this.rootId===void 0&&(this.rootId=t.id,await this.writer.write(new sn({ops:[{op:"replace",path:"",value:{id:t.id,name:t.name,type:t.run_type,streamed_output:[],final_output:void 0,logs:{}}}]}))),!this._includeRun(t))return;this.counterMapByRunName[t.name]===void 0&&(this.counterMapByRunName[t.name]=0),this.counterMapByRunName[t.name]+=1;const e=this.counterMapByRunName[t.name];this.keyMapByRunId[t.id]=e===1?t.name:`${t.name}:${e}`;const r={id:t.id,name:t.name,type:t.run_type,tags:t.tags??[],metadata:((a=t.extra)==null?void 0:a.metadata)??{},start_time:new Date(t.start_time).toISOString(),streamed_output:[],streamed_output_str:[],final_output:void 0,end_time:void 0};this._schemaFormat==="streaming_events"&&(r.inputs=await w2(t,this._schemaFormat)),await this.writer.write(new sn({ops:[{op:"add",path:`/logs/${this.keyMapByRunId[t.id]}`,value:r}]}))}async onRunUpdate(t){try{const e=this.keyMapByRunId[t.id];if(e===void 0)return;const r=[];this._schemaFormat==="streaming_events"&&r.push({op:"replace",path:`/logs/${e}/inputs`,value:await w2(t,this._schemaFormat)}),r.push({op:"add",path:`/logs/${e}/final_output`,value:await b2(t,this._schemaFormat)}),t.end_time!==void 0&&r.push({op:"add",path:`/logs/${e}/end_time`,value:new Date(t.end_time).toISOString()});const a=new sn({ops:r});await this.writer.write(a)}finally{if(t.id===this.rootId){const e=new sn({ops:[{op:"replace",path:"/final_output",value:await b2(t,this._schemaFormat)}]});await this.writer.write(e),this.autoClose&&await this.writer.close()}}}async onLLMNewToken(t,e,r){const a=this.keyMapByRunId[t.id];if(a===void 0)return;const n=t.inputs.messages!==void 0;let i;n?_7(r==null?void 0:r.chunk)?i=r==null?void 0:r.chunk:i=new ti(e):i=e;const l=new sn({ops:[{op:"add",path:`/logs/${a}/streamed_output_str/-`,value:e},{op:"add",path:`/logs/${a}/streamed_output/-`,value:i}]});await this.writer.write(l)}}}}),K2,f2,e0,NQ=be({"node_modules/@langchain/core/dist/singletons/index.js"(){K2=class{getStore(){}run(t,e){e()}},f2=class{constructor(){Object.defineProperty(this,"asyncLocalStorage",{enumerable:!0,configurable:!0,writable:!0,value:new K2}),Object.defineProperty(this,"hasBeenInitialized",{enumerable:!0,configurable:!0,writable:!0,value:!1})}getInstance(){return this.asyncLocalStorage}initializeGlobalInstance(t){this.hasBeenInitialized||(this.hasBeenInitialized=!0,this.asyncLocalStorage=t)}},e0=new f2}});async function Ni(t){return Pr.configure(t==null?void 0:t.callbacks,void 0,t==null?void 0:t.tags,void 0,t==null?void 0:t.metadata)}function Q2(...t){const e=lr();for(const r of t.filter(a=>!!a))for(const a of Object.keys(r))if(a==="metadata")e[a]={...e[a],...r[a]};else if(a==="tags")e[a]=[...new Set(e[a].concat(r[a]??[]))];else if(a==="configurable")e[a]={...e[a],...r[a]};else if(a==="callbacks"){const n=e.callbacks,i=r.callbacks;if(Array.isArray(i))if(!n)e.callbacks=i;else if(Array.isArray(n))e.callbacks=n.concat(i);else{const l=n.copy();for(const s of i)l.addHandler(zc(s),!0);e.callbacks=l}else if(i)if(!n)e.callbacks=i;else if(Array.isArray(n)){const l=i.copy();for(const s of n)l.addHandler(zc(s),!0);e.callbacks=l}else e.callbacks=new Pr(i._parentRunId,{handlers:n.handlers.concat(i.handlers),inheritableHandlers:n.inheritableHandlers.concat(i.inheritableHandlers),tags:Array.from(new Set(n.tags.concat(i.tags))),inheritableTags:Array.from(new Set(n.inheritableTags.concat(i.inheritableTags))),metadata:{...n.metadata,...i.metadata}})}else{const n=a;e[n]=r[n]??e[n]}return e}function lr(t){var a;const e=t??e0.getInstance().getStore();let r={tags:[],metadata:{},callbacks:void 0,recursionLimit:25};if(e&&(r={...r,...e}),e!=null&&e.configurable)for(const n of Object.keys(e.configurable))LQ.has(typeof e.configurable[n])&&!((a=r.metadata)!=null&&a[n])&&(r.metadata||(r.metadata={}),r.metadata[n]=e.configurable[n]);return r}function Xr(t={},{callbacks:e,maxConcurrency:r,recursionLimit:a,runName:n,configurable:i}={}){const l=lr(t);return e!==void 0&&(delete l.runName,l.callbacks=e),a!==void 0&&(l.recursionLimit=a),r!==void 0&&(l.maxConcurrency=r),n!==void 0&&(l.runName=n),i!==void 0&&(l.configurable={...l.configurable,...i}),l}var $p,LQ,zs=be({"node_modules/@langchain/core/dist/runnables/config.js"(){uu(),NQ(),$p=25,LQ=new Set(["string","number","boolean"])}}),FA,D7=be({"node_modules/@langchain/core/dist/tracers/root_listener.js"(){du(),FA=class extends ou{constructor({config:t,onStart:e,onEnd:r,onError:a}){super(),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RootListenersTracer"}),Object.defineProperty(this,"rootId",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnStart",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnEnd",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"argOnError",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.config=t,this.argOnStart=e,this.argOnEnd=r,this.argOnError=a}persistRun(t){return Promise.resolve()}async onRunCreate(t){this.rootId||(this.rootId=t.id,this.argOnStart&&(this.argOnStart.length===1?await this.argOnStart(t):this.argOnStart.length===2&&await this.argOnStart(t,this.config)))}async onRunUpdate(t){t.id===this.rootId&&(t.error?this.argOnError&&(this.argOnError.length===1?await this.argOnError(t):this.argOnError.length===2&&await this.argOnError(t,this.config)):this.argOnEnd&&(this.argOnEnd.length===1?await this.argOnEnd(t):this.argOnEnd.length===2&&await this.argOnEnd(t,this.config)))}}}}),TQ,M7=be({"node_modules/@langchain/core/dist/runnables/utils.js"(){TQ=class{constructor(t){Object.defineProperty(this,"includeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"includeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeNames",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTypes",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"excludeTags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.includeNames=t.includeNames,this.includeTypes=t.includeTypes,this.includeTags=t.includeTags,this.excludeNames=t.excludeNames,this.excludeTypes=t.excludeTypes,this.excludeTags=t.excludeTags}includeEvent(t,e){let r=this.includeNames===void 0&&this.includeTypes===void 0&&this.includeTags===void 0;const a=t.tags??[];return this.includeNames!==void 0&&(r=r||this.includeNames.includes(t.name)),this.includeTypes!==void 0&&(r=r||this.includeTypes.includes(e)),this.includeTags!==void 0&&(r=r||a.some(n=>{var i;return(i=this.includeTags)==null?void 0:i.includes(n)})),this.excludeNames!==void 0&&(r=r&&!this.excludeNames.includes(t.name)),this.excludeTypes!==void 0&&(r=r&&!this.excludeTypes.includes(e)),this.excludeTags!==void 0&&(r=r&&a.every(n=>{var i;return!((i=this.excludeTags)!=null&&i.includes(n))})),r}}}});function pr(t,e){return t&&!Array.isArray(t)&&!(t instanceof Date)&&typeof t=="object"?t:{[e]:t}}function Pi(t){if(typeof t=="function")return new kQ({func:t});if(Ot.isRunnable(t))return t;if(!Array.isArray(t)&&typeof t=="object"){const e={};for(const[r,a]of Object.entries(t))e[r]=Pi(a);return new od({steps:e})}else throw new Error(`Expected a Runnable, function or object.
Instead got an unsupported type.`)}var Zm,Ot,Co,W2,v2,Bi,od,kQ,F2,yA,y2,Ma=be({"node_modules/@langchain/core/dist/runnables/base.js"(){Zm=Gr(hB(),1),uu(),I7(),lu(),pu(),zs(),s1(),D7(),M7(),NQ(),Ot=class extends Fl{constructor(){super(...arguments),Object.defineProperty(this,"lc_runnable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}getName(t){const e=this.name??this.constructor.lc_name()??this.constructor.name;return t?`${e}${t}`:e}bind(t){return new Co({bound:this,kwargs:t,config:{}})}map(){return new W2({bound:this})}withRetry(t){return new v2({bound:this,kwargs:{},config:{},maxAttemptNumber:t==null?void 0:t.stopAfterAttempt,...t})}withConfig(t){return new Co({bound:this,config:t,kwargs:{}})}withFallbacks(t){return new F2({runnable:this,fallbacks:t.fallbacks})}_getOptionsList(t,e=0){if(Array.isArray(t)){if(t.length!==e)throw new Error(`Passed "options" must be an array with the same length as the inputs, but got ${t.length} options for ${e} inputs`);return t.map(lr)}return Array.from({length:e},()=>lr(t))}async batch(t,e,r){var s;const a=this._getOptionsList(e??{},t.length),n=((s=a[0])==null?void 0:s.maxConcurrency)??(r==null?void 0:r.maxConcurrency),i=new su({maxConcurrency:n,onFailedAttempt:o=>{throw o}}),l=t.map((o,d)=>i.call(async()=>{try{return await this.invoke(o,a[d])}catch(u){if(r!=null&&r.returnExceptions)return u;throw u}}));return Promise.all(l)}async*_streamIterator(t,e){yield this.invoke(t,e)}async stream(t,e){const r=new tl(this._streamIterator(t,lr(e)));return await r.setup,jn.fromAsyncGenerator(r)}_separateRunnableConfigFromCallOptions(t={}){const e=lr({callbacks:t.callbacks,tags:t.tags,metadata:t.metadata,runName:t.runName,configurable:t.configurable,recursionLimit:t.recursionLimit,maxConcurrency:t.maxConcurrency}),r={...t};return delete r.callbacks,delete r.tags,delete r.metadata,delete r.runName,delete r.configurable,delete r.recursionLimit,delete r.maxConcurrency,[e,r]}async _callWithConfig(t,e,r){const a=lr(r),n=await Ni(a),i=await(n==null?void 0:n.handleChainStart(this.toJSON(),pr(e,"input"),void 0,a==null?void 0:a.runType,void 0,void 0,(a==null?void 0:a.runName)??this.getName()));let l;try{l=await t.call(this,e,a,i)}catch(s){throw await(i==null?void 0:i.handleChainError(s)),s}return await(i==null?void 0:i.handleChainEnd(pr(l,"output"))),l}async _batchWithConfig(t,e,r,a){const n=this._getOptionsList(r??{},e.length),i=await Promise.all(n.map(Ni)),l=await Promise.all(i.map((o,d)=>o==null?void 0:o.handleChainStart(this.toJSON(),pr(e[d],"input"),void 0,n[d].runType,void 0,void 0,n[d].runName??this.getName())));let s;try{s=await t.call(this,e,n,l,a)}catch(o){throw await Promise.all(l.map(d=>d==null?void 0:d.handleChainError(o))),o}return await Promise.all(l.map(o=>o==null?void 0:o.handleChainEnd(pr(s,"output")))),s}async*_transformStreamWithConfig(t,e,r){let a,n=!0,i,l=!0;const s=lr(r),o=await Ni(s);async function*d(){for await(const c of t){if(n)if(a===void 0)a=c;else try{a=el(a,c)}catch{a=void 0,n=!1}yield c}}let u;try{const c=await U7(e.bind(this),d(),async()=>o==null?void 0:o.handleChainStart(this.toJSON(),{input:""},void 0,s==null?void 0:s.runType,void 0,void 0,(s==null?void 0:s.runName)??this.getName()),s);u=c.setup;const p=h=>h.name==="log_stream_tracer",A=u==null?void 0:u.handlers.find(p);let m=c.output;A!==void 0&&u!==void 0&&(m=await A.tapOutputIterable(u.runId,c.output));for await(const h of m)if(yield h,l)if(i===void 0)i=h;else try{i=el(i,h)}catch{i=void 0,l=!1}}catch(c){throw await(u==null?void 0:u.handleChainError(c,void 0,void 0,void 0,{inputs:pr(a,"input")})),c}await(u==null?void 0:u.handleChainEnd(i??{},void 0,void 0,void 0,{inputs:pr(a,"input")}))}pipe(t){return new Bi({first:this,last:Pi(t)})}pick(t){return this.pipe(new y2(t))}assign(t){return this.pipe(new yA(new od({steps:t})))}async*transform(t,e){let r;for await(const a of t)r===void 0?r=a:r=el(r,a);yield*this._streamIterator(r,lr(e))}async*streamLog(t,e,r){const a=new WA({...r,autoClose:!1,_schemaFormat:"original"}),n=lr(e);yield*this._streamLog(t,a,n)}async*_streamLog(t,e,r){const{callbacks:a}=r;if(a===void 0)r.callbacks=[e];else if(Array.isArray(a))r.callbacks=a.concat([e]);else{const s=a.copy();s.inheritableHandlers.push(e),r.callbacks=s}const n=this.stream(t,r);async function i(){try{const s=await n;for await(const o of s){const d=new sn({ops:[{op:"add",path:"/streamed_output/-",value:o}]});await e.writer.write(d)}}finally{await e.writer.close()}}const l=i();try{for await(const s of e)yield s}finally{await l}}async*streamEvents(t,e,r){if(e.version!=="v1")throw new Error('Only version "v1" of the events schema is currently supported.');let a,n=!1;const i=lr(e),l=i.tags??[],s=i.metadata??{},o=i.runName??this.getName(),d=new WA({...r,autoClose:!1,_schemaFormat:"streaming_events"}),u=new TQ({...r}),c=this._streamLog(t,d,i);for await(const A of c){if(a?a=a.concat(A):a=QA.fromRunLogPatch(A),a.state===void 0)throw new Error('Internal error: "streamEvents" state is missing. Please open a bug report.');if(!n){n=!0;const w={...a.state},b={run_id:w.id,event:`on_${w.type}_start`,name:o,tags:l,metadata:s,data:{input:t}};u.includeEvent(b,w.type)&&(yield b)}const m=A.ops.filter(w=>w.path.startsWith("/logs/")).map(w=>w.path.split("/")[2]),h=[...new Set(m)];for(const w of h){let b,f={};const K=a.state.logs[w];if(K.end_time===void 0?K.streamed_output.length>0?b="stream":b="start":b="end",b==="start")K.inputs!==void 0&&(f.input=K.inputs);else if(b==="end")K.inputs!==void 0&&(f.input=K.inputs),f.output=K.final_output;else if(b==="stream"){const W=K.streamed_output.length;if(W!==1)throw new Error(`Expected exactly one chunk of streamed output, got ${W} instead. Encountered in: "${K.name}"`);f={chunk:K.streamed_output[0]},K.streamed_output=[]}yield{event:`on_${K.type}_${b}`,name:K.name,run_id:K.id,tags:K.tags,metadata:K.metadata,data:f}}const{state:C}=a;if(C.streamed_output.length>0){const w=C.streamed_output.length;if(w!==1)throw new Error(`Expected exactly one chunk of streamed output, got ${w} instead. Encountered in: "${C.name}"`);const b={chunk:C.streamed_output[0]};C.streamed_output=[];const f={event:`on_${C.type}_stream`,run_id:C.id,tags:l,metadata:s,name:o,data:b};u.includeEvent(f,C.type)&&(yield f)}}const p=a==null?void 0:a.state;if(p!==void 0){const A={event:`on_${p.type}_end`,name:o,run_id:p.id,tags:l,metadata:s,data:{output:p.final_output}};u.includeEvent(A,p.type)&&(yield A)}}static isRunnable(t){return t?t.lc_runnable:!1}withListeners({onStart:t,onEnd:e,onError:r}){return new Co({bound:this,config:{},configFactories:[a=>({callbacks:[new FA({config:a,onStart:t,onEnd:e,onError:r})]})]})}},Co=class UQ extends Ot{static lc_name(){return"RunnableBinding"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"bound",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"kwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"configFactories",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.bound=e.bound,this.kwargs=e.kwargs,this.config=e.config,this.configFactories=e.configFactories}getName(e){return this.bound.getName(e)}async _mergeConfig(...e){const r=Q2(this.config,...e);return Q2(r,...this.configFactories?await Promise.all(this.configFactories.map(async a=>await a(r))):[])}bind(e){return new this.constructor({bound:this.bound,kwargs:{...this.kwargs,...e},config:this.config})}withConfig(e){return new this.constructor({bound:this.bound,kwargs:this.kwargs,config:{...this.config,...e}})}withRetry(e){return new this.constructor({bound:this.bound.withRetry(e),kwargs:this.kwargs,config:this.config})}async invoke(e,r){return this.bound.invoke(e,await this._mergeConfig(r,this.kwargs))}async batch(e,r,a){const n=Array.isArray(r)?await Promise.all(r.map(async i=>this._mergeConfig(i,this.kwargs))):await this._mergeConfig(r,this.kwargs);return this.bound.batch(e,n,a)}async*_streamIterator(e,r){yield*this.bound._streamIterator(e,await this._mergeConfig(r,this.kwargs))}async stream(e,r){return this.bound.stream(e,await this._mergeConfig(r,this.kwargs))}async*transform(e,r){yield*this.bound.transform(e,await this._mergeConfig(r,this.kwargs))}async*streamEvents(e,r,a){yield*this.bound.streamEvents(e,{...await this._mergeConfig(r,this.kwargs),version:r.version},a)}static isRunnableBinding(e){return e.bound&&Ot.isRunnable(e.bound)}withListeners({onStart:e,onEnd:r,onError:a}){return new UQ({bound:this.bound,kwargs:this.kwargs,config:this.config,configFactories:[n=>({callbacks:[new FA({config:n,onStart:e,onEnd:r,onError:a})]})]})}},W2=class RA extends Ot{static lc_name(){return"RunnableEach"}constructor(e){super(e),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"bound",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.bound=e.bound}bind(e){return new RA({bound:this.bound.bind(e)})}async invoke(e,r){return this._callWithConfig(this._invoke,e,r)}async _invoke(e,r,a){return this.bound.batch(e,Xr(r,{callbacks:a==null?void 0:a.getChild()}))}withListeners({onStart:e,onEnd:r,onError:a}){return new RA({bound:this.bound.withListeners({onStart:e,onEnd:r,onError:a})})}},v2=class extends Co{static lc_name(){return"RunnableRetry"}constructor(t){super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"maxAttemptNumber",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"onFailedAttempt",{enumerable:!0,configurable:!0,writable:!0,value:()=>{}}),this.maxAttemptNumber=t.maxAttemptNumber??this.maxAttemptNumber,this.onFailedAttempt=t.onFailedAttempt??this.onFailedAttempt}_patchConfigForRetry(t,e,r){const a=t>1?`retry:attempt:${t}`:void 0;return Xr(e,{callbacks:r==null?void 0:r.getChild(a)})}async _invoke(t,e,r){return(0,Zm.default)(a=>super.invoke(t,this._patchConfigForRetry(a,e,r)),{onFailedAttempt:this.onFailedAttempt,retries:Math.max(this.maxAttemptNumber-1,0),randomize:!0})}async invoke(t,e){return this._callWithConfig(this._invoke,t,e)}async _batch(t,e,r,a){const n={};try{await(0,Zm.default)(async i=>{const l=t.map((c,p)=>p).filter(c=>n[c.toString()]===void 0||n[c.toString()]instanceof Error),s=l.map(c=>t[c]),o=l.map(c=>this._patchConfigForRetry(i,e==null?void 0:e[c],r==null?void 0:r[c])),d=await super.batch(s,o,{...a,returnExceptions:!0});let u;for(let c=0;c<d.length;c+=1){const p=d[c],A=l[c];p instanceof Error&&u===void 0&&(u=p),n[A.toString()]=p}if(u)throw u;return d},{onFailedAttempt:this.onFailedAttempt,retries:Math.max(this.maxAttemptNumber-1,0),randomize:!0})}catch(i){if((a==null?void 0:a.returnExceptions)!==!0)throw i}return Object.keys(n).sort((i,l)=>parseInt(i,10)-parseInt(l,10)).map(i=>n[parseInt(i,10)])}async batch(t,e,r){return this._batchWithConfig(this._batch.bind(this),t,e,r)}},Bi=class Uo extends Ot{static lc_name(){return"RunnableSequence"}constructor(e){super(e),Object.defineProperty(this,"first",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"middle",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"last",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),this.first=e.first,this.middle=e.middle??this.middle,this.last=e.last,this.name=e.name}get steps(){return[this.first,...this.middle,this.last]}async invoke(e,r){const a=lr(r),n=await Ni(a),i=await(n==null?void 0:n.handleChainStart(this.toJSON(),pr(e,"input"),void 0,void 0,void 0,void 0,a==null?void 0:a.runName));let l=e,s;try{const o=[this.first,...this.middle];for(let d=0;d<o.length;d+=1)l=await o[d].invoke(l,Xr(a,{callbacks:i==null?void 0:i.getChild(`seq:step:${d+1}`)}));s=await this.last.invoke(l,Xr(a,{callbacks:i==null?void 0:i.getChild(`seq:step:${this.steps.length}`)}))}catch(o){throw await(i==null?void 0:i.handleChainError(o)),o}return await(i==null?void 0:i.handleChainEnd(pr(s,"output"))),s}async batch(e,r,a){const n=this._getOptionsList(r??{},e.length),i=await Promise.all(n.map(Ni)),l=await Promise.all(i.map((o,d)=>o==null?void 0:o.handleChainStart(this.toJSON(),pr(e[d],"input"),void 0,void 0,void 0,void 0,n[d].runName)));let s=e;try{for(let o=0;o<this.steps.length;o+=1)s=await this.steps[o].batch(s,l.map((u,c)=>{const p=u==null?void 0:u.getChild(`seq:step:${o+1}`);return Xr(n[c],{callbacks:p})}),a)}catch(o){throw await Promise.all(l.map(d=>d==null?void 0:d.handleChainError(o))),o}return await Promise.all(l.map(o=>o==null?void 0:o.handleChainEnd(pr(s,"output")))),s}async*_streamIterator(e,r){const a=await Ni(r),n=await(a==null?void 0:a.handleChainStart(this.toJSON(),pr(e,"input"),void 0,void 0,void 0,void 0,r==null?void 0:r.runName)),i=[this.first,...this.middle,this.last];let l=!0,s;async function*o(){yield e}try{let d=i[0].transform(o(),Xr(r,{callbacks:n==null?void 0:n.getChild("seq:step:1")}));for(let u=1;u<i.length;u+=1)d=await i[u].transform(d,Xr(r,{callbacks:n==null?void 0:n.getChild(`seq:step:${u+1}`)}));for await(const u of d)if(yield u,l)if(s===void 0)s=u;else try{s=el(s,u)}catch{s=void 0,l=!1}}catch(d){throw await(n==null?void 0:n.handleChainError(d)),d}await(n==null?void 0:n.handleChainEnd(pr(s,"output")))}pipe(e){return Uo.isRunnableSequence(e)?new Uo({first:this.first,middle:this.middle.concat([this.last,e.first,...e.middle]),last:e.last,name:this.name??e.name}):new Uo({first:this.first,middle:[...this.middle,this.last],last:Pi(e),name:this.name})}static isRunnableSequence(e){return Array.isArray(e.middle)&&Ot.isRunnable(e)}static from([e,...r],a){return new Uo({first:Pi(e),middle:r.slice(0,-1).map(Pi),last:Pi(r[r.length-1]),name:a})}},od=class _Q extends Ot{static lc_name(){return"RunnableMap"}getStepsKeys(){return Object.keys(this.steps)}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"steps",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.steps={};for(const[r,a]of Object.entries(e.steps))this.steps[r]=Pi(a)}static from(e){return new _Q({steps:e})}async invoke(e,r){const a=lr(r),n=await Ni(a),i=await(n==null?void 0:n.handleChainStart(this.toJSON(),{input:e},void 0,void 0,void 0,void 0,a==null?void 0:a.runName)),l={};try{await Promise.all(Object.entries(this.steps).map(async([s,o])=>{l[s]=await o.invoke(e,Xr(a,{callbacks:i==null?void 0:i.getChild(`map:key:${s}`)}))}))}catch(s){throw await(i==null?void 0:i.handleChainError(s)),s}return await(i==null?void 0:i.handleChainEnd(l)),l}async*_transform(e,r,a){const n={...this.steps},i=C2(e,Object.keys(n).length),l=new Map(Object.entries(n).map(([s,o],d)=>{const u=o.transform(i[d],Xr(a,{callbacks:r==null?void 0:r.getChild(`map:key:${s}`)}));return[s,u.next().then(c=>({key:s,gen:u,result:c}))]}));for(;l.size;){const{key:s,result:o,gen:d}=await Promise.race(l.values());l.delete(s),o.done||(yield{[s]:o.value},l.set(s,d.next().then(u=>({key:s,gen:d,result:u}))))}}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new tl(this.transform(a(),r));return await n.setup,jn.fromAsyncGenerator(n)}},kQ=class IQ extends Ot{static lc_name(){return"RunnableLambda"}constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"func",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.func=e.func}static from(e){return new IQ({func:e})}async _invoke(e,r,a){return new Promise((n,i)=>{const l=Xr(r,{callbacks:a==null?void 0:a.getChild(),recursionLimit:((r==null?void 0:r.recursionLimit)??$p)-1});e0.getInstance().run(l,async()=>{try{let s=await this.func(e,{...l,config:l});if(s&&Ot.isRunnable(s)){if((r==null?void 0:r.recursionLimit)===0)throw new Error("Recursion limit reached.");s=await s.invoke(e,{...l,recursionLimit:(l.recursionLimit??$p)-1})}n(s)}catch(s){i(s)}})})}async invoke(e,r){return this._callWithConfig(this._invoke,e,r)}async*_transform(e,r,a){let n;for await(const l of e)if(n===void 0)n=l;else try{n=el(n,l)}catch{n=l}const i=await new Promise((l,s)=>{e0.getInstance().run(a,async()=>{try{const o=await this.func(n,{...a,config:a});l(o)}catch(o){s(o)}})});if(i&&Ot.isRunnable(i)){if((a==null?void 0:a.recursionLimit)===0)throw new Error("Recursion limit reached.");const l=await i.stream(n,Xr(a,{callbacks:r==null?void 0:r.getChild(),recursionLimit:((a==null?void 0:a.recursionLimit)??$p)-1}));for await(const s of l)yield s}else yield i}transform(e,r){return this._transformStreamWithConfig(e,this._transform.bind(this),r)}async stream(e,r){async function*a(){yield e}const n=new tl(this.transform(a(),r));return await n.setup,jn.fromAsyncGenerator(n)}},F2=class extends Ot{static lc_name(){return"RunnableWithFallbacks"}constructor(t){super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"runnable",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fallbacks",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.runnable=t.runnable,this.fallbacks=t.fallbacks}*runnables(){yield this.runnable;for(const t of this.fallbacks)yield t}async invoke(t,e){const r=await Pr.configure(e==null?void 0:e.callbacks,void 0,e==null?void 0:e.tags,void 0,e==null?void 0:e.metadata),a=await(r==null?void 0:r.handleChainStart(this.toJSON(),pr(t,"input"),void 0,void 0,void 0,void 0,e==null?void 0:e.runName));let n;for(const i of this.runnables())try{const l=await i.invoke(t,Xr(e,{callbacks:a==null?void 0:a.getChild()}));return await(a==null?void 0:a.handleChainEnd(pr(l,"output"))),l}catch(l){n===void 0&&(n=l)}throw n===void 0?new Error("No error stored at end of fallback."):(await(a==null?void 0:a.handleChainError(n)),n)}async batch(t,e,r){if(r!=null&&r.returnExceptions)throw new Error("Not implemented.");const a=this._getOptionsList(e??{},t.length),n=await Promise.all(a.map(s=>Pr.configure(s==null?void 0:s.callbacks,void 0,s==null?void 0:s.tags,void 0,s==null?void 0:s.metadata))),i=await Promise.all(n.map((s,o)=>s==null?void 0:s.handleChainStart(this.toJSON(),pr(t[o],"input"),void 0,void 0,void 0,void 0,a[o].runName)));let l;for(const s of this.runnables())try{const o=await s.batch(t,i.map((d,u)=>Xr(a[u],{callbacks:d==null?void 0:d.getChild()})),r);return await Promise.all(i.map((d,u)=>d==null?void 0:d.handleChainEnd(pr(o[u],"output")))),o}catch(o){l===void 0&&(l=o)}throw l?(await Promise.all(i.map(s=>s==null?void 0:s.handleChainError(l))),l):new Error("No error stored at end of fallbacks.")}},yA=class extends Ot{static lc_name(){return"RunnableAssign"}constructor(t){t instanceof od&&(t={mapper:t}),super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"mapper",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.mapper=t.mapper}async invoke(t,e){const r=await this.mapper.invoke(t,e);return{...t,...r}}async*_transform(t,e,r){const a=this.mapper.getStepsKeys(),[n,i]=C2(t),l=this.mapper.transform(i,Xr(r,{callbacks:e==null?void 0:e.getChild()})),s=l.next();for await(const o of n){if(typeof o!="object"||Array.isArray(o))throw new Error(`RunnableAssign can only be used with objects as input, got ${typeof o}`);const d=Object.fromEntries(Object.entries(o).filter(([u])=>!a.includes(u)));Object.keys(d).length>0&&(yield d)}yield(await s).value;for await(const o of l)yield o}transform(t,e){return this._transformStreamWithConfig(t,this._transform.bind(this),e)}async stream(t,e){async function*r(){yield t}const a=new tl(this.transform(r(),e));return await a.setup,jn.fromAsyncGenerator(a)}},y2=class extends Ot{static lc_name(){return"RunnablePick"}constructor(t){(typeof t=="string"||Array.isArray(t))&&(t={keys:t}),super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"keys",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.keys=t.keys}async _pick(t){if(typeof this.keys=="string")return t[this.keys];{const e=this.keys.map(r=>[r,t[r]]).filter(r=>r[1]!==void 0);return e.length===0?void 0:Object.fromEntries(e)}}async invoke(t,e){return this._callWithConfig(this._pick.bind(this),t,e)}async*_transform(t){for await(const e of t){const r=await this._pick(e);r!==void 0&&(yield r)}}transform(t,e){return this._transformStreamWithConfig(t,this._transform.bind(this),e)}async stream(t,e){async function*r(){yield t}const a=new tl(this.transform(r(),e));return await a.setup,jn.fromAsyncGenerator(a)}}}}),QB,u1=be({"node_modules/@langchain/core/dist/prompts/string.js"(){l1(),mu(),QB=class extends vB{async formatPromptValue(t){const e=await this.format(t);return new gB(e)}}}}),Xm,R2,Ap,E2,qn,DQ,t0,cu=be({"node_modules/@langchain/core/dist/prompts/template.js"(){Xm=t=>{const e=t.split(""),r=[],a=(i,l)=>{for(let s=l;s<e.length;s+=1)if(i.includes(e[s]))return s;return-1};let n=0;for(;n<e.length;)if(e[n]==="{"&&n+1<e.length&&e[n+1]==="{")r.push({type:"literal",text:"{"}),n+=2;else if(e[n]==="}"&&n+1<e.length&&e[n+1]==="}")r.push({type:"literal",text:"}"}),n+=2;else if(e[n]==="{"){const i=a("}",n);if(i<0)throw new Error("Unclosed '{' in template.");r.push({type:"variable",name:e.slice(n+1,i).join("")}),n=i+1}else{if(e[n]==="}")throw new Error("Single '}' in template.");{const i=a("{}",n),l=(i<0?e.slice(n):e.slice(n,i)).join("");r.push({type:"literal",text:l}),n=i<0?e.length:i}}return r},R2=(t,e)=>Xm(t).reduce((r,a)=>{if(a.type==="variable"){if(a.name in e)return r+e[a.name];throw new Error(`Missing value for input ${a.name}`)}return r+a.text},""),Ap={"f-string":R2},E2={"f-string":Xm},qn=(t,e,r)=>Ap[e](t,r),DQ=(t,e)=>E2[e](t),t0=(t,e,r)=>{if(!(e in Ap)){const a=Object.keys(Ap);throw new Error(`Invalid template format. Got \`${e}\`;
should be one of ${a}`)}try{const a=r.reduce((n,i)=>(n[i]="foo",n),{});Array.isArray(t)?t.forEach(n=>{if(n.type==="text")qn(n.text,e,a);else if(n.type==="image_url")if(typeof n.image_url=="string")qn(n.image_url,e,a);else{const i=n.image_url.url;qn(i,e,a)}else throw new Error(`Invalid message template received. ${JSON.stringify(n,null,2)}`)}):qn(t,e,a)}catch(a){throw new Error(`Invalid prompt schema: ${a.message}`)}}}}),EA={};iu(EA,{PromptTemplate:()=>La});var La,_d=be({"node_modules/@langchain/core/dist/prompts/prompt.js"(){u1(),cu(),La=class _o extends QB{static lc_name(){return"PromptTemplate"}constructor(e){if(super(e),Object.defineProperty(this,"template",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"templateFormat",{enumerable:!0,configurable:!0,writable:!0,value:"f-string"}),Object.defineProperty(this,"validateTemplate",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.assign(this,e),this.validateTemplate){let r=this.inputVariables;this.partialVariables&&(r=r.concat(Object.keys(this.partialVariables))),t0(this.template,this.templateFormat,r)}}_getPromptType(){return"prompt"}async format(e){const r=await this.mergePartialAndUserVariables(e);return qn(this.template,this.templateFormat,r)}static fromExamples(e,r,a,n=`
`,i=""){const l=[i,...e,r].join(n);return new _o({inputVariables:a,template:l})}static fromTemplate(e,{templateFormat:r="f-string",...a}={}){const n=new Set;return DQ(e,r).forEach(i=>{i.type==="variable"&&n.add(i.name)}),new _o({inputVariables:[...n],templateFormat:r,template:e,...a})}async partial(e){const r=this.inputVariables.filter(i=>!(i in e)),a={...this.partialVariables??{},...e},n={...this,inputVariables:r,partialVariables:a};return new _o(n)}serialize(){if(this.outputParser!==void 0)throw new Error("Cannot serialize a prompt template with an output parser");return{_type:this._getPromptType(),input_variables:this.inputVariables,template:this.template,template_format:this.templateFormat}}static async deserialize(e){if(!e.template)throw new Error("Prompt template must have a template");return new _o({inputVariables:e.input_variables,template:e.template,templateFormat:e.template_format})}}}}),MQ=be({"node_modules/@langchain/core/dist/prompts/image.js"(){l1(),mu(),cu()}}),xQ,WB=be({"node_modules/@langchain/core/dist/prompts/chat.js"(){ta(),l1(),Ma(),u1(),mu(),_d(),MQ(),cu(),xQ=class extends vB{constructor(t){super(t)}async format(t){return(await this.formatPromptValue(t)).toString()}async formatPromptValue(t){const e=await this.formatMessages(t);return new AB(e)}}}}),JQ={};iu(JQ,{FewShotChatMessagePromptTemplate:()=>PQ,FewShotPromptTemplate:()=>OQ});var OQ,PQ,zQ=be({"node_modules/@langchain/core/dist/prompts/few_shot.js"(){u1(),cu(),_d(),WB(),OQ=class GA extends QB{constructor(e){if(super(e),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"examples",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"exampleSelector",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"examplePrompt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"suffix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"exampleSeparator",{enumerable:!0,configurable:!0,writable:!0,value:`
`}),Object.defineProperty(this,"prefix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"templateFormat",{enumerable:!0,configurable:!0,writable:!0,value:"f-string"}),Object.defineProperty(this,"validateTemplate",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.assign(this,e),this.examples!==void 0&&this.exampleSelector!==void 0)throw new Error("Only one of 'examples' and 'example_selector' should be provided");if(this.examples===void 0&&this.exampleSelector===void 0)throw new Error("One of 'examples' and 'example_selector' should be provided");if(this.validateTemplate){let r=this.inputVariables;this.partialVariables&&(r=r.concat(Object.keys(this.partialVariables))),t0(this.prefix+this.suffix,this.templateFormat,r)}}_getPromptType(){return"few_shot"}static lc_name(){return"FewShotPromptTemplate"}async getExamples(e){if(this.examples!==void 0)return this.examples;if(this.exampleSelector!==void 0)return this.exampleSelector.selectExamples(e);throw new Error("One of 'examples' and 'example_selector' should be provided")}async partial(e){const r=this.inputVariables.filter(i=>!(i in e)),a={...this.partialVariables??{},...e},n={...this,inputVariables:r,partialVariables:a};return new GA(n)}async format(e){const r=await this.mergePartialAndUserVariables(e),a=await this.getExamples(r),n=await Promise.all(a.map(l=>this.examplePrompt.format(l))),i=[this.prefix,...n,this.suffix].join(this.exampleSeparator);return qn(i,this.templateFormat,r)}serialize(){if(this.exampleSelector||!this.examples)throw new Error("Serializing an example selector is not currently supported");if(this.outputParser!==void 0)throw new Error("Serializing an output parser is not currently supported");return{_type:this._getPromptType(),input_variables:this.inputVariables,example_prompt:this.examplePrompt.serialize(),example_separator:this.exampleSeparator,suffix:this.suffix,prefix:this.prefix,template_format:this.templateFormat,examples:this.examples}}static async deserialize(e){const{example_prompt:r}=e;if(!r)throw new Error("Missing example prompt");const a=await La.deserialize(r);let n;if(Array.isArray(e.examples))n=e.examples;else throw new Error("Invalid examples format. Only list or string are supported.");return new GA({inputVariables:e.input_variables,examplePrompt:a,examples:n,exampleSeparator:e.example_separator,prefix:e.prefix,suffix:e.suffix,templateFormat:e.template_format})}},PQ=class jQ extends xQ{_getPromptType(){return"few_shot_chat"}static lc_name(){return"FewShotChatMessagePromptTemplate"}constructor(e){if(super(e),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"examples",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"exampleSelector",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"examplePrompt",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"suffix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"exampleSeparator",{enumerable:!0,configurable:!0,writable:!0,value:`
`}),Object.defineProperty(this,"prefix",{enumerable:!0,configurable:!0,writable:!0,value:""}),Object.defineProperty(this,"templateFormat",{enumerable:!0,configurable:!0,writable:!0,value:"f-string"}),Object.defineProperty(this,"validateTemplate",{enumerable:!0,configurable:!0,writable:!0,value:!0}),this.examples=e.examples,this.examplePrompt=e.examplePrompt,this.exampleSeparator=e.exampleSeparator??`
`,this.exampleSelector=e.exampleSelector,this.prefix=e.prefix??"",this.suffix=e.suffix??"",this.templateFormat=e.templateFormat??"f-string",this.validateTemplate=e.validateTemplate??!0,this.examples!==void 0&&this.exampleSelector!==void 0)throw new Error("Only one of 'examples' and 'example_selector' should be provided");if(this.examples===void 0&&this.exampleSelector===void 0)throw new Error("One of 'examples' and 'example_selector' should be provided");if(this.validateTemplate){let r=this.inputVariables;this.partialVariables&&(r=r.concat(Object.keys(this.partialVariables))),t0(this.prefix+this.suffix,this.templateFormat,r)}}async getExamples(e){if(this.examples!==void 0)return this.examples;if(this.exampleSelector!==void 0)return this.exampleSelector.selectExamples(e);throw new Error("One of 'examples' and 'example_selector' should be provided")}async formatMessages(e){const r=await this.mergePartialAndUserVariables(e);let a=await this.getExamples(r);a=a.map(i=>{const l={};return this.examplePrompt.inputVariables.forEach(s=>{l[s]=i[s]}),l});const n=[];for(const i of a){const l=await this.examplePrompt.formatMessages(i);n.push(...l)}return n}async format(e){const r=await this.mergePartialAndUserVariables(e),a=await this.getExamples(r),i=(await Promise.all(a.map(s=>this.examplePrompt.formatMessages(s)))).flat().map(s=>s.content),l=[this.prefix,...i,this.suffix].join(this.exampleSeparator);return qn(l,this.templateFormat,r)}async partial(e){const r=this.inputVariables.filter(i=>!(i in e)),a={...this.partialVariables??{},...e},n={...this,inputVariables:r,partialVariables:a};return new jQ(n)}}}}),vB,mu=be({"node_modules/@langchain/core/dist/prompts/base.js"(){Ma(),vB=class extends Ot{get lc_attributes(){return{partialVariables:void 0}}constructor(t){super(t),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","prompts",this._getPromptType()]}),Object.defineProperty(this,"inputVariables",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"outputParser",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"partialVariables",{enumerable:!0,configurable:!0,writable:!0,value:void 0});const{inputVariables:e}=t;if(e.includes("stop"))throw new Error("Cannot have an input variable named 'stop', as it is used internally, please rename.");Object.assign(this,t)}async mergePartialAndUserVariables(t){const e=this.partialVariables??{},r={};for(const[n,i]of Object.entries(e))typeof i=="string"?r[n]=i:r[n]=await i();return{...r,...t}}async invoke(t,e){return this._callWithConfig(r=>this.formatPromptValue(r),t,{...e,runType:"prompt"})}serialize(){throw new Error("Use .toJSON() instead")}static async deserialize(t){switch(t._type){case"prompt":{const{PromptTemplate:e}=await Promise.resolve().then(()=>(_d(),EA));return e.deserialize(t)}case void 0:{const{PromptTemplate:e}=await Promise.resolve().then(()=>(_d(),EA));return e.deserialize({...t,_type:"prompt"})}case"few_shot":{const{FewShotPromptTemplate:e}=await Promise.resolve().then(()=>(zQ(),JQ));return e.deserialize(t)}default:throw new Error(`Invalid prompt type in config: ${t._type}`)}}}}}),x7=tt({"node_modules/node-fetch/node_modules/webidl-conversions/lib/index.js"(t,e){var r={};e.exports=r;function a(l){return l<0?-1:1}function n(l){return l%1===.5&&!(l&1)?Math.floor(l):Math.round(l)}function i(l,s){s.unsigned||--l;const o=s.unsigned?0:-Math.pow(2,l),d=Math.pow(2,l)-1,u=s.moduloBitLength?Math.pow(2,s.moduloBitLength):Math.pow(2,l),c=s.moduloBitLength?Math.pow(2,s.moduloBitLength-1):Math.pow(2,l-1);return function(p,A){A||(A={});let m=+p;if(A.enforceRange){if(!Number.isFinite(m))throw new TypeError("Argument is not a finite number");if(m=a(m)*Math.floor(Math.abs(m)),m<o||m>d)throw new TypeError("Argument is not in byte range");return m}if(!isNaN(m)&&A.clamp)return m=n(m),m<o&&(m=o),m>d&&(m=d),m;if(!Number.isFinite(m)||m===0)return 0;if(m=a(m)*Math.floor(Math.abs(m)),m=m%u,!s.unsigned&&m>=c)return m-u;if(s.unsigned){if(m<0)m+=u;else if(m===-0)return 0}return m}}r.void=function(){},r.boolean=function(l){return!!l},r.byte=i(8,{unsigned:!1}),r.octet=i(8,{unsigned:!0}),r.short=i(16,{unsigned:!1}),r["unsigned short"]=i(16,{unsigned:!0}),r.long=i(32,{unsigned:!1}),r["unsigned long"]=i(32,{unsigned:!0}),r["long long"]=i(32,{unsigned:!1,moduloBitLength:64}),r["unsigned long long"]=i(32,{unsigned:!0,moduloBitLength:64}),r.double=function(l){const s=+l;if(!Number.isFinite(s))throw new TypeError("Argument is not a finite floating-point value");return s},r["unrestricted double"]=function(l){const s=+l;if(isNaN(s))throw new TypeError("Argument is NaN");return s},r.float=r.double,r["unrestricted float"]=r["unrestricted double"],r.DOMString=function(l,s){return s||(s={}),s.treatNullAsEmptyString&&l===null?"":String(l)},r.ByteString=function(l,s){const o=String(l);let d;for(let u=0;(d=o.codePointAt(u))!==void 0;++u)if(d>255)throw new TypeError("Argument is not a valid bytestring");return o},r.USVString=function(l){const s=String(l),o=s.length,d=[];for(let u=0;u<o;++u){const c=s.charCodeAt(u);if(c<55296||c>57343)d.push(String.fromCodePoint(c));else if(56320<=c&&c<=57343)d.push(String.fromCodePoint(65533));else if(u===o-1)d.push(String.fromCodePoint(65533));else{const p=s.charCodeAt(u+1);if(56320<=p&&p<=57343){const A=c&1023,m=p&1023;d.push(String.fromCodePoint(65536+1024*A+m)),++u}else d.push(String.fromCodePoint(65533))}}return d.join("")},r.Date=function(l,s){if(!(l instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(l))return l},r.RegExp=function(l,s){return l instanceof RegExp||(l=new RegExp(l)),l}}}),J7=tt({"node_modules/node-fetch/node_modules/whatwg-url/lib/utils.js"(t,e){e.exports.mixin=function(a,n){const i=Object.getOwnPropertyNames(n);for(let l=0;l<i.length;++l)Object.defineProperty(a,i[l],Object.getOwnPropertyDescriptor(n,i[l]))},e.exports.wrapperSymbol=Symbol("wrapper"),e.exports.implSymbol=Symbol("impl"),e.exports.wrapperForImpl=function(r){return r[e.exports.wrapperSymbol]},e.exports.implForWrapper=function(r){return r[e.exports.implSymbol]}}}),O7=tt({"node_modules/node-fetch/node_modules/tr46/lib/mappingTable.json"(t,e){e.exports=[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1e3,1e3],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6e3],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8e3,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8e3]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9e3],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[3e4]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13e3,13e3],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43e3,43e3],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64e3,64e3],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66e3,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[12e4,12e4],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128e3,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23e3]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149e3]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32e3]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195e3,195e3],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[4e4]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918e3,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]}}),P7=tt({"node_modules/node-fetch/node_modules/tr46/index.js"(t,e){var r=hi("punycode"),a=O7(),n={TRANSITIONAL:0,NONTRANSITIONAL:1};function i(A){return A.split("\0").map(function(m){return m.normalize("NFC")}).join("\0")}function l(A){for(var m=0,h=a.length-1;m<=h;){var C=Math.floor((m+h)/2),w=a[C];if(w[0][0]<=A&&w[0][1]>=A)return w;w[0][0]>A?h=C-1:m=C+1}return null}var s=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;function o(A){return A.replace(s,"_").length}function d(A,m,h){for(var C=!1,w="",b=o(A),f=0;f<b;++f){var K=A.codePointAt(f),W=l(K);switch(W[1]){case"disallowed":C=!0,w+=String.fromCodePoint(K);break;case"ignored":break;case"mapped":w+=String.fromCodePoint.apply(String,W[2]);break;case"deviation":h===n.TRANSITIONAL?w+=String.fromCodePoint.apply(String,W[2]):w+=String.fromCodePoint(K);break;case"valid":w+=String.fromCodePoint(K);break;case"disallowed_STD3_mapped":m?(C=!0,w+=String.fromCodePoint(K)):w+=String.fromCodePoint.apply(String,W[2]);break;case"disallowed_STD3_valid":m&&(C=!0),w+=String.fromCodePoint(K);break}}return{string:w,error:C}}var u=/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/;function c(A,m){A.substr(0,4)==="xn--"&&(A=r.toUnicode(A),n.NONTRANSITIONAL);var h=!1;(i(A)!==A||A[3]==="-"&&A[4]==="-"||A[0]==="-"||A[A.length-1]==="-"||A.indexOf(".")!==-1||A.search(u)===0)&&(h=!0);for(var C=o(A),w=0;w<C;++w){var b=l(A.codePointAt(w));if(p===n.TRANSITIONAL&&b[1]!=="valid"||p===n.NONTRANSITIONAL&&b[1]!=="valid"&&b[1]!=="deviation"){h=!0;break}}return{label:A,error:h}}function p(A,m,h){var C=d(A,m,h);C.string=i(C.string);for(var w=C.string.split("."),b=0;b<w.length;++b)try{var f=c(w[b]);w[b]=f.label,C.error=C.error||f.error}catch{C.error=!0}return{string:w.join("."),error:C.error}}e.exports.toASCII=function(A,m,h,C){var w=p(A,m,h),b=w.string.split(".");if(b=b.map(function(W){try{return r.toASCII(W)}catch{return w.error=!0,W}}),C){var f=b.slice(0,b.length-1).join(".").length;(f.length>253||f.length===0)&&(w.error=!0);for(var K=0;K<b.length;++K)if(b.length>63||b.length===0){w.error=!0;break}}return w.error?null:b.join(".")},e.exports.toUnicode=function(A,m){var h=p(A,m,n.NONTRANSITIONAL);return{domain:h.string,error:h.error}},e.exports.PROCESSING_OPTIONS=n}}),on=tt({"node_modules/node-fetch/node_modules/whatwg-url/lib/url-state-machine.js"(t,e){var r=hi("punycode"),a=P7(),n={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},i=Symbol("failure");function l(H){return r.ucs2.decode(H).length}function s(H,V){const q=H[V];return isNaN(q)?void 0:String.fromCodePoint(q)}function o(H){return H>=48&&H<=57}function d(H){return H>=65&&H<=90||H>=97&&H<=122}function u(H){return d(H)||o(H)}function c(H){return o(H)||H>=65&&H<=70||H>=97&&H<=102}function p(H){return H==="."||H.toLowerCase()==="%2e"}function A(H){return H=H.toLowerCase(),H===".."||H==="%2e."||H===".%2e"||H==="%2e%2e"}function m(H,V){return d(H)&&(V===58||V===124)}function h(H){return H.length===2&&d(H.codePointAt(0))&&(H[1]===":"||H[1]==="|")}function C(H){return H.length===2&&d(H.codePointAt(0))&&H[1]===":"}function w(H){return H.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/)!==-1}function b(H){return H.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/)!==-1}function f(H){return n[H]!==void 0}function K(H){return f(H.scheme)}function W(H){return n[H]}function R(H){let V=H.toString(16).toUpperCase();return V.length===1&&(V="0"+V),"%"+V}function v(H){const V=new Buffer(H);let q="";for(let $=0;$<V.length;++$)q+=R(V[$]);return q}function L(H){const V=new Buffer(H),q=[];for(let $=0;$<V.length;++$)V[$]!==37?q.push(V[$]):V[$]===37&&c(V[$+1])&&c(V[$+2])?(q.push(parseInt(V.slice($+1,$+3).toString(),16)),$+=2):q.push(V[$]);return new Buffer(q).toString()}function y(H){return H<=31||H>126}var G=new Set([32,34,35,60,62,63,96,123,125]);function Z(H){return y(H)||G.has(H)}var k=new Set([47,58,59,61,64,91,92,93,94,124]);function _(H){return Z(H)||k.has(H)}function U(H,V){const q=String.fromCodePoint(H);return V(H)?v(q):q}function j(H){let V=10;return H.length>=2&&H.charAt(0)==="0"&&H.charAt(1).toLowerCase()==="x"?(H=H.substring(2),V=16):H.length>=2&&H.charAt(0)==="0"&&(H=H.substring(1),V=8),H===""?0:(V===10?/[^0-9]/:V===16?/[^0-9A-Fa-f]/:/[^0-7]/).test(H)?i:parseInt(H,V)}function O(H){const V=H.split(".");if(V[V.length-1]===""&&V.length>1&&V.pop(),V.length>4)return H;const q=[];for(const Te of V){if(Te==="")return H;const wt=j(Te);if(wt===i)return H;q.push(wt)}for(let Te=0;Te<q.length-1;++Te)if(q[Te]>255)return i;if(q[q.length-1]>=Math.pow(256,5-q.length))return i;let $=q.pop(),Be=0;for(const Te of q)$+=Te*Math.pow(256,3-Be),++Be;return $}function P(H){let V="",q=H;for(let $=1;$<=4;++$)V=String(q%256)+V,$!==4&&(V="."+V),q=Math.floor(q/256);return V}function z(H){const V=[0,0,0,0,0,0,0,0];let q=0,$=null,Be=0;if(H=r.ucs2.decode(H),H[Be]===58){if(H[Be+1]!==58)return i;Be+=2,++q,$=q}for(;Be<H.length;){if(q===8)return i;if(H[Be]===58){if($!==null)return i;++Be,++q,$=q;continue}let Te=0,wt=0;for(;wt<4&&c(H[Be]);)Te=Te*16+parseInt(s(H,Be),16),++Be,++wt;if(H[Be]===46){if(wt===0||(Be-=wt,q>6))return i;let ra=0;for(;H[Be]!==void 0;){let Jt=null;if(ra>0)if(H[Be]===46&&ra<4)++Be;else return i;if(!o(H[Be]))return i;for(;o(H[Be]);){const aa=parseInt(s(H,Be));if(Jt===null)Jt=aa;else{if(Jt===0)return i;Jt=Jt*10+aa}if(Jt>255)return i;++Be}V[q]=V[q]*256+Jt,++ra,(ra===2||ra===4)&&++q}if(ra!==4)return i;break}else if(H[Be]===58){if(++Be,H[Be]===void 0)return i}else if(H[Be]!==void 0)return i;V[q]=Te,++q}if($!==null){let Te=q-$;for(q=7;q!==0&&Te>0;){const wt=V[$+Te-1];V[$+Te-1]=V[q],V[q]=wt,--q,--Te}}else if($===null&&q!==8)return i;return V}function Se(H){let V="";const $=Vt(H).idx;let Be=!1;for(let Te=0;Te<=7;++Te)if(!(Be&&H[Te]===0)){if(Be&&(Be=!1),$===Te){V+=Te===0?"::":":",Be=!0;continue}V+=H[Te].toString(16),Te!==7&&(V+=":")}return V}function he(H,V){if(H[0]==="[")return H[H.length-1]!=="]"?i:z(H.substring(1,H.length-1));if(!V)return Ht(H);const q=L(H),$=a.toASCII(q,!1,a.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if($===null||w($))return i;const Be=O($);return typeof Be=="number"||Be===i?Be:$}function Ht(H){if(b(H))return i;let V="";const q=r.ucs2.decode(H);for(let $=0;$<q.length;++$)V+=U(q[$],y);return V}function Vt(H){let V=null,q=1,$=null,Be=0;for(let Te=0;Te<H.length;++Te)H[Te]!==0?(Be>q&&(V=$,q=Be),$=null,Be=0):($===null&&($=Te),++Be);return Be>q&&(V=$,q=Be),{idx:V,len:q}}function Je(H){return typeof H=="number"?P(H):H instanceof Array?"["+Se(H)+"]":H}function Xe(H){return H.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,"")}function ct(H){return H.replace(/\u0009|\u000A|\u000D/g,"")}function rt(H){const V=H.path;V.length!==0&&(H.scheme==="file"&&V.length===1&&at(V[0])||V.pop())}function je(H){return H.username!==""||H.password!==""}function Yt(H){return H.host===null||H.host===""||H.cannotBeABaseURL||H.scheme==="file"}function at(H){return/^[A-Za-z]:$/.test(H)}function ve(H,V,q,$,Be){if(this.pointer=0,this.input=H,this.base=V||null,this.encodingOverride=q||"utf-8",this.stateOverride=Be,this.url=$,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};const wt=Xe(this.input);wt!==this.input&&(this.parseError=!0),this.input=wt}const Te=ct(this.input);for(Te!==this.input&&(this.parseError=!0),this.input=Te,this.state=Be||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=r.ucs2.decode(this.input);this.pointer<=this.input.length;++this.pointer){const wt=this.input[this.pointer],ra=isNaN(wt)?void 0:String.fromCodePoint(wt),Jt=this["parse "+this.state](wt,ra);if(Jt){if(Jt===i){this.failure=!0;break}}else break}}ve.prototype["parse scheme start"]=function(V,q){if(d(V))this.buffer+=q.toLowerCase(),this.state="scheme";else if(!this.stateOverride)this.state="no scheme",--this.pointer;else return this.parseError=!0,i;return!0},ve.prototype["parse scheme"]=function(V,q){if(u(V)||V===43||V===45||V===46)this.buffer+=q.toLowerCase();else if(V===58){if(this.stateOverride&&(K(this.url)&&!f(this.buffer)||!K(this.url)&&f(this.buffer)||(je(this.url)||this.url.port!==null)&&this.buffer==="file"||this.url.scheme==="file"&&(this.url.host===""||this.url.host===null))||(this.url.scheme=this.buffer,this.buffer="",this.stateOverride))return!1;this.url.scheme==="file"?((this.input[this.pointer+1]!==47||this.input[this.pointer+2]!==47)&&(this.parseError=!0),this.state="file"):K(this.url)&&this.base!==null&&this.base.scheme===this.url.scheme?this.state="special relative or authority":K(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===47?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else if(!this.stateOverride)this.buffer="",this.state="no scheme",this.pointer=-1;else return this.parseError=!0,i;return!0},ve.prototype["parse no scheme"]=function(V){return this.base===null||this.base.cannotBeABaseURL&&V!==35?i:(this.base.cannotBeABaseURL&&V===35?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):this.base.scheme==="file"?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)},ve.prototype["parse special relative or authority"]=function(V){return V===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0},ve.prototype["parse path or authority"]=function(V){return V===47?this.state="authority":(this.state="path",--this.pointer),!0},ve.prototype["parse relative"]=function(V){return this.url.scheme=this.base.scheme,isNaN(V)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):V===47?this.state="relative slash":V===63?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):V===35?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):K(this.url)&&V===92?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0},ve.prototype["parse relative slash"]=function(V){return K(this.url)&&(V===47||V===92)?(V===92&&(this.parseError=!0),this.state="special authority ignore slashes"):V===47?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer),!0},ve.prototype["parse special authority slashes"]=function(V){return V===47&&this.input[this.pointer+1]===47?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0},ve.prototype["parse special authority ignore slashes"]=function(V){return V!==47&&V!==92?(this.state="authority",--this.pointer):this.parseError=!0,!0},ve.prototype["parse authority"]=function(V,q){if(V===64){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;const $=l(this.buffer);for(let Be=0;Be<$;++Be){const Te=this.buffer.codePointAt(Be);if(Te===58&&!this.passwordTokenSeenFlag){this.passwordTokenSeenFlag=!0;continue}const wt=U(Te,_);this.passwordTokenSeenFlag?this.url.password+=wt:this.url.username+=wt}this.buffer=""}else if(isNaN(V)||V===47||V===63||V===35||K(this.url)&&V===92){if(this.atFlag&&this.buffer==="")return this.parseError=!0,i;this.pointer-=l(this.buffer)+1,this.buffer="",this.state="host"}else this.buffer+=q;return!0},ve.prototype["parse hostname"]=ve.prototype["parse host"]=function(V,q){if(this.stateOverride&&this.url.scheme==="file")--this.pointer,this.state="file host";else if(V===58&&!this.arrFlag){if(this.buffer==="")return this.parseError=!0,i;const $=he(this.buffer,K(this.url));if($===i)return i;if(this.url.host=$,this.buffer="",this.state="port",this.stateOverride==="hostname")return!1}else if(isNaN(V)||V===47||V===63||V===35||K(this.url)&&V===92){if(--this.pointer,K(this.url)&&this.buffer==="")return this.parseError=!0,i;if(this.stateOverride&&this.buffer===""&&(je(this.url)||this.url.port!==null))return this.parseError=!0,!1;const $=he(this.buffer,K(this.url));if($===i)return i;if(this.url.host=$,this.buffer="",this.state="path start",this.stateOverride)return!1}else V===91?this.arrFlag=!0:V===93&&(this.arrFlag=!1),this.buffer+=q;return!0},ve.prototype["parse port"]=function(V,q){if(o(V))this.buffer+=q;else if(isNaN(V)||V===47||V===63||V===35||K(this.url)&&V===92||this.stateOverride){if(this.buffer!==""){const $=parseInt(this.buffer);if($>Math.pow(2,16)-1)return this.parseError=!0,i;this.url.port=$===W(this.url.scheme)?null:$,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}else return this.parseError=!0,i;return!0};var to=new Set([47,92,63,35]);ve.prototype["parse file"]=function(V){return this.url.scheme="file",V===47||V===92?(V===92&&(this.parseError=!0),this.state="file slash"):this.base!==null&&this.base.scheme==="file"?isNaN(V)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):V===63?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):V===35?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1===0||!m(V,this.input[this.pointer+1])||this.input.length-this.pointer-1>=2&&!to.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),rt(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0},ve.prototype["parse file slash"]=function(V){return V===47||V===92?(V===92&&(this.parseError=!0),this.state="file host"):(this.base!==null&&this.base.scheme==="file"&&(C(this.base.path[0])?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0},ve.prototype["parse file host"]=function(V,q){if(isNaN(V)||V===47||V===92||V===63||V===35)if(--this.pointer,!this.stateOverride&&h(this.buffer))this.parseError=!0,this.state="path";else if(this.buffer===""){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let $=he(this.buffer,K(this.url));if($===i)return i;if($==="localhost"&&($=""),this.url.host=$,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=q;return!0},ve.prototype["parse path start"]=function(V){return K(this.url)?(V===92&&(this.parseError=!0),this.state="path",V!==47&&V!==92&&--this.pointer):!this.stateOverride&&V===63?(this.url.query="",this.state="query"):!this.stateOverride&&V===35?(this.url.fragment="",this.state="fragment"):V!==void 0&&(this.state="path",V!==47&&--this.pointer),!0},ve.prototype["parse path"]=function(V){if(isNaN(V)||V===47||K(this.url)&&V===92||!this.stateOverride&&(V===63||V===35)){if(K(this.url)&&V===92&&(this.parseError=!0),A(this.buffer)?(rt(this.url),V!==47&&!(K(this.url)&&V===92)&&this.url.path.push("")):p(this.buffer)&&V!==47&&!(K(this.url)&&V===92)?this.url.path.push(""):p(this.buffer)||(this.url.scheme==="file"&&this.url.path.length===0&&h(this.buffer)&&(this.url.host!==""&&this.url.host!==null&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)),this.buffer="",this.url.scheme==="file"&&(V===void 0||V===63||V===35))for(;this.url.path.length>1&&this.url.path[0]==="";)this.parseError=!0,this.url.path.shift();V===63&&(this.url.query="",this.state="query"),V===35&&(this.url.fragment="",this.state="fragment")}else V===37&&(!c(this.input[this.pointer+1])||!c(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=U(V,Z);return!0},ve.prototype["parse cannot-be-a-base-URL path"]=function(V){return V===63?(this.url.query="",this.state="query"):V===35?(this.url.fragment="",this.state="fragment"):(!isNaN(V)&&V!==37&&(this.parseError=!0),V===37&&(!c(this.input[this.pointer+1])||!c(this.input[this.pointer+2]))&&(this.parseError=!0),isNaN(V)||(this.url.path[0]=this.url.path[0]+U(V,y))),!0},ve.prototype["parse query"]=function(V,q){if(isNaN(V)||!this.stateOverride&&V===35){(!K(this.url)||this.url.scheme==="ws"||this.url.scheme==="wss")&&(this.encodingOverride="utf-8");const $=new Buffer(this.buffer);for(let Be=0;Be<$.length;++Be)$[Be]<33||$[Be]>126||$[Be]===34||$[Be]===35||$[Be]===60||$[Be]===62?this.url.query+=R($[Be]):this.url.query+=String.fromCodePoint($[Be]);this.buffer="",V===35&&(this.url.fragment="",this.state="fragment")}else V===37&&(!c(this.input[this.pointer+1])||!c(this.input[this.pointer+2]))&&(this.parseError=!0),this.buffer+=q;return!0},ve.prototype["parse fragment"]=function(V){return isNaN(V)||(V===0?this.parseError=!0:(V===37&&(!c(this.input[this.pointer+1])||!c(this.input[this.pointer+2]))&&(this.parseError=!0),this.url.fragment+=U(V,y))),!0};function ro(H,V){let q=H.scheme+":";if(H.host!==null?(q+="//",(H.username!==""||H.password!=="")&&(q+=H.username,H.password!==""&&(q+=":"+H.password),q+="@"),q+=Je(H.host),H.port!==null&&(q+=":"+H.port)):H.host===null&&H.scheme==="file"&&(q+="//"),H.cannotBeABaseURL)q+=H.path[0];else for(const $ of H.path)q+="/"+$;return H.query!==null&&(q+="?"+H.query),!V&&H.fragment!==null&&(q+="#"+H.fragment),q}function vu(H){let V=H.scheme+"://";return V+=Je(H.host),H.port!==null&&(V+=":"+H.port),V}e.exports.serializeURL=ro,e.exports.serializeURLOrigin=function(H){switch(H.scheme){case"blob":try{return e.exports.serializeURLOrigin(e.exports.parseURL(H.path[0]))}catch{return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return vu({scheme:H.scheme,host:H.host,port:H.port});case"file":return"file://";default:return"null"}},e.exports.basicURLParse=function(H,V){V===void 0&&(V={});const q=new ve(H,V.baseURL,V.encodingOverride,V.url,V.stateOverride);return q.failure?"failure":q.url},e.exports.setTheUsername=function(H,V){H.username="";const q=r.ucs2.decode(V);for(let $=0;$<q.length;++$)H.username+=U(q[$],_)},e.exports.setThePassword=function(H,V){H.password="";const q=r.ucs2.decode(V);for(let $=0;$<q.length;++$)H.password+=U(q[$],_)},e.exports.serializeHost=Je,e.exports.cannotHaveAUsernamePasswordPort=Yt,e.exports.serializeInteger=function(H){return String(H)},e.exports.parseURL=function(H,V){return V===void 0&&(V={}),e.exports.basicURLParse(H,{baseURL:V.baseURL,encodingOverride:V.encodingOverride})}}}),z7=tt({"node_modules/node-fetch/node_modules/whatwg-url/lib/URL-impl.js"(t){var e=on();t.implementation=class{constructor(a){const n=a[0],i=a[1];let l=null;if(i!==void 0&&(l=e.basicURLParse(i),l==="failure"))throw new TypeError("Invalid base URL");const s=e.basicURLParse(n,{baseURL:l});if(s==="failure")throw new TypeError("Invalid URL");this._url=s}get href(){return e.serializeURL(this._url)}set href(a){const n=e.basicURLParse(a);if(n==="failure")throw new TypeError("Invalid URL");this._url=n}get origin(){return e.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(a){e.basicURLParse(a+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(a){e.cannotHaveAUsernamePasswordPort(this._url)||e.setTheUsername(this._url,a)}get password(){return this._url.password}set password(a){e.cannotHaveAUsernamePasswordPort(this._url)||e.setThePassword(this._url,a)}get host(){const a=this._url;return a.host===null?"":a.port===null?e.serializeHost(a.host):e.serializeHost(a.host)+":"+e.serializeInteger(a.port)}set host(a){this._url.cannotBeABaseURL||e.basicURLParse(a,{url:this._url,stateOverride:"host"})}get hostname(){return this._url.host===null?"":e.serializeHost(this._url.host)}set hostname(a){this._url.cannotBeABaseURL||e.basicURLParse(a,{url:this._url,stateOverride:"hostname"})}get port(){return this._url.port===null?"":e.serializeInteger(this._url.port)}set port(a){e.cannotHaveAUsernamePasswordPort(this._url)||(a===""?this._url.port=null:e.basicURLParse(a,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:this._url.path.length===0?"":"/"+this._url.path.join("/")}set pathname(a){this._url.cannotBeABaseURL||(this._url.path=[],e.basicURLParse(a,{url:this._url,stateOverride:"path start"}))}get search(){return this._url.query===null||this._url.query===""?"":"?"+this._url.query}set search(a){const n=this._url;if(a===""){n.query=null;return}const i=a[0]==="?"?a.substring(1):a;n.query="",e.basicURLParse(i,{url:n,stateOverride:"query"})}get hash(){return this._url.fragment===null||this._url.fragment===""?"":"#"+this._url.fragment}set hash(a){if(a===""){this._url.fragment=null;return}const n=a[0]==="#"?a.substring(1):a;this._url.fragment="",e.basicURLParse(n,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}}}),j7=tt({"node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js"(t,e){var r=x7(),a=J7(),n=z7(),i=a.implSymbol;function l(s){if(!this||this[i]||!(this instanceof l))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(arguments.length<1)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");const o=[];for(let d=0;d<arguments.length&&d<2;++d)o[d]=arguments[d];o[0]=r.USVString(o[0]),o[1]!==void 0&&(o[1]=r.USVString(o[1])),e.exports.setup(this,o)}l.prototype.toJSON=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");const o=[];for(let d=0;d<arguments.length&&d<0;++d)o[d]=arguments[d];return this[i].toJSON.apply(this[i],o)},Object.defineProperty(l.prototype,"href",{get(){return this[i].href},set(s){s=r.USVString(s),this[i].href=s},enumerable:!0,configurable:!0}),l.prototype.toString=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");return this.href},Object.defineProperty(l.prototype,"origin",{get(){return this[i].origin},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"protocol",{get(){return this[i].protocol},set(s){s=r.USVString(s),this[i].protocol=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"username",{get(){return this[i].username},set(s){s=r.USVString(s),this[i].username=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"password",{get(){return this[i].password},set(s){s=r.USVString(s),this[i].password=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"host",{get(){return this[i].host},set(s){s=r.USVString(s),this[i].host=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"hostname",{get(){return this[i].hostname},set(s){s=r.USVString(s),this[i].hostname=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"port",{get(){return this[i].port},set(s){s=r.USVString(s),this[i].port=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"pathname",{get(){return this[i].pathname},set(s){s=r.USVString(s),this[i].pathname=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"search",{get(){return this[i].search},set(s){s=r.USVString(s),this[i].search=s},enumerable:!0,configurable:!0}),Object.defineProperty(l.prototype,"hash",{get(){return this[i].hash},set(s){s=r.USVString(s),this[i].hash=s},enumerable:!0,configurable:!0}),e.exports={is(s){return!!s&&s[i]instanceof n.implementation},create(s,o){let d=Object.create(l.prototype);return this.setup(d,s,o),d},setup(s,o,d){d||(d={}),d.wrapper=s,s[i]=new n.implementation(o,d),s[i][a.wrapperSymbol]=s},interface:l,expose:{Window:{URL:l},Worker:{URL:l}}}}}),q7=tt({"node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js"(t){t.URL=j7().interface,t.serializeURL=on().serializeURL,t.serializeURLOrigin=on().serializeURLOrigin,t.basicURLParse=on().basicURLParse,t.setTheUsername=on().setTheUsername,t.setThePassword=on().setThePassword,t.serializeHost=on().serializeHost,t.serializeInteger=on().serializeInteger,t.parseURL=on().parseURL}});function qQ(){}function br(t){return typeof t=="object"&&t!==null||typeof t=="function"}function qe(t,e){try{Object.defineProperty(t,"name",{value:e,configurable:!0})}catch{}}function yr(t){return new nc(t)}function nt(t){return yW(t)}function Fe(t){return RW(t)}function fn(t,e,r){return FW.call(t,e,r)}function Cr(t,e,r){fn(fn(t,e,r),void 0,VB)}function G2(t,e){Cr(t,e)}function S2(t,e){Cr(t,void 0,e)}function ga(t,e,r){return fn(t,e,r)}function Vs(t){fn(t,void 0,VB)}function p1(t,e,r){if(typeof t!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(t,e,r)}function Gl(t,e,r){try{return nt(p1(t,e,r))}catch(a){return Fe(a)}}function Z2(t,e){t._ownerReadableStream=e,e._reader=t,e._state==="readable"?SA(t):e._state==="closed"?function(r){SA(r),eW(r)}(t):$Q(t,e._storedError)}function X2(t,e){return KW(t._ownerReadableStream,e)}function H2(t){const e=t._ownerReadableStream;e._state==="readable"?FB(t,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(r,a){$Q(r,a)}(t,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),e._readableStreamController[lc](),e._reader=void 0,t._ownerReadableStream=void 0}function jl(t){return new TypeError("Cannot "+t+" a stream using a released reader")}function SA(t){t._closedPromise=yr((e,r)=>{t._closedPromise_resolve=e,t._closedPromise_reject=r})}function $Q(t,e){SA(t),FB(t,e)}function FB(t,e){t._closedPromise_reject!==void 0&&(Vs(t._closedPromise),t._closedPromise_reject(e),t._closedPromise_resolve=void 0,t._closedPromise_reject=void 0)}function eW(t){t._closedPromise_resolve!==void 0&&(t._closedPromise_resolve(void 0),t._closedPromise_resolve=void 0,t._closedPromise_reject=void 0)}function hn(t,e){if(t!==void 0&&typeof(r=t)!="object"&&typeof r!="function")throw new TypeError(`${e} is not an object.`);var r}function fa(t,e){if(typeof t!="function")throw new TypeError(`${e} is not a function.`)}function V2(t,e){if(!function(r){return typeof r=="object"&&r!==null||typeof r=="function"}(t))throw new TypeError(`${e} is not an object.`)}function rn(t,e,r){if(t===void 0)throw new TypeError(`Parameter ${e} is required in '${r}'.`)}function ZA(t,e,r){if(t===void 0)throw new TypeError(`${e} is required in '${r}'.`)}function yB(t){return Number(t)}function Y2(t){return t===0?0:t}function N2(t,e){const r=Number.MAX_SAFE_INTEGER;let a=Number(t);if(a=Y2(a),!DA(a))throw new TypeError(`${e} is not a finite number`);if(a=function(n){return Y2(EW(n))}(a),a<0||a>r)throw new TypeError(`${e} is outside the accepted range of 0 to ${r}, inclusive`);return DA(a)&&a!==0?a:0}function Io(t){if(!br(t)||typeof t.getReader!="function")return!1;try{return typeof t.locked=="boolean"}catch{return!1}}function tW(t){if(!br(t)||typeof t.getWriter!="function")return!1;try{return typeof t.locked=="boolean"}catch{return!1}}function L2(t,e){if(!Cl(t))throw new TypeError(`${e} is not a ReadableStream.`)}function T2(t,e){t._reader._readRequests.push(e)}function XA(t,e,r){const a=t._reader._readRequests.shift();r?a._closeSteps():a._chunkSteps(e)}function r0(t){return t._reader._readRequests.length}function rW(t){const e=t._reader;return e!==void 0&&!!ll(e)}function ll(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_readRequests")&&t instanceof Un}function aW(t,e){const r=t._readRequests;t._readRequests=new kr,r.forEach(a=>{a._errorSteps(e)})}function hp(t){return new TypeError(`ReadableStreamDefaultReader.prototype.${t} can only be used on a ReadableStreamDefaultReader`)}function k2(t){if(!br(t)||!Object.prototype.hasOwnProperty.call(t,"_asyncIteratorImpl"))return!1;try{return t._asyncIteratorImpl instanceof MA}catch{return!1}}function U2(t){return new TypeError(`ReadableStreamAsyncIterator.${t} can only be used on a ReadableSteamAsyncIterator`)}function nW(t,e,r,a,n){new Uint8Array(t).set(new Uint8Array(r,a,n),e)}function _2(t){const e=function(r,a,n){if(r.slice)return r.slice(a,n);const i=n-a,l=new ArrayBuffer(i);return nW(l,0,r,a,i),l}(t.buffer,t.byteOffset,t.byteOffset+t.byteLength);return new Uint8Array(e)}function HA(t){const e=t._queue.shift();return t._queueTotalSize-=e.size,t._queueTotalSize<0&&(t._queueTotalSize=0),e.value}function VA(t,e,r){if(typeof(a=r)!="number"||YB(a)||a<0||r===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");var a;t._queue.push({value:e,size:r}),t._queueTotalSize+=r}function ri(t){t._queue=new kr,t._queueTotalSize=0}function ql(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_controlledReadableByteStream")&&t instanceof Jn}function Hm(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_associatedReadableByteStreamController")&&t instanceof zi}function Bl(t){if(function(r){const a=r._controlledReadableByteStream;return a._state!=="readable"||r._closeRequested||!r._started?!1:!!(rW(a)&&r0(a)>0||EB(a)&&mW(a)>0||cW(r)>0)}(t)){if(t._pulling)return void(t._pullAgain=!0);t._pulling=!0,Cr(t._pullAlgorithm(),()=>(t._pulling=!1,t._pullAgain&&(t._pullAgain=!1,Bl(t)),null),r=>(Ws(t,r),null))}}function iW(t){RB(t),t._pendingPullIntos=new kr}function YA(t,e){let r=!1;t._state==="closed"&&(r=!0);const a=lW(e);e.readerType==="default"?XA(t,a,r):function(n,i,l){const s=n._reader._readIntoRequests.shift();l?s._closeSteps(i):s._chunkSteps(i)}(t,a,r)}function lW(t){const e=t.bytesFilled,r=t.elementSize;return new t.viewConstructor(t.buffer,t.byteOffset,e/r)}function ec(t,e,r,a){t._queue.push({buffer:e,byteOffset:r,byteLength:a}),t._queueTotalSize+=a}function sW(t,e,r,a){let n;try{n=e.slice(r,r+a)}catch(i){throw Ws(t,i),i}ec(t,n,0,a)}function oW(t,e){e.bytesFilled>0&&sW(t,e.buffer,e.byteOffset,e.bytesFilled),Qs(t)}function dW(t,e){const r=e.elementSize,a=e.bytesFilled-e.bytesFilled%r,n=Math.min(t._queueTotalSize,e.byteLength-e.bytesFilled),i=e.bytesFilled+n,l=i-i%r;let s=n,o=!1;l>a&&(s=l-e.bytesFilled,o=!0);const d=t._queue;for(;s>0;){const u=d.peek(),c=Math.min(s,u.byteLength),p=e.byteOffset+e.bytesFilled;nW(e.buffer,p,u.buffer,u.byteOffset,c),u.byteLength===c?d.shift():(u.byteOffset+=c,u.byteLength-=c),t._queueTotalSize-=c,uW(t,c,e),s-=c}return o}function uW(t,e,r){r.bytesFilled+=e}function pW(t){t._queueTotalSize===0&&t._closeRequested?(a0(t),pd(t._controlledReadableByteStream)):Bl(t)}function RB(t){t._byobRequest!==null&&(t._byobRequest._associatedReadableByteStreamController=void 0,t._byobRequest._view=null,t._byobRequest=null)}function NA(t){for(;t._pendingPullIntos.length>0;){if(t._queueTotalSize===0)return;const e=t._pendingPullIntos.peek();dW(t,e)&&(Qs(t),YA(t._controlledReadableByteStream,e))}}function I2(t,e){const r=t._pendingPullIntos.peek();RB(t),t._controlledReadableByteStream._state==="closed"?function(a,n){n.readerType==="none"&&Qs(a);const i=a._controlledReadableByteStream;if(EB(i))for(;mW(i)>0;)YA(i,Qs(a))}(t,r):function(a,n,i){if(uW(0,n,i),i.readerType==="none")return oW(a,i),void NA(a);if(i.bytesFilled<i.elementSize)return;Qs(a);const l=i.bytesFilled%i.elementSize;if(l>0){const s=i.byteOffset+i.bytesFilled;sW(a,i.buffer,s-l,l)}i.bytesFilled-=l,YA(a._controlledReadableByteStream,i),NA(a)}(t,e,r),Bl(t)}function Qs(t){return t._pendingPullIntos.shift()}function a0(t){t._pullAlgorithm=void 0,t._cancelAlgorithm=void 0}function Ws(t,e){const r=t._controlledReadableByteStream;r._state==="readable"&&(iW(t),ri(t),a0(t),fW(r,e))}function D2(t,e){const r=t._queue.shift();t._queueTotalSize-=r.byteLength,pW(t);const a=new Uint8Array(r.buffer,r.byteOffset,r.byteLength);e._chunkSteps(a)}function cW(t){const e=t._controlledReadableByteStream._state;return e==="errored"?null:e==="closed"?0:t._strategyHWM-t._queueTotalSize}function $7(t,e,r){const a=Object.create(Jn.prototype);let n,i,l;n=e.start!==void 0?()=>e.start(a):()=>{},i=e.pull!==void 0?()=>e.pull(a):()=>nt(void 0),l=e.cancel!==void 0?o=>e.cancel(o):()=>nt(void 0);const s=e.autoAllocateChunkSize;if(s===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");(function(o,d,u,c,p,A,m){d._controlledReadableByteStream=o,d._pullAgain=!1,d._pulling=!1,d._byobRequest=null,d._queue=d._queueTotalSize=void 0,ri(d),d._closeRequested=!1,d._started=!1,d._strategyHWM=A,d._pullAlgorithm=c,d._cancelAlgorithm=p,d._autoAllocateChunkSize=m,d._pendingPullIntos=new kr,o._readableStreamController=d,Cr(nt(u()),()=>(d._started=!0,Bl(d),null),h=>(Ws(d,h),null))})(t,a,n,i,l,r,s)}function Vm(t){return new TypeError(`ReadableStreamBYOBRequest.prototype.${t} can only be used on a ReadableStreamBYOBRequest`)}function wo(t){return new TypeError(`ReadableByteStreamController.prototype.${t} can only be used on a ReadableByteStreamController`)}function M2(t,e){t._reader._readIntoRequests.push(e)}function mW(t){return t._reader._readIntoRequests.length}function EB(t){const e=t._reader;return e!==void 0&&!!As(e)}function As(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_readIntoRequests")&&t instanceof _n}function gW(t,e){const r=t._readIntoRequests;t._readIntoRequests=new kr,r.forEach(a=>{a._errorSteps(e)})}function Bp(t){return new TypeError(`ReadableStreamBYOBReader.prototype.${t} can only be used on a ReadableStreamBYOBReader`)}function bo(t,e){const{highWaterMark:r}=t;if(r===void 0)return e;if(YB(r)||r<0)throw new RangeError("Invalid highWaterMark");return r}function Cp(t){const{size:e}=t;return e||(()=>1)}function wp(t,e){hn(t,e);const r=t==null?void 0:t.highWaterMark,a=t==null?void 0:t.size;return{highWaterMark:r===void 0?void 0:yB(r),size:a===void 0?void 0:eX(a,`${e} has member 'size' that`)}}function eX(t,e){return fa(t,e),r=>yB(t(r))}function tX(t,e,r){return fa(t,r),a=>Gl(t,e,[a])}function rX(t,e,r){return fa(t,r),()=>Gl(t,e,[])}function aX(t,e,r){return fa(t,r),a=>p1(t,e,[a])}function nX(t,e,r){return fa(t,r),(a,n)=>Gl(t,e,[a,n])}function Ga(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_writableStreamController")&&t instanceof In}function bp(t){return t._writer!==void 0}function x2(t,e){var r;if(t._state==="closed"||t._state==="errored")return nt(void 0);t._writableStreamController._abortReason=e,(r=t._writableStreamController._abortController)===null||r===void 0||r.abort(e);const a=t._state;if(a==="closed"||a==="errored")return nt(void 0);if(t._pendingAbortRequest!==void 0)return t._pendingAbortRequest._promise;let n=!1;a==="erroring"&&(n=!0,e=void 0);const i=yr((l,s)=>{t._pendingAbortRequest={_promise:void 0,_resolve:l,_reject:s,_reason:e,_wasAlreadyErroring:n}});return t._pendingAbortRequest._promise=i,n||GB(t,e),i}function J2(t){const e=t._state;if(e==="closed"||e==="errored")return Fe(new TypeError(`The stream (in ${e} state) is not in the writable state and cannot be closed`));const r=yr((i,l)=>{const s={_resolve:i,_reject:l};t._closeRequest=s}),a=t._writer;var n;return a!==void 0&&t._backpressure&&e==="writable"&&XB(a),VA(n=t._writableStreamController,NB,0),i0(n),r}function LA(t,e){t._state!=="writable"?SB(t):GB(t,e)}function GB(t,e){const r=t._writableStreamController;t._state="erroring",t._storedError=e;const a=t._writer;a!==void 0&&AW(a,e),!function(n){return!(n._inFlightWriteRequest===void 0&&n._inFlightCloseRequest===void 0)}(t)&&r._started&&SB(t)}function SB(t){t._state="errored",t._writableStreamController[IA]();const e=t._storedError;if(t._writeRequests.forEach(a=>{a._reject(e)}),t._writeRequests=new kr,t._pendingAbortRequest===void 0)return void Kp(t);const r=t._pendingAbortRequest;if(t._pendingAbortRequest=void 0,r._wasAlreadyErroring)return r._reject(e),void Kp(t);Cr(t._writableStreamController[_A](r._reason),()=>(r._resolve(),Kp(t),null),a=>(r._reject(a),Kp(t),null))}function $n(t){return t._closeRequest!==void 0||t._inFlightCloseRequest!==void 0}function Kp(t){t._closeRequest!==void 0&&(t._closeRequest._reject(t._storedError),t._closeRequest=void 0);const e=t._writer;e!==void 0&&ZB(e,t._storedError)}function TA(t,e){const r=t._writer;r!==void 0&&e!==t._backpressure&&(e?function(a){c1(a)}(r):XB(r)),t._backpressure=e}function Li(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_ownerWritableStream")&&t instanceof dn}function AW(t,e){t._readyPromiseState==="pending"?wW(t,e):function(r,a){UA(r,a)}(t,e)}function Ym(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_controlledWritableStream")&&t instanceof xo}function n0(t){t._writeAlgorithm=void 0,t._closeAlgorithm=void 0,t._abortAlgorithm=void 0,t._strategySizeAlgorithm=void 0}function hW(t){return t._strategyHWM-t._queueTotalSize}function i0(t){const e=t._controlledWritableStream;if(!t._started||e._inFlightWriteRequest!==void 0)return;if(e._state==="erroring")return void SB(e);if(t._queue.length===0)return;const r=t._queue.peek().value;r===NB?function(a){const n=a._controlledWritableStream;(function(l){l._inFlightCloseRequest=l._closeRequest,l._closeRequest=void 0})(n),HA(a);const i=a._closeAlgorithm();n0(a),Cr(i,()=>(function(l){l._inFlightCloseRequest._resolve(void 0),l._inFlightCloseRequest=void 0,l._state==="erroring"&&(l._storedError=void 0,l._pendingAbortRequest!==void 0&&(l._pendingAbortRequest._resolve(),l._pendingAbortRequest=void 0)),l._state="closed";const s=l._writer;s!==void 0&&CW(s)}(n),null),l=>(function(s,o){s._inFlightCloseRequest._reject(o),s._inFlightCloseRequest=void 0,s._pendingAbortRequest!==void 0&&(s._pendingAbortRequest._reject(o),s._pendingAbortRequest=void 0),LA(s,o)}(n,l),null))}(t):function(a,n){const i=a._controlledWritableStream;(function(l){l._inFlightWriteRequest=l._writeRequests.shift()})(i),Cr(a._writeAlgorithm(n),()=>{(function(s){s._inFlightWriteRequest._resolve(void 0),s._inFlightWriteRequest=void 0})(i);const l=i._state;if(HA(a),!$n(i)&&l==="writable"){const s=kA(a);TA(i,s)}return i0(a),null},l=>(i._state==="writable"&&n0(a),function(s,o){s._inFlightWriteRequest._reject(o),s._inFlightWriteRequest=void 0,LA(s,o)}(i,l),null))}(t,r)}function O2(t,e){t._controlledWritableStream._state==="writable"&&BW(t,e)}function kA(t){return hW(t)<=0}function BW(t,e){const r=t._controlledWritableStream;n0(t),GB(r,e)}function fp(t){return new TypeError(`WritableStream.prototype.${t} can only be used on a WritableStream`)}function Nm(t){return new TypeError(`WritableStreamDefaultController.prototype.${t} can only be used on a WritableStreamDefaultController`)}function Ti(t){return new TypeError(`WritableStreamDefaultWriter.prototype.${t} can only be used on a WritableStreamDefaultWriter`)}function Ko(t){return new TypeError("Cannot "+t+" a stream using a released writer")}function tc(t){t._closedPromise=yr((e,r)=>{t._closedPromise_resolve=e,t._closedPromise_reject=r,t._closedPromiseState="pending"})}function P2(t,e){tc(t),ZB(t,e)}function ZB(t,e){t._closedPromise_reject!==void 0&&(Vs(t._closedPromise),t._closedPromise_reject(e),t._closedPromise_resolve=void 0,t._closedPromise_reject=void 0,t._closedPromiseState="rejected")}function CW(t){t._closedPromise_resolve!==void 0&&(t._closedPromise_resolve(void 0),t._closedPromise_resolve=void 0,t._closedPromise_reject=void 0,t._closedPromiseState="resolved")}function c1(t){t._readyPromise=yr((e,r)=>{t._readyPromise_resolve=e,t._readyPromise_reject=r}),t._readyPromiseState="pending"}function UA(t,e){c1(t),wW(t,e)}function z2(t){c1(t),XB(t)}function wW(t,e){t._readyPromise_reject!==void 0&&(Vs(t._readyPromise),t._readyPromise_reject(e),t._readyPromise_resolve=void 0,t._readyPromise_reject=void 0,t._readyPromiseState="rejected")}function XB(t){t._readyPromise_resolve!==void 0&&(t._readyPromise_resolve(void 0),t._readyPromise_resolve=void 0,t._readyPromise_reject=void 0,t._readyPromiseState="fulfilled")}function j2(t,e,r,a,n,i){const l=t.getReader(),s=e.getWriter();Cl(t)&&(t._disturbed=!0);let o,d,u,c=!1,p=!1,A="readable",m="writable",h=!1,C=!1;const w=yr(f=>{u=f});let b=Promise.resolve(void 0);return yr((f,K)=>{let W;function R(){if(c)return;const _=yr((U,j)=>{(function O(P){P?U():fn(function(){return c?nt(!0):fn(s.ready,()=>fn(l.read(),z=>!!z.done||(b=s.write(z.value),Vs(b),!1)))}(),O,j)})(!1)});Vs(_)}function v(){return A="closed",r?Z():G(()=>(Ga(e)&&(h=$n(e),m=e._state),h||m==="closed"?nt(void 0):m==="erroring"||m==="errored"?Fe(d):(h=!0,s.close())),!1,void 0),null}function L(_){return c||(A="errored",o=_,a?Z(!0,_):G(()=>s.abort(_),!0,_)),null}function y(_){return p||(m="errored",d=_,n?Z(!0,_):G(()=>l.cancel(_),!0,_)),null}if(i!==void 0&&(W=()=>{const _=i.reason!==void 0?i.reason:new GW("Aborted","AbortError"),U=[];a||U.push(()=>m==="writable"?s.abort(_):nt(void 0)),n||U.push(()=>A==="readable"?l.cancel(_):nt(void 0)),G(()=>Promise.all(U.map(j=>j())),!0,_)},i.aborted?W():i.addEventListener("abort",W)),Cl(t)&&(A=t._state,o=t._storedError),Ga(e)&&(m=e._state,d=e._storedError,h=$n(e)),Cl(t)&&Ga(e)&&(C=!0,u()),A==="errored")L(o);else if(m==="erroring"||m==="errored")y(d);else if(A==="closed")v();else if(h||m==="closed"){const _=new TypeError("the destination writable stream closed before all data could be piped to it");n?Z(!0,_):G(()=>l.cancel(_),!0,_)}function G(_,U,j){function O(){return m!=="writable"||h?P():G2(function(){let z;return nt(function Se(){if(z!==b)return z=b,ga(b,Se,Se)}())}(),P),null}function P(){return _?Cr(_(),()=>k(U,j),z=>k(!0,z)):k(U,j),null}c||(c=!0,C?O():G2(w,O))}function Z(_,U){G(void 0,_,U)}function k(_,U){return p=!0,s.releaseLock(),l.releaseLock(),i!==void 0&&i.removeEventListener("abort",W),_?K(U):f(void 0),null}c||(Cr(l.closed,v,L),Cr(s.closed,function(){return p||(m="closed"),null},y)),C?R():Mo(()=>{C=!0,u(),R()})})}function iX(t,e){return function(r){try{return r.getReader({mode:"byob"}).releaseLock(),!0}catch{return!1}}(t)?function(r){let a,n,i,l,s,o=r.getReader(),d=!1,u=!1,c=!1,p=!1,A=!1,m=!1;const h=yr(y=>{s=y});function C(y){S2(y.closed,G=>(y!==o||(i.error(G),l.error(G),A&&m||s(void 0)),null))}function w(){d&&(o.releaseLock(),o=r.getReader(),C(o),d=!1),Cr(o.read(),y=>{var G,Z;if(c=!1,p=!1,y.done)return A||i.close(),m||l.close(),(G=i.byobRequest)===null||G===void 0||G.respond(0),(Z=l.byobRequest)===null||Z===void 0||Z.respond(0),A&&m||s(void 0),null;const k=y.value,_=k;let U=k;if(!A&&!m)try{U=_2(k)}catch(j){return i.error(j),l.error(j),s(o.cancel(j)),null}return A||i.enqueue(_),m||l.enqueue(U),u=!1,c?f():p&&K(),null},()=>(u=!1,null))}function b(y,G){d||(o.releaseLock(),o=r.getReader({mode:"byob"}),C(o),d=!0);const Z=G?l:i,k=G?i:l;Cr(o.read(y),_=>{var U;c=!1,p=!1;const j=G?m:A,O=G?A:m;if(_.done){j||Z.close(),O||k.close();const z=_.value;return z!==void 0&&(j||Z.byobRequest.respondWithNewView(z),O||(U=k.byobRequest)===null||U===void 0||U.respond(0)),j&&O||s(void 0),null}const P=_.value;if(O)j||Z.byobRequest.respondWithNewView(P);else{let z;try{z=_2(P)}catch(Se){return Z.error(Se),k.error(Se),s(o.cancel(Se)),null}j||Z.byobRequest.respondWithNewView(P),k.enqueue(z)}return u=!1,c?f():p&&K(),null},()=>(u=!1,null))}function f(){if(u)return c=!0,nt(void 0);u=!0;const y=i.byobRequest;return y===null?w():b(y.view,!1),nt(void 0)}function K(){if(u)return p=!0,nt(void 0);u=!0;const y=l.byobRequest;return y===null?w():b(y.view,!0),nt(void 0)}function W(y){if(A=!0,a=y,m){const G=[a,n],Z=o.cancel(G);s(Z)}return h}function R(y){if(m=!0,n=y,A){const G=[a,n],Z=o.cancel(G);s(Z)}return h}const v=new rr({type:"bytes",start(y){i=y},pull:f,cancel:W}),L=new rr({type:"bytes",start(y){l=y},pull:K,cancel:R});return C(o),[v,L]}(t):function(r,a){const n=r.getReader();let i,l,s,o,d,u=!1,c=!1,p=!1,A=!1;const m=yr(K=>{d=K});function h(){return u?(c=!0,nt(void 0)):(u=!0,Cr(n.read(),K=>{if(c=!1,K.done)return p||s.close(),A||o.close(),p&&A||d(void 0),null;const W=K.value,R=W,v=W;return p||s.enqueue(R),A||o.enqueue(v),u=!1,c&&h(),null},()=>(u=!1,null)),nt(void 0))}function C(K){if(p=!0,i=K,A){const W=[i,l],R=n.cancel(W);d(R)}return m}function w(K){if(A=!0,l=K,p){const W=[i,l],R=n.cancel(W);d(R)}return m}const b=new rr({start(K){s=K},pull:h,cancel:C}),f=new rr({start(K){o=K},pull:h,cancel:w});return S2(n.closed,K=>(s.error(K),o.error(K),p&&A||d(void 0),null)),[b,f]}(t)}function Qp(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_controlledReadableStream")&&t instanceof On}function dd(t){if(function(r){const a=r._controlledReadableStream;return!Do(r)||!r._started?!1:!!(is(a)&&r0(a)>0||bW(r)>0)}(t)){if(t._pulling)return void(t._pullAgain=!0);t._pulling=!0,Cr(t._pullAlgorithm(),()=>(t._pulling=!1,t._pullAgain&&(t._pullAgain=!1,dd(t)),null),r=>(ud(t,r),null))}}function rc(t){t._pullAlgorithm=void 0,t._cancelAlgorithm=void 0,t._strategySizeAlgorithm=void 0}function ud(t,e){const r=t._controlledReadableStream;r._state==="readable"&&(ri(t),rc(t),fW(r,e))}function bW(t){const e=t._controlledReadableStream._state;return e==="errored"?null:e==="closed"?0:t._strategyHWM-t._queueTotalSize}function Do(t){return!t._closeRequested&&t._controlledReadableStream._state==="readable"}function lX(t,e,r,a){const n=Object.create(On.prototype);let i,l,s;i=e.start!==void 0?()=>e.start(n):()=>{},l=e.pull!==void 0?()=>e.pull(n):()=>nt(void 0),s=e.cancel!==void 0?o=>e.cancel(o):()=>nt(void 0),function(o,d,u,c,p,A,m){d._controlledReadableStream=o,d._queue=void 0,d._queueTotalSize=void 0,ri(d),d._started=!1,d._closeRequested=!1,d._pullAgain=!1,d._pulling=!1,d._strategySizeAlgorithm=m,d._strategyHWM=A,d._pullAlgorithm=c,d._cancelAlgorithm=p,o._readableStreamController=d,Cr(nt(u()),()=>(d._started=!0,dd(d),null),h=>(ud(d,h),null))}(t,n,i,l,s,r,a)}function Wp(t){return new TypeError(`ReadableStreamDefaultController.prototype.${t} can only be used on a ReadableStreamDefaultController`)}function sX(t,e,r){return fa(t,r),a=>Gl(t,e,[a])}function oX(t,e,r){return fa(t,r),a=>Gl(t,e,[a])}function dX(t,e,r){return fa(t,r),a=>p1(t,e,[a])}function uX(t,e){if((t=`${t}`)!="bytes")throw new TypeError(`${e} '${t}' is not a valid enumeration value for ReadableStreamType`);return t}function pX(t,e){if((t=`${t}`)!="byob")throw new TypeError(`${e} '${t}' is not a valid enumeration value for ReadableStreamReaderMode`);return t}function q2(t,e){hn(t,e);const r=t==null?void 0:t.preventAbort,a=t==null?void 0:t.preventCancel,n=t==null?void 0:t.preventClose,i=t==null?void 0:t.signal;return i!==void 0&&function(l,s){if(!function(o){if(typeof o!="object"||o===null)return!1;try{return typeof o.aborted=="boolean"}catch{return!1}}(l))throw new TypeError(`${s} is not an AbortSignal.`)}(i,`${e} has member 'signal' that`),{preventAbort:!!r,preventCancel:!!a,preventClose:!!n,signal:i}}function cX(t,e){hn(t,e);const r=t==null?void 0:t.readable;ZA(r,"readable","ReadableWritablePair"),function(n,i){if(!Io(n))throw new TypeError(`${i} is not a ReadableStream.`)}(r,`${e} has member 'readable' that`);const a=t==null?void 0:t.writable;return ZA(a,"writable","ReadableWritablePair"),function(n,i){if(!tW(n))throw new TypeError(`${i} is not a WritableStream.`)}(a,`${e} has member 'writable' that`),{readable:r,writable:a}}function Cl(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_readableStreamController")&&t instanceof rr}function is(t){return t._reader!==void 0}function KW(t,e){if(t._disturbed=!0,t._state==="closed")return nt(void 0);if(t._state==="errored")return Fe(t._storedError);pd(t);const r=t._reader;if(r!==void 0&&As(r)){const a=r._readIntoRequests;r._readIntoRequests=new kr,a.forEach(n=>{n._closeSteps(void 0)})}return ga(t._readableStreamController[ic](e),qQ)}function pd(t){t._state="closed";const e=t._reader;if(e!==void 0&&(eW(e),ll(e))){const r=e._readRequests;e._readRequests=new kr,r.forEach(a=>{a._closeSteps()})}}function fW(t,e){t._state="errored",t._storedError=e;const r=t._reader;r!==void 0&&(FB(r,e),ll(r)?aW(r,e):gW(r,e))}function ki(t){return new TypeError(`ReadableStream.prototype.${t} can only be used on a ReadableStream`)}function $2(t,e){hn(t,e);const r=t==null?void 0:t.highWaterMark;return ZA(r,"highWaterMark","QueuingStrategyInit"),{highWaterMark:yB(r)}}function eb(t){return new TypeError(`ByteLengthQueuingStrategy.prototype.${t} can only be used on a ByteLengthQueuingStrategy`)}function tb(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_byteLengthQueuingStrategyHighWaterMark")&&t instanceof sc}function rb(t){return new TypeError(`CountQueuingStrategy.prototype.${t} can only be used on a CountQueuingStrategy`)}function ab(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_countQueuingStrategyHighWaterMark")&&t instanceof oc}function mX(t,e,r){return fa(t,r),a=>Gl(t,e,[a])}function gX(t,e,r){return fa(t,r),a=>p1(t,e,[a])}function AX(t,e,r){return fa(t,r),(a,n)=>Gl(t,e,[a,n])}function nb(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_transformStreamController")&&t instanceof dc}function ac(t,e){d0(t,e),l0(t,e)}function l0(t,e){QW(t._transformStreamController),function(r,a){r._writableController.error(a),r._writableState==="writable"&&vW(r,a)}(t,e),t._backpressure&&s0(t,!1)}function s0(t,e){t._backpressureChangePromise!==void 0&&t._backpressureChangePromise_resolve(),t._backpressureChangePromise=yr(r=>{t._backpressureChangePromise_resolve=r}),t._backpressure=e}function vp(t){return!!br(t)&&!!Object.prototype.hasOwnProperty.call(t,"_controlledTransformStream")&&t instanceof Dn}function QW(t){t._transformAlgorithm=void 0,t._flushAlgorithm=void 0}function ib(t,e){const r=t._controlledTransformStream;if(!o0(r))throw new TypeError("Readable side is not in a state that permits enqueue");try{(function(n,i){n._readablePulling=!1;try{n._readableController.enqueue(i)}catch(l){throw d0(n,l),l}})(r,e)}catch(n){throw l0(r,n),r._readableStoredError}(function(n){return!function(i){return o0(i)?!!(i._readablePulling||WW(i)>0):!1}(n)})(r)!==r._backpressure&&s0(r,!0)}function lb(t,e){return ga(t._transformAlgorithm(e),void 0,r=>{throw ac(t._controlledTransformStream,r),r})}function Fp(t){return new TypeError(`TransformStreamDefaultController.prototype.${t} can only be used on a TransformStreamDefaultController`)}function sb(t){return new TypeError(`TransformStream.prototype.${t} can only be used on a TransformStream`)}function o0(t){return!t._readableCloseRequested&&t._readableState==="readable"}function ob(t){t._readableState="closed",t._readableCloseRequested=!0,t._readableController.close()}function d0(t,e){t._readableState==="readable"&&(t._readableState="errored",t._readableStoredError=e),t._readableController.error(e)}function WW(t){return t._readableController.desiredSize}function Lm(t,e){t._writableState!=="writable"?HB(t):vW(t,e)}function vW(t,e){t._writableState="erroring",t._writableStoredError=e,!function(r){return r._writableHasInFlightOperation}(t)&&t._writableStarted&&HB(t)}function HB(t){t._writableState="errored"}function db(t){t._writableState==="erroring"&&HB(t)}var xe,VB,nc,FW,yW,RW,Mo,kr,_A,IA,ic,yp,lc,DA,EW,Un,MA,Tm,YB,zi,Jn,_n,ub,In,dn,NB,xo,km,GW,On,rr,Um,sc,_m,oc,dc,Dn,hX=be({"node_modules/formdata-node/node_modules/web-streams-polyfill/dist/ponyfill.mjs"(){xe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol:t=>`Symbol(${t})`,VB=qQ,nc=Promise,FW=Promise.prototype.then,yW=Promise.resolve.bind(nc),RW=Promise.reject.bind(nc),Mo=t=>{if(typeof queueMicrotask=="function")Mo=queueMicrotask;else{const e=nt(void 0);Mo=r=>fn(e,r)}return Mo(t)},kr=class{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){const e=this._back;let r=e;e._elements.length===16383&&(r={_elements:[],_next:void 0}),e._elements.push(t),r!==e&&(this._back=r,e._next=r),++this._size}shift(){const t=this._front;let e=t;const r=this._cursor;let a=r+1;const n=t._elements,i=n[r];return a===16384&&(e=t._next,a=0),--this._size,this._cursor=a,t!==e&&(this._front=e),n[r]=void 0,i}forEach(t){let e=this._cursor,r=this._front,a=r._elements;for(;!(e===a.length&&r._next===void 0||e===a.length&&(r=r._next,a=r._elements,e=0,a.length===0));)t(a[e]),++e}peek(){const t=this._front,e=this._cursor;return t._elements[e]}},_A=xe("[[AbortSteps]]"),IA=xe("[[ErrorSteps]]"),ic=xe("[[CancelSteps]]"),yp=xe("[[PullSteps]]"),lc=xe("[[ReleaseSteps]]"),DA=Number.isFinite||function(t){return typeof t=="number"&&isFinite(t)},EW=Math.trunc||function(t){return t<0?Math.ceil(t):Math.floor(t)},Un=class{constructor(t){if(rn(t,1,"ReadableStreamDefaultReader"),L2(t,"First parameter"),is(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");Z2(this,t),this._readRequests=new kr}get closed(){return ll(this)?this._closedPromise:Fe(hp("closed"))}cancel(t){return ll(this)?this._ownerReadableStream===void 0?Fe(jl("cancel")):X2(this,t):Fe(hp("cancel"))}read(){if(!ll(this))return Fe(hp("read"));if(this._ownerReadableStream===void 0)return Fe(jl("read from"));let t,e;const r=yr((a,n)=>{t=a,e=n});return function(a,n){const i=a._ownerReadableStream;i._disturbed=!0,i._state==="closed"?n._closeSteps():i._state==="errored"?n._errorSteps(i._storedError):i._readableStreamController[yp](n)}(this,{_chunkSteps:a=>t({value:a,done:!1}),_closeSteps:()=>t({value:void 0,done:!0}),_errorSteps:a=>e(a)}),r}releaseLock(){if(!ll(this))throw hp("releaseLock");this._ownerReadableStream!==void 0&&function(t){H2(t);const e=new TypeError("Reader was released");aW(t,e)}(this)}},Object.defineProperties(Un.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),qe(Un.prototype.cancel,"cancel"),qe(Un.prototype.read,"read"),qe(Un.prototype.releaseLock,"releaseLock"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(Un.prototype,xe.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0}),MA=class{constructor(t,e){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=t,this._preventCancel=e}next(){const t=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?ga(this._ongoingPromise,t,t):t(),this._ongoingPromise}return(t){const e=()=>this._returnSteps(t);return this._ongoingPromise?ga(this._ongoingPromise,e,e):e()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const t=this._reader;return t===void 0?Fe(jl("iterate")):fn(t.read(),e=>{var r;return this._ongoingPromise=void 0,e.done&&(this._isFinished=!0,(r=this._reader)===null||r===void 0||r.releaseLock(),this._reader=void 0),e},e=>{var r;throw this._ongoingPromise=void 0,this._isFinished=!0,(r=this._reader)===null||r===void 0||r.releaseLock(),this._reader=void 0,e})}_returnSteps(t){if(this._isFinished)return Promise.resolve({value:t,done:!0});this._isFinished=!0;const e=this._reader;if(e===void 0)return Fe(jl("finish iterating"));if(this._reader=void 0,!this._preventCancel){const r=e.cancel(t);return e.releaseLock(),ga(r,()=>({value:t,done:!0}))}return e.releaseLock(),nt({value:t,done:!0})}},Tm={next(){return k2(this)?this._asyncIteratorImpl.next():Fe(U2("next"))},return(t){return k2(this)?this._asyncIteratorImpl.return(t):Fe(U2("return"))}},typeof xe.asyncIterator=="symbol"&&Object.defineProperty(Tm,xe.asyncIterator,{value(){return this},writable:!0,configurable:!0}),YB=Number.isNaN||function(t){return t!=t},zi=class{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Hm(this))throw Vm("view");return this._view}respond(t){if(!Hm(this))throw Vm("respond");if(rn(t,1,"respond"),t=N2(t,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");this._view.buffer,function(e,r){const a=e._pendingPullIntos.peek();if(e._controlledReadableByteStream._state==="closed"){if(r!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(r===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(a.bytesFilled+r>a.byteLength)throw new RangeError("bytesWritten out of range")}a.buffer=a.buffer,I2(e,r)}(this._associatedReadableByteStreamController,t)}respondWithNewView(t){if(!Hm(this))throw Vm("respondWithNewView");if(rn(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");t.buffer,function(e,r){const a=e._pendingPullIntos.peek();if(e._controlledReadableByteStream._state==="closed"){if(r.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(r.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(a.byteOffset+a.bytesFilled!==r.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(a.bufferByteLength!==r.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(a.bytesFilled+r.byteLength>a.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const n=r.byteLength;a.buffer=r.buffer,I2(e,n)}(this._associatedReadableByteStreamController,t)}},Object.defineProperties(zi.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),qe(zi.prototype.respond,"respond"),qe(zi.prototype.respondWithNewView,"respondWithNewView"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(zi.prototype,xe.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0}),Jn=class{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!ql(this))throw wo("byobRequest");return function(t){if(t._byobRequest===null&&t._pendingPullIntos.length>0){const e=t._pendingPullIntos.peek(),r=new Uint8Array(e.buffer,e.byteOffset+e.bytesFilled,e.byteLength-e.bytesFilled),a=Object.create(zi.prototype);(function(n,i,l){n._associatedReadableByteStreamController=i,n._view=l})(a,t,r),t._byobRequest=a}return t._byobRequest}(this)}get desiredSize(){if(!ql(this))throw wo("desiredSize");return cW(this)}close(){if(!ql(this))throw wo("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const 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`);(function(e){const r=e._controlledReadableByteStream;if(!(e._closeRequested||r._state!=="readable")){if(e._queueTotalSize>0)return void(e._closeRequested=!0);if(e._pendingPullIntos.length>0&&e._pendingPullIntos.peek().bytesFilled>0){const a=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Ws(e,a),a}a0(e),pd(r)}})(this)}enqueue(t){if(!ql(this))throw wo("enqueue");if(rn(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");const e=this._controlledReadableByteStream._state;if(e!=="readable")throw new TypeError(`The stream (in ${e} state) is not in the readable state and cannot be enqueued to`);(function(r,a){const n=r._controlledReadableByteStream;if(r._closeRequested||n._state!=="readable")return;const i=a.buffer,l=a.byteOffset,s=a.byteLength,o=i;if(r._pendingPullIntos.length>0){const d=r._pendingPullIntos.peek();d.buffer,RB(r),d.buffer=d.buffer,d.readerType==="none"&&oW(r,d)}rW(n)?(function(d){const u=d._controlledReadableByteStream._reader;for(;u._readRequests.length>0;){if(d._queueTotalSize===0)return;D2(d,u._readRequests.shift())}}(r),r0(n)===0?ec(r,o,l,s):(r._pendingPullIntos.length>0&&Qs(r),XA(n,new Uint8Array(o,l,s),!1))):EB(n)?(ec(r,o,l,s),NA(r)):ec(r,o,l,s),Bl(r)})(this,t)}error(t){if(!ql(this))throw wo("error");Ws(this,t)}[ic](t){iW(this),ri(this);const e=this._cancelAlgorithm(t);return a0(this),e}[yp](t){const e=this._controlledReadableByteStream;if(this._queueTotalSize>0)return void D2(this,t);const r=this._autoAllocateChunkSize;if(r!==void 0){let a;try{a=new ArrayBuffer(r)}catch(i){return void t._errorSteps(i)}const n={buffer:a,bufferByteLength:r,byteOffset:0,byteLength:r,bytesFilled:0,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(n)}T2(e,t),Bl(this)}[lc](){if(this._pendingPullIntos.length>0){const t=this._pendingPullIntos.peek();t.readerType="none",this._pendingPullIntos=new kr,this._pendingPullIntos.push(t)}}},Object.defineProperties(Jn.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),qe(Jn.prototype.close,"close"),qe(Jn.prototype.enqueue,"enqueue"),qe(Jn.prototype.error,"error"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(Jn.prototype,xe.toStringTag,{value:"ReadableByteStreamController",configurable:!0}),_n=class{constructor(t){if(rn(t,1,"ReadableStreamBYOBReader"),L2(t,"First parameter"),is(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!ql(t._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");Z2(this,t),this._readIntoRequests=new kr}get closed(){return As(this)?this._closedPromise:Fe(Bp("closed"))}cancel(t){return As(this)?this._ownerReadableStream===void 0?Fe(jl("cancel")):X2(this,t):Fe(Bp("cancel"))}read(t){if(!As(this))return Fe(Bp("read"));if(!ArrayBuffer.isView(t))return Fe(new TypeError("view must be an array buffer view"));if(t.byteLength===0)return Fe(new TypeError("view must have non-zero byteLength"));if(t.buffer.byteLength===0)return Fe(new TypeError("view's buffer must have non-zero byteLength"));if(t.buffer,this._ownerReadableStream===void 0)return Fe(jl("read from"));let e,r;const a=yr((n,i)=>{e=n,r=i});return function(n,i,l){const s=n._ownerReadableStream;s._disturbed=!0,s._state==="errored"?l._errorSteps(s._storedError):function(o,d,u){const c=o._controlledReadableByteStream;let p=1;d.constructor!==DataView&&(p=d.constructor.BYTES_PER_ELEMENT);const A=d.constructor,m=d.buffer,h={buffer:m,bufferByteLength:m.byteLength,byteOffset:d.byteOffset,byteLength:d.byteLength,bytesFilled:0,elementSize:p,viewConstructor:A,readerType:"byob"};if(o._pendingPullIntos.length>0)return o._pendingPullIntos.push(h),void M2(c,u);if(c._state!=="closed"){if(o._queueTotalSize>0){if(dW(o,h)){const C=lW(h);return pW(o),void u._chunkSteps(C)}if(o._closeRequested){const C=new TypeError("Insufficient bytes to fill elements in the given buffer");return Ws(o,C),void u._errorSteps(C)}}o._pendingPullIntos.push(h),M2(c,u),Bl(o)}else{const C=new A(h.buffer,h.byteOffset,0);u._closeSteps(C)}}(s._readableStreamController,i,l)}(this,t,{_chunkSteps:n=>e({value:n,done:!1}),_closeSteps:n=>e({value:n,done:!0}),_errorSteps:n=>r(n)}),a}releaseLock(){if(!As(this))throw Bp("releaseLock");this._ownerReadableStream!==void 0&&function(t){H2(t);const e=new TypeError("Reader was released");gW(t,e)}(this)}},Object.defineProperties(_n.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),qe(_n.prototype.cancel,"cancel"),qe(_n.prototype.read,"read"),qe(_n.prototype.releaseLock,"releaseLock"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(_n.prototype,xe.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0}),ub=typeof AbortController=="function",In=class{constructor(t={},e={}){t===void 0?t=null:V2(t,"First parameter");const r=wp(e,"Second parameter"),a=function(l,s){hn(l,s);const o=l==null?void 0:l.abort,d=l==null?void 0:l.close,u=l==null?void 0:l.start,c=l==null?void 0:l.type,p=l==null?void 0:l.write;return{abort:o===void 0?void 0:tX(o,l,`${s} has member 'abort' that`),close:d===void 0?void 0:rX(d,l,`${s} has member 'close' that`),start:u===void 0?void 0:aX(u,l,`${s} has member 'start' that`),write:p===void 0?void 0:nX(p,l,`${s} has member 'write' that`),type:c}}(t,"First parameter");var n;if((n=this)._state="writable",n._storedError=void 0,n._writer=void 0,n._writableStreamController=void 0,n._writeRequests=new kr,n._inFlightWriteRequest=void 0,n._closeRequest=void 0,n._inFlightCloseRequest=void 0,n._pendingAbortRequest=void 0,n._backpressure=!1,a.type!==void 0)throw new RangeError("Invalid type is specified");const i=Cp(r);(function(l,s,o,d){const u=Object.create(xo.prototype);let c,p,A,m;c=s.start!==void 0?()=>s.start(u):()=>{},p=s.write!==void 0?h=>s.write(h,u):()=>nt(void 0),A=s.close!==void 0?()=>s.close():()=>nt(void 0),m=s.abort!==void 0?h=>s.abort(h):()=>nt(void 0),function(h,C,w,b,f,K,W,R){C._controlledWritableStream=h,h._writableStreamController=C,C._queue=void 0,C._queueTotalSize=void 0,ri(C),C._abortReason=void 0,C._abortController=function(){if(ub)return new AbortController}(),C._started=!1,C._strategySizeAlgorithm=R,C._strategyHWM=W,C._writeAlgorithm=b,C._closeAlgorithm=f,C._abortAlgorithm=K;const v=kA(C);TA(h,v);const L=w();Cr(nt(L),()=>(C._started=!0,i0(C),null),y=>(C._started=!0,LA(h,y),null))}(l,u,c,p,A,m,o,d)})(this,a,bo(r,1),i)}get locked(){if(!Ga(this))throw fp("locked");return bp(this)}abort(t){return Ga(this)?bp(this)?Fe(new TypeError("Cannot abort a stream that already has a writer")):x2(this,t):Fe(fp("abort"))}close(){return Ga(this)?bp(this)?Fe(new TypeError("Cannot close a stream that already has a writer")):$n(this)?Fe(new TypeError("Cannot close an already-closing stream")):J2(this):Fe(fp("close"))}getWriter(){if(!Ga(this))throw fp("getWriter");return new dn(this)}},Object.defineProperties(In.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),qe(In.prototype.abort,"abort"),qe(In.prototype.close,"close"),qe(In.prototype.getWriter,"getWriter"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(In.prototype,xe.toStringTag,{value:"WritableStream",configurable:!0}),dn=class{constructor(t){if(rn(t,1,"WritableStreamDefaultWriter"),function(a,n){if(!Ga(a))throw new TypeError(`${n} is not a WritableStream.`)}(t,"First parameter"),bp(t))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=t,t._writer=this;const e=t._state;if(e==="writable")!$n(t)&&t._backpressure?c1(this):z2(this),tc(this);else if(e==="erroring")UA(this,t._storedError),tc(this);else if(e==="closed")z2(this),tc(r=this),CW(r);else{const a=t._storedError;UA(this,a),P2(this,a)}var r}get closed(){return Li(this)?this._closedPromise:Fe(Ti("closed"))}get desiredSize(){if(!Li(this))throw Ti("desiredSize");if(this._ownerWritableStream===void 0)throw Ko("desiredSize");return function(t){const e=t._ownerWritableStream,r=e._state;return r==="errored"||r==="erroring"?null:r==="closed"?0:hW(e._writableStreamController)}(this)}get ready(){return Li(this)?this._readyPromise:Fe(Ti("ready"))}abort(t){return Li(this)?this._ownerWritableStream===void 0?Fe(Ko("abort")):function(e,r){return x2(e._ownerWritableStream,r)}(this,t):Fe(Ti("abort"))}close(){if(!Li(this))return Fe(Ti("close"));const t=this._ownerWritableStream;return t===void 0?Fe(Ko("close")):$n(t)?Fe(new TypeError("Cannot close an already-closing stream")):J2(this._ownerWritableStream)}releaseLock(){if(!Li(this))throw Ti("releaseLock");this._ownerWritableStream!==void 0&&function(t){const e=t._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");AW(t,r),function(a,n){a._closedPromiseState==="pending"?ZB(a,n):function(i,l){P2(i,l)}(a,n)}(t,r),e._writer=void 0,t._ownerWritableStream=void 0}(this)}write(t){return Li(this)?this._ownerWritableStream===void 0?Fe(Ko("write to")):function(e,r){const a=e._ownerWritableStream,n=a._writableStreamController,i=function(o,d){try{return o._strategySizeAlgorithm(d)}catch(u){return O2(o,u),1}}(n,r);if(a!==e._ownerWritableStream)return Fe(Ko("write to"));const l=a._state;if(l==="errored")return Fe(a._storedError);if($n(a)||l==="closed")return Fe(new TypeError("The stream is closing or closed and cannot be written to"));if(l==="erroring")return Fe(a._storedError);const s=function(o){return yr((d,u)=>{const c={_resolve:d,_reject:u};o._writeRequests.push(c)})}(a);return function(o,d,u){try{VA(o,d,u)}catch(p){return void O2(o,p)}const c=o._controlledWritableStream;!$n(c)&&c._state==="writable"&&TA(c,kA(o)),i0(o)}(n,r,i),s}(this,t):Fe(Ti("write"))}},Object.defineProperties(dn.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),qe(dn.prototype.abort,"abort"),qe(dn.prototype.close,"close"),qe(dn.prototype.releaseLock,"releaseLock"),qe(dn.prototype.write,"write"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(dn.prototype,xe.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0}),NB={},xo=class{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!Ym(this))throw Nm("abortReason");return this._abortReason}get signal(){if(!Ym(this))throw Nm("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(t){if(!Ym(this))throw Nm("error");this._controlledWritableStream._state==="writable"&&BW(this,t)}[_A](t){const e=this._abortAlgorithm(t);return n0(this),e}[IA](){ri(this)}},Object.defineProperties(xo.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof xe.toStringTag=="symbol"&&Object.defineProperty(xo.prototype,xe.toStringTag,{value:"WritableStreamDefaultController",configurable:!0}),km=typeof DOMException<"u"?DOMException:void 0,GW=function(t){if(typeof t!="function"&&typeof t!="object")return!1;try{return new t,!0}catch{return!1}}(km)?km:function(){const t=function(e,r){this.message=e||"",this.name=r||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return t.prototype=Object.create(Error.prototype),Object.defineProperty(t.prototype,"constructor",{value:t,writable:!0,configurable:!0}),t}(),On=class{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Qp(this))throw Wp("desiredSize");return bW(this)}close(){if(!Qp(this))throw Wp("close");if(!Do(this))throw new TypeError("The stream is not in a state that permits close");(function(t){if(!Do(t))return;const e=t._controlledReadableStream;t._closeRequested=!0,t._queue.length===0&&(rc(t),pd(e))})(this)}enqueue(t){if(!Qp(this))throw Wp("enqueue");if(!Do(this))throw new TypeError("The stream is not in a state that permits enqueue");return function(e,r){if(!Do(e))return;const a=e._controlledReadableStream;if(is(a)&&r0(a)>0)XA(a,r,!1);else{let n;try{n=e._strategySizeAlgorithm(r)}catch(i){throw ud(e,i),i}try{VA(e,r,n)}catch(i){throw ud(e,i),i}}dd(e)}(this,t)}error(t){if(!Qp(this))throw Wp("error");ud(this,t)}[ic](t){ri(this);const e=this._cancelAlgorithm(t);return rc(this),e}[yp](t){const e=this._controlledReadableStream;if(this._queue.length>0){const r=HA(this);this._closeRequested&&this._queue.length===0?(rc(this),pd(e)):dd(this),t._chunkSteps(r)}else T2(e,t),dd(this)}[lc](){}},Object.defineProperties(On.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),qe(On.prototype.close,"close"),qe(On.prototype.enqueue,"enqueue"),qe(On.prototype.error,"error"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(On.prototype,xe.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0}),rr=class{constructor(t={},e={}){t===void 0?t=null:V2(t,"First parameter");const r=wp(e,"Second parameter"),a=function(i,l){hn(i,l);const s=i,o=s==null?void 0:s.autoAllocateChunkSize,d=s==null?void 0:s.cancel,u=s==null?void 0:s.pull,c=s==null?void 0:s.start,p=s==null?void 0:s.type;return{autoAllocateChunkSize:o===void 0?void 0:N2(o,`${l} has member 'autoAllocateChunkSize' that`),cancel:d===void 0?void 0:sX(d,s,`${l} has member 'cancel' that`),pull:u===void 0?void 0:oX(u,s,`${l} has member 'pull' that`),start:c===void 0?void 0:dX(c,s,`${l} has member 'start' that`),type:p===void 0?void 0:uX(p,`${l} has member 'type' that`)}}(t,"First parameter");var n;if((n=this)._state="readable",n._reader=void 0,n._storedError=void 0,n._disturbed=!1,a.type==="bytes"){if(r.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");$7(this,a,bo(r,0))}else{const i=Cp(r);lX(this,a,bo(r,1),i)}}get locked(){if(!Cl(this))throw ki("locked");return is(this)}cancel(t){return Cl(this)?is(this)?Fe(new TypeError("Cannot cancel a stream that already has a reader")):KW(this,t):Fe(ki("cancel"))}getReader(t){if(!Cl(this))throw ki("getReader");return function(e,r){hn(e,r);const a=e==null?void 0:e.mode;return{mode:a===void 0?void 0:pX(a,`${r} has member 'mode' that`)}}(t,"First parameter").mode===void 0?new Un(this):function(e){return new _n(e)}(this)}pipeThrough(t,e={}){if(!Io(this))throw ki("pipeThrough");rn(t,1,"pipeThrough");const r=cX(t,"First parameter"),a=q2(e,"Second parameter");if(this.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(r.writable.locked)throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");return Vs(j2(this,r.writable,a.preventClose,a.preventAbort,a.preventCancel,a.signal)),r.readable}pipeTo(t,e={}){if(!Io(this))return Fe(ki("pipeTo"));if(t===void 0)return Fe("Parameter 1 is required in 'pipeTo'.");if(!tW(t))return Fe(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let r;try{r=q2(e,"Second parameter")}catch(a){return Fe(a)}return this.locked?Fe(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):t.locked?Fe(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):j2(this,t,r.preventClose,r.preventAbort,r.preventCancel,r.signal)}tee(){if(!Io(this))throw ki("tee");if(this.locked)throw new TypeError("Cannot tee a stream that already has a reader");return iX(this)}values(t){if(!Io(this))throw ki("values");return function(e,r){const a=e.getReader(),n=new MA(a,r),i=Object.create(Tm);return i._asyncIteratorImpl=n,i}(this,function(e,r){return hn(e,r),{preventCancel:!!(e==null?void 0:e.preventCancel)}}(t,"First parameter").preventCancel)}},Object.defineProperties(rr.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),qe(rr.prototype.cancel,"cancel"),qe(rr.prototype.getReader,"getReader"),qe(rr.prototype.pipeThrough,"pipeThrough"),qe(rr.prototype.pipeTo,"pipeTo"),qe(rr.prototype.tee,"tee"),qe(rr.prototype.values,"values"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(rr.prototype,xe.toStringTag,{value:"ReadableStream",configurable:!0}),typeof xe.asyncIterator=="symbol"&&Object.defineProperty(rr.prototype,xe.asyncIterator,{value:rr.prototype.values,writable:!0,configurable:!0}),Um=t=>t.byteLength,qe(Um,"size"),sc=class{constructor(t){rn(t,1,"ByteLengthQueuingStrategy"),t=$2(t,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=t.highWaterMark}get highWaterMark(){if(!tb(this))throw eb("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!tb(this))throw eb("size");return Um}},Object.defineProperties(sc.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof xe.toStringTag=="symbol"&&Object.defineProperty(sc.prototype,xe.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0}),_m=()=>1,qe(_m,"size"),oc=class{constructor(t){rn(t,1,"CountQueuingStrategy"),t=$2(t,"First parameter"),this._countQueuingStrategyHighWaterMark=t.highWaterMark}get highWaterMark(){if(!ab(this))throw rb("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!ab(this))throw rb("size");return _m}},Object.defineProperties(oc.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof xe.toStringTag=="symbol"&&Object.defineProperty(oc.prototype,xe.toStringTag,{value:"CountQueuingStrategy",configurable:!0}),dc=class{constructor(t={},e={},r={}){t===void 0&&(t=null);const a=wp(e,"Second parameter"),n=wp(r,"Third parameter"),i=function(c,p){hn(c,p);const A=c==null?void 0:c.flush,m=c==null?void 0:c.readableType,h=c==null?void 0:c.start,C=c==null?void 0:c.transform,w=c==null?void 0:c.writableType;return{flush:A===void 0?void 0:mX(A,c,`${p} has member 'flush' that`),readableType:m,start:h===void 0?void 0:gX(h,c,`${p} has member 'start' that`),transform:C===void 0?void 0:AX(C,c,`${p} has member 'transform' that`),writableType:w}}(t,"First parameter");if(i.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(i.writableType!==void 0)throw new RangeError("Invalid writableType specified");const l=bo(n,0),s=Cp(n),o=bo(a,1),d=Cp(a);let u;(function(c,p,A,m,h,C){function w(){return p}function b(v){return function(L,y){const G=L._transformStreamController;return L._backpressure?ga(L._backpressureChangePromise,()=>{if((Ga(L._writable)?L._writable._state:L._writableState)==="erroring")throw Ga(L._writable)?L._writable._storedError:L._writableStoredError;return lb(G,y)}):lb(G,y)}(c,v)}function f(v){return function(L,y){return ac(L,y),nt(void 0)}(c,v)}function K(){return function(v){const L=v._transformStreamController,y=L._flushAlgorithm();return QW(L),ga(y,()=>{if(v._readableState==="errored")throw v._readableStoredError;o0(v)&&ob(v)},G=>{throw ac(v,G),v._readableStoredError})}(c)}function W(){return function(v){return s0(v,!1),v._backpressureChangePromise}(c)}function R(v){return l0(c,v),nt(void 0)}c._writableState="writable",c._writableStoredError=void 0,c._writableHasInFlightOperation=!1,c._writableStarted=!1,c._writable=function(v,L,y,G,Z,k,_){return new In({start(U){v._writableController=U;try{const j=U.signal;j!==void 0&&j.addEventListener("abort",()=>{v._writableState==="writable"&&(v._writableState="erroring",j.reason&&(v._writableStoredError=j.reason))})}catch{}return ga(L(),()=>(v._writableStarted=!0,db(v),null),j=>{throw v._writableStarted=!0,Lm(v,j),j})},write:U=>(function(j){j._writableHasInFlightOperation=!0}(v),ga(y(U),()=>(function(j){j._writableHasInFlightOperation=!1}(v),db(v),null),j=>{throw function(O,P){O._writableHasInFlightOperation=!1,Lm(O,P)}(v,j),j})),close:()=>(function(U){U._writableHasInFlightOperation=!0}(v),ga(G(),()=>(function(U){U._writableHasInFlightOperation=!1,U._writableState==="erroring"&&(U._writableStoredError=void 0),U._writableState="closed"}(v),null),U=>{throw function(j,O){j._writableHasInFlightOperation=!1,j._writableState,Lm(j,O)}(v,U),U})),abort:U=>(v._writableState="errored",v._writableStoredError=U,Z(U))},{highWaterMark:k,size:_})}(c,w,b,K,f,A,m),c._readableState="readable",c._readableStoredError=void 0,c._readableCloseRequested=!1,c._readablePulling=!1,c._readable=function(v,L,y,G,Z,k){return new rr({start:_=>(v._readableController=_,L().catch(U=>{d0(v,U)})),pull:()=>(v._readablePulling=!0,y().catch(_=>{d0(v,_)})),cancel:_=>(v._readableState="closed",G(_))},{highWaterMark:Z,size:k})}(c,w,W,R,h,C),c._backpressure=void 0,c._backpressureChangePromise=void 0,c._backpressureChangePromise_resolve=void 0,s0(c,!0),c._transformStreamController=void 0})(this,yr(c=>{u=c}),o,d,l,s),function(c,p){const A=Object.create(Dn.prototype);let m,h;m=p.transform!==void 0?C=>p.transform(C,A):C=>{try{return ib(A,C),nt(void 0)}catch(w){return Fe(w)}},h=p.flush!==void 0?()=>p.flush(A):()=>nt(void 0),function(C,w,b,f){w._controlledTransformStream=C,C._transformStreamController=w,w._transformAlgorithm=b,w._flushAlgorithm=f}(c,A,m,h)}(this,i),i.start!==void 0?u(i.start(this._transformStreamController)):u(void 0)}get readable(){if(!nb(this))throw sb("readable");return this._readable}get writable(){if(!nb(this))throw sb("writable");return this._writable}},Object.defineProperties(dc.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof xe.toStringTag=="symbol"&&Object.defineProperty(dc.prototype,xe.toStringTag,{value:"TransformStream",configurable:!0}),Dn=class{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!vp(this))throw Fp("desiredSize");return WW(this._controlledTransformStream)}enqueue(t){if(!vp(this))throw Fp("enqueue");ib(this,t)}error(t){if(!vp(this))throw Fp("error");var e;e=t,ac(this._controlledTransformStream,e)}terminate(){if(!vp(this))throw Fp("terminate");(function(t){const e=t._controlledTransformStream;o0(e)&&ob(e);const r=new TypeError("TransformStream terminated");l0(e,r)})(this)}},Object.defineProperties(Dn.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),qe(Dn.prototype.enqueue,"enqueue"),qe(Dn.prototype.error,"error"),qe(Dn.prototype.terminate,"terminate"),typeof xe.toStringTag=="symbol"&&Object.defineProperty(Dn.prototype,xe.toStringTag,{value:"TransformStreamDefaultController",configurable:!0})}}),Pt,LB=be({"node_modules/formdata-node/lib/esm/isFunction.js"(){Pt=t=>typeof t=="function"}});async function*BX(t){const e=t.byteOffset+t.byteLength;let r=t.byteOffset;for(;r!==e;){const a=Math.min(e-r,TB),n=t.buffer.slice(r,r+a);r+=n.byteLength,yield new Uint8Array(n)}}async function*CX(t){let e=0;for(;e!==t.size;){const a=await t.slice(e,Math.min(t.size,e+TB)).arrayBuffer();e+=a.byteLength,yield new Uint8Array(a)}}async function*Im(t,e=!1){for(const r of t)ArrayBuffer.isView(r)?e?yield*BX(r):yield r:Pt(r.stream)?yield*r.stream():yield*CX(r)}function*wX(t,e,r=0,a){a??(a=e);let n=r<0?Math.max(e+r,0):Math.min(r,e),i=a<0?Math.max(e+a,0):Math.min(a,e);const l=Math.max(i-n,0);let s=0;for(const o of t){if(s>=l)break;const d=ArrayBuffer.isView(o)?o.byteLength:o.size;if(n&&d<=n)n-=d,i-=d;else{let u;ArrayBuffer.isView(o)?(u=o.subarray(n,Math.min(d,i)),s+=u.byteLength):(u=o.slice(n,Math.min(d,i)),s+=u.size),i-=d,n=0,yield u}}}var TB,bX=be({"node_modules/formdata-node/lib/esm/blobHelpers.js"(){LB(),TB=65536}}),an,Dm,Ui,Rp,fo,Ys,kB=be({"node_modules/formdata-node/lib/esm/Blob.js"(){hX(),LB(),bX(),an=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},Dm=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},Ys=class xA{constructor(e=[],r={}){if(Ui.set(this,[]),Rp.set(this,""),fo.set(this,0),r??(r={}),typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(!Pt(e[Symbol.iterator]))throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&!Pt(r))throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");const a=new TextEncoder;for(const i of e){let l;ArrayBuffer.isView(i)?l=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?l=new Uint8Array(i.slice(0)):i instanceof xA?l=i:l=a.encode(String(i)),Dm(this,fo,an(this,fo,"f")+(ArrayBuffer.isView(l)?l.byteLength:l.size),"f"),an(this,Ui,"f").push(l)}const n=r.type===void 0?"":String(r.type);Dm(this,Rp,/^[\x20-\x7E]*$/.test(n)?n:"","f")}static[(Ui=new WeakMap,Rp=new WeakMap,fo=new WeakMap,Symbol.hasInstance)](e){return!!(e&&typeof e=="object"&&Pt(e.constructor)&&(Pt(e.stream)||Pt(e.arrayBuffer))&&/^(Blob|File)$/.test(e[Symbol.toStringTag]))}get type(){return an(this,Rp,"f")}get size(){return an(this,fo,"f")}slice(e,r,a){return new xA(wX(an(this,Ui,"f"),this.size,e,r),{type:a})}async text(){const e=new TextDecoder;let r="";for await(const a of Im(an(this,Ui,"f")))r+=e.decode(a,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){const e=new Uint8Array(this.size);let r=0;for await(const a of Im(an(this,Ui,"f")))e.set(a,r),r+=a.length;return e.buffer}stream(){const e=Im(an(this,Ui,"f"),!0);return new rr({async pull(r){const{value:a,done:n}=await e.next();if(n)return queueMicrotask(()=>r.close());r.enqueue(a)},async cancel(){await e.return()}})}get[Symbol.toStringTag](){return"Blob"}},Object.defineProperties(Ys.prototype,{type:{enumerable:!0},size:{enumerable:!0},slice:{enumerable:!0},stream:{enumerable:!0},text:{enumerable:!0},arrayBuffer:{enumerable:!0}})}}),Mm,xm,Ep,Gp,Ns,m1=be({"node_modules/formdata-node/lib/esm/File.js"(){kB(),Mm=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},xm=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},Ns=class extends Ys{constructor(t,e,r={}){if(super(t,r),Ep.set(this,void 0),Gp.set(this,0),arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);Mm(this,Ep,String(e),"f");const a=r.lastModified===void 0?Date.now():Number(r.lastModified);Number.isNaN(a)||Mm(this,Gp,a,"f")}static[(Ep=new WeakMap,Gp=new WeakMap,Symbol.hasInstance)](t){return t instanceof Ys&&t[Symbol.toStringTag]==="File"&&typeof t.name=="string"}get name(){return xm(this,Ep,"f")}get lastModified(){return xm(this,Gp,"f")}get webkitRelativePath(){return""}get[Symbol.toStringTag](){return"File"}}}}),UB,SW=be({"node_modules/formdata-node/lib/esm/isFile.js"(){m1(),UB=t=>t instanceof Ns}}),KX=tt({"node_modules/humanize-ms/node_modules/ms/index.js"(t,e){var r=1e3,a=r*60,n=a*60,i=n*24,l=i*7,s=i*365.25;e.exports=function(p,A){A=A||{};var m=typeof p;if(m==="string"&&p.length>0)return o(p);if(m==="number"&&isFinite(p))return A.long?u(p):d(p);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(p))};function o(p){if(p=String(p),!(p.length>100)){var A=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(p);if(A){var m=parseFloat(A[1]),h=(A[2]||"ms").toLowerCase();switch(h){case"years":case"year":case"yrs":case"yr":case"y":return m*s;case"weeks":case"week":case"w":return m*l;case"days":case"day":case"d":return m*i;case"hours":case"hour":case"hrs":case"hr":case"h":return m*n;case"minutes":case"minute":case"mins":case"min":case"m":return m*a;case"seconds":case"second":case"secs":case"sec":case"s":return m*r;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return m;default:return}}}}function d(p){var A=Math.abs(p);return A>=i?Math.round(p/i)+"d":A>=n?Math.round(p/n)+"h":A>=a?Math.round(p/a)+"m":A>=r?Math.round(p/r)+"s":p+"ms"}function u(p){var A=Math.abs(p);return A>=i?c(p,A,i,"day"):A>=n?c(p,A,n,"hour"):A>=a?c(p,A,a,"minute"):A>=r?c(p,A,r,"second"):p+" ms"}function c(p,A,m,h){var C=A>=m*1.5;return Math.round(p/m)+" "+h+(C?"s":"")}}}),fX=tt({"node_modules/humanize-ms/index.js"(t,e){var r=hi("util"),a=KX();e.exports=function(n){if(typeof n=="number")return n;var i=a(n);if(i===void 0){var l=new Error(r.format("humanize-ms(%j) result undefined",n));console.warn(l.stack)}return i}}}),_B=tt({"node_modules/agentkeepalive/lib/constants.js"(t,e){e.exports={CURRENT_ID:Symbol("agentkeepalive#currentId"),CREATE_ID:Symbol("agentkeepalive#createId"),INIT_SOCKET:Symbol("agentkeepalive#initSocket"),CREATE_HTTPS_CONNECTION:Symbol("agentkeepalive#createHttpsConnection"),SOCKET_CREATED_TIME:Symbol("agentkeepalive#socketCreatedTime"),SOCKET_NAME:Symbol("agentkeepalive#socketName"),SOCKET_REQUEST_COUNT:Symbol("agentkeepalive#socketRequestCount"),SOCKET_REQUEST_FINISHED_COUNT:Symbol("agentkeepalive#socketRequestFinishedCount")}}}),ZW=tt({"node_modules/agentkeepalive/lib/agent.js"(t,e){var r=hi("http").Agent,a=fX(),n=hi("util").debuglog("agentkeepalive"),{INIT_SOCKET:i,CURRENT_ID:l,CREATE_ID:s,SOCKET_CREATED_TIME:o,SOCKET_NAME:d,SOCKET_REQUEST_COUNT:u,SOCKET_REQUEST_FINISHED_COUNT:c}=_B(),p=1,A=parseInt(process.version.split(".",1)[0].substring(1));A>=11&&A<=12?p=2:A>=13&&(p=3);function m(f){console.log("[agentkeepalive:deprecated] %s",f)}var h=class extends r{constructor(f){f=f||{},f.keepAlive=f.keepAlive!==!1,f.freeSocketTimeout===void 0&&(f.freeSocketTimeout=4e3),f.keepAliveTimeout&&(m("options.keepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),f.freeSocketTimeout=f.keepAliveTimeout,delete f.keepAliveTimeout),f.freeSocketKeepAliveTimeout&&(m("options.freeSocketKeepAliveTimeout is deprecated, please use options.freeSocketTimeout instead"),f.freeSocketTimeout=f.freeSocketKeepAliveTimeout,delete f.freeSocketKeepAliveTimeout),f.timeout===void 0&&(f.timeout=Math.max(f.freeSocketTimeout*2,8e3)),f.timeout=a(f.timeout),f.freeSocketTimeout=a(f.freeSocketTimeout),f.socketActiveTTL=f.socketActiveTTL?a(f.socketActiveTTL):0,super(f),this[l]=0,this.createSocketCount=0,this.createSocketCountLastCheck=0,this.createSocketErrorCount=0,this.createSocketErrorCountLastCheck=0,this.closeSocketCount=0,this.closeSocketCountLastCheck=0,this.errorSocketCount=0,this.errorSocketCountLastCheck=0,this.requestCount=0,this.requestCountLastCheck=0,this.timeoutSocketCount=0,this.timeoutSocketCountLastCheck=0,this.on("free",K=>{const W=this.calcSocketTimeout(K);W>0&&K.timeout!==W&&K.setTimeout(W)})}get freeSocketKeepAliveTimeout(){return m("agent.freeSocketKeepAliveTimeout is deprecated, please use agent.options.freeSocketTimeout instead"),this.options.freeSocketTimeout}get timeout(){return m("agent.timeout is deprecated, please use agent.options.timeout instead"),this.options.timeout}get socketActiveTTL(){return m("agent.socketActiveTTL is deprecated, please use agent.options.socketActiveTTL instead"),this.options.socketActiveTTL}calcSocketTimeout(f){let K=this.options.freeSocketTimeout;const W=this.options.socketActiveTTL;if(W){const R=Date.now()-f[o],v=W-R;if(v<=0)return v;K&&v<K&&(K=v)}if(K)return f.freeSocketTimeout||f.freeSocketKeepAliveTimeout||K}keepSocketAlive(f){const K=super.keepSocketAlive(f);if(!K)return K;const W=this.calcSocketTimeout(f);return typeof W>"u"?!0:W<=0?(n("%s(requests: %s, finished: %s) free but need to destroy by TTL, request count %s, diff is %s",f[d],f[u],f[c],W),!1):(f.timeout!==W&&f.setTimeout(W),!0)}reuseSocket(...f){super.reuseSocket(...f);const K=f[0],W=f[1];W.reusedSocket=!0;const R=this.options.timeout;C(K)!==R&&(K.setTimeout(R),n("%s reset timeout to %sms",K[d],R)),K[u]++,n("%s(requests: %s, finished: %s) reuse on addRequest, timeout %sms",K[d],K[u],K[c],C(K))}[s](){const f=this[l]++;return this[l]===Number.MAX_SAFE_INTEGER&&(this[l]=0),f}[i](f,K){K.timeout&&(C(f)||f.setTimeout(K.timeout)),this.options.keepAlive&&f.setNoDelay(!0),this.createSocketCount++,this.options.socketActiveTTL&&(f[o]=Date.now()),f[d]=`sock[${this[s]()}#${K._agentKey}]`.split("-----BEGIN",1)[0],f[u]=1,f[c]=0,w(this,f,K)}createConnection(f,K){let W=!1;const R=(L,y)=>{if(!W){if(W=!0,L)return this.createSocketErrorCount++,K(L);this[i](y,f),K(L,y)}},v=super.createConnection(f,R);return v&&R(null,v),v}get statusChanged(){const f=this.createSocketCount!==this.createSocketCountLastCheck||this.createSocketErrorCount!==this.createSocketErrorCountLastCheck||this.closeSocketCount!==this.closeSocketCountLastCheck||this.errorSocketCount!==this.errorSocketCountLastCheck||this.timeoutSocketCount!==this.timeoutSocketCountLastCheck||this.requestCount!==this.requestCountLastCheck;return f&&(this.createSocketCountLastCheck=this.createSocketCount,this.createSocketErrorCountLastCheck=this.createSocketErrorCount,this.closeSocketCountLastCheck=this.closeSocketCount,this.errorSocketCountLastCheck=this.errorSocketCount,this.timeoutSocketCountLastCheck=this.timeoutSocketCount,this.requestCountLastCheck=this.requestCount),f}getCurrentStatus(){return{createSocketCount:this.createSocketCount,createSocketErrorCount:this.createSocketErrorCount,closeSocketCount:this.closeSocketCount,errorSocketCount:this.errorSocketCount,timeoutSocketCount:this.timeoutSocketCount,requestCount:this.requestCount,freeSockets:b(this.freeSockets),sockets:b(this.sockets),requests:b(this.requests)}}};function C(f){return f.timeout||f._idleTimeout}function w(f,K,W){n("%s create, timeout %sms",K[d],C(K));function R(){if(!K._httpMessage&&K[u]===1)return;K[c]++,f.requestCount++,n("%s(requests: %s, finished: %s) free",K[d],K[u],K[c]);const Z=f.getName(W);K.writable&&f.requests[Z]&&f.requests[Z].length&&(K[u]++,n("%s(requests: %s, finished: %s) will be reuse on agent free event",K[d],K[u],K[c]))}K.on("free",R);function v(Z){n("%s(requests: %s, finished: %s) close, isError: %s",K[d],K[u],K[c],Z),f.closeSocketCount++}K.on("close",v);function L(){const Z=K.listeners("timeout").length,k=C(K),_=K._httpMessage,U=_&&_.listeners("timeout").length||0;n("%s(requests: %s, finished: %s) timeout after %sms, listeners %s, defaultTimeoutListenerCount %s, hasHttpRequest %s, HttpRequest timeoutListenerCount %s",K[d],K[u],K[c],k,Z,p,!!_,U),n.enabled&&n("timeout listeners: %s",K.listeners("timeout").map(O=>O.name).join(", ")),f.timeoutSocketCount++;const j=f.getName(W);if(f.freeSockets[j]&&f.freeSockets[j].indexOf(K)!==-1)K.destroy(),f.removeSocket(K,W),n("%s is free, destroy quietly",K[d]);else if(U===0){const O=new Error("Socket timeout");O.code="ERR_SOCKET_TIMEOUT",O.timeout=k,K.destroy(O),f.removeSocket(K,W),n("%s destroy with timeout error",K[d])}}K.on("timeout",L);function y(Z){const k=K.listeners("error").length;n("%s(requests: %s, finished: %s) error: %s, listenerCount: %s",K[d],K[u],K[c],Z,k),f.errorSocketCount++,k===1&&(n("%s emit uncaught error event",K[d]),K.removeListener("error",y),K.emit("error",Z))}K.on("error",y);function G(){n("%s(requests: %s, finished: %s) agentRemove",K[d],K[u],K[c]),K.removeListener("close",v),K.removeListener("error",y),K.removeListener("free",R),K.removeListener("timeout",L),K.removeListener("agentRemove",G)}K.on("agentRemove",G)}e.exports=h;function b(f){const K={};for(const W in f)K[W]=f[W].length;return K}}}),QX=tt({"node_modules/agentkeepalive/lib/https_agent.js"(t,e){var r=hi("https").Agent,a=ZW(),{INIT_SOCKET:n,CREATE_HTTPS_CONNECTION:i}=_B(),l=class extends a{constructor(s){super(s),this.defaultPort=443,this.protocol="https:",this.maxCachedSessions=this.options.maxCachedSessions,this.maxCachedSessions===void 0&&(this.maxCachedSessions=100),this._sessionCache={map:{},list:[]}}createConnection(s,o){const d=this[i](s,o);return this[n](d,s),d}};l.prototype[i]=r.prototype.createConnection,["getName","_getSession","_cacheSession","_evictSession"].forEach(function(s){typeof r.prototype[s]=="function"&&(l.prototype[s]=r.prototype[s])}),e.exports=l}}),WX=tt({"node_modules/agentkeepalive/index.js"(t,e){e.exports=ZW(),e.exports.HttpsAgent=QX(),e.exports.constants=_B()}}),vX=tt({"node_modules/event-target-shim/dist/event-target-shim.js"(t,e){Object.defineProperty(t,"__esModule",{value:!0});var r=new WeakMap,a=new WeakMap;function n(G){const Z=r.get(G);return console.assert(Z!=null,"'this' is expected an Event object, but got",G),Z}function i(G){if(G.passiveListener!=null){typeof console<"u"&&typeof console.error=="function"&&console.error("Unable to preventDefault inside passive event listener invocation.",G.passiveListener);return}G.event.cancelable&&(G.canceled=!0,typeof G.event.preventDefault=="function"&&G.event.preventDefault())}function l(G,Z){r.set(this,{eventTarget:G,event:Z,eventPhase:2,currentTarget:G,canceled:!1,stopped:!1,immediateStopped:!1,passiveListener:null,timeStamp:Z.timeStamp||Date.now()}),Object.defineProperty(this,"isTrusted",{value:!1,enumerable:!0});const k=Object.keys(Z);for(let _=0;_<k.length;++_){const U=k[_];U in this||Object.defineProperty(this,U,s(U))}}l.prototype={get type(){return n(this).event.type},get target(){return n(this).eventTarget},get currentTarget(){return n(this).currentTarget},composedPath(){const G=n(this).currentTarget;return G==null?[]:[G]},get NONE(){return 0},get CAPTURING_PHASE(){return 1},get AT_TARGET(){return 2},get BUBBLING_PHASE(){return 3},get eventPhase(){return n(this).eventPhase},stopPropagation(){const G=n(this);G.stopped=!0,typeof G.event.stopPropagation=="function"&&G.event.stopPropagation()},stopImmediatePropagation(){const G=n(this);G.stopped=!0,G.immediateStopped=!0,typeof G.event.stopImmediatePropagation=="function"&&G.event.stopImmediatePropagation()},get bubbles(){return!!n(this).event.bubbles},get cancelable(){return!!n(this).event.cancelable},preventDefault(){i(n(this))},get defaultPrevented(){return n(this).canceled},get composed(){return!!n(this).event.composed},get timeStamp(){return n(this).timeStamp},get srcElement(){return n(this).eventTarget},get cancelBubble(){return n(this).stopped},set cancelBubble(G){if(!G)return;const Z=n(this);Z.stopped=!0,typeof Z.event.cancelBubble=="boolean"&&(Z.event.cancelBubble=!0)},get returnValue(){return!n(this).canceled},set returnValue(G){G||i(n(this))},initEvent(){}},Object.defineProperty(l.prototype,"constructor",{value:l,configurable:!0,writable:!0}),typeof window<"u"&&typeof window.Event<"u"&&(Object.setPrototypeOf(l.prototype,window.Event.prototype),a.set(window.Event.prototype,l));function s(G){return{get(){return n(this).event[G]},set(Z){n(this).event[G]=Z},configurable:!0,enumerable:!0}}function o(G){return{value(){const Z=n(this).event;return Z[G].apply(Z,arguments)},configurable:!0,enumerable:!0}}function d(G,Z){const k=Object.keys(Z);if(k.length===0)return G;function _(U,j){G.call(this,U,j)}_.prototype=Object.create(G.prototype,{constructor:{value:_,configurable:!0,writable:!0}});for(let U=0;U<k.length;++U){const j=k[U];if(!(j in G.prototype)){const P=typeof Object.getOwnPropertyDescriptor(Z,j).value=="function";Object.defineProperty(_.prototype,j,P?o(j):s(j))}}return _}function u(G){if(G==null||G===Object.prototype)return l;let Z=a.get(G);return Z==null&&(Z=d(u(Object.getPrototypeOf(G)),G),a.set(G,Z)),Z}function c(G,Z){const k=u(Object.getPrototypeOf(Z));return new k(G,Z)}function p(G){return n(G).immediateStopped}function A(G,Z){n(G).eventPhase=Z}function m(G,Z){n(G).currentTarget=Z}function h(G,Z){n(G).passiveListener=Z}var C=new WeakMap,w=1,b=2,f=3;function K(G){return G!==null&&typeof G=="object"}function W(G){const Z=C.get(G);if(Z==null)throw new TypeError("'this' is expected an EventTarget object, but got another value.");return Z}function R(G){return{get(){let k=W(this).get(G);for(;k!=null;){if(k.listenerType===f)return k.listener;k=k.next}return null},set(Z){typeof Z!="function"&&!K(Z)&&(Z=null);const k=W(this);let _=null,U=k.get(G);for(;U!=null;)U.listenerType===f?_!==null?_.next=U.next:U.next!==null?k.set(G,U.next):k.delete(G):_=U,U=U.next;if(Z!==null){const j={listener:Z,listenerType:f,passive:!1,once:!1,next:null};_===null?k.set(G,j):_.next=j}},configurable:!0,enumerable:!0}}function v(G,Z){Object.defineProperty(G,`on${Z}`,R(Z))}function L(G){function Z(){y.call(this)}Z.prototype=Object.create(y.prototype,{constructor:{value:Z,configurable:!0,writable:!0}});for(let k=0;k<G.length;++k)v(Z.prototype,G[k]);return Z}function y(){if(this instanceof y){C.set(this,new Map);return}if(arguments.length===1&&Array.isArray(arguments[0]))return L(arguments[0]);if(arguments.length>0){const G=new Array(arguments.length);for(let Z=0;Z<arguments.length;++Z)G[Z]=arguments[Z];return L(G)}throw new TypeError("Cannot call a class as a function")}y.prototype={addEventListener(G,Z,k){if(Z==null)return;if(typeof Z!="function"&&!K(Z))throw new TypeError("'listener' should be a function or an object.");const _=W(this),U=K(k),O=(U?!!k.capture:!!k)?w:b,P={listener:Z,listenerType:O,passive:U&&!!k.passive,once:U&&!!k.once,next:null};let z=_.get(G);if(z===void 0){_.set(G,P);return}let Se=null;for(;z!=null;){if(z.listener===Z&&z.listenerType===O)return;Se=z,z=z.next}Se.next=P},removeEventListener(G,Z,k){if(Z==null)return;const _=W(this),j=(K(k)?!!k.capture:!!k)?w:b;let O=null,P=_.get(G);for(;P!=null;){if(P.listener===Z&&P.listenerType===j){O!==null?O.next=P.next:P.next!==null?_.set(G,P.next):_.delete(G);return}O=P,P=P.next}},dispatchEvent(G){if(G==null||typeof G.type!="string")throw new TypeError('"event.type" should be a string.');const Z=W(this),k=G.type;let _=Z.get(k);if(_==null)return!0;const U=c(this,G);let j=null;for(;_!=null;){if(_.once?j!==null?j.next=_.next:_.next!==null?Z.set(k,_.next):Z.delete(k):j=_,h(U,_.passive?_.listener:null),typeof _.listener=="function")try{_.listener.call(this,U)}catch(O){typeof console<"u"&&typeof console.error=="function"&&console.error(O)}else _.listenerType!==f&&typeof _.listener.handleEvent=="function"&&_.listener.handleEvent(U);if(p(U))break;_=_.next}return h(U,null),A(U,0),m(U,null),!U.defaultPrevented}},Object.defineProperty(y.prototype,"constructor",{value:y,configurable:!0,writable:!0}),typeof window<"u"&&typeof window.EventTarget<"u"&&Object.setPrototypeOf(y.prototype,window.EventTarget.prototype),t.defineEventAttribute=v,t.EventTarget=y,t.default=y,e.exports=y,e.exports.EventTarget=e.exports.default=y,e.exports.defineEventAttribute=v}}),FX=tt({"node_modules/abort-controller/dist/abort-controller.js"(t,e){Object.defineProperty(t,"__esModule",{value:!0});var r=vX(),a=class extends r.EventTarget{constructor(){throw super(),new TypeError("AbortSignal cannot be constructed directly")}get aborted(){const u=l.get(this);if(typeof u!="boolean")throw new TypeError(`Expected 'this' to be an 'AbortSignal' object, but got ${this===null?"null":typeof this}`);return u}};r.defineEventAttribute(a.prototype,"abort");function n(){const u=Object.create(a.prototype);return r.EventTarget.call(u),l.set(u,!1),u}function i(u){l.get(u)===!1&&(l.set(u,!0),u.dispatchEvent({type:"abort"}))}var l=new WeakMap;Object.defineProperties(a.prototype,{aborted:{enumerable:!0}}),typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(a.prototype,Symbol.toStringTag,{configurable:!0,value:"AbortSignal"});var s=class{constructor(){o.set(this,n())}get signal(){return d(this)}abort(){i(d(this))}},o=new WeakMap;function d(u){const c=o.get(u);if(c==null)throw new TypeError(`Expected 'this' to be an 'AbortController' object, but got ${u===null?"null":typeof u}`);return c}Object.defineProperties(s.prototype,{signal:{enumerable:!0},abort:{enumerable:!0}}),typeof Symbol=="function"&&typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(s.prototype,Symbol.toStringTag,{configurable:!0,value:"AbortController"}),t.AbortController=s,t.AbortSignal=a,t.default=s,e.exports=s,e.exports.AbortController=e.exports.default=s,e.exports.AbortSignal=a}}),yX=tt({"node_modules/web-streams-polyfill/dist/ponyfill.es2018.js"(t,e){(function(r,a){typeof t=="object"&&typeof e<"u"?a(t):typeof define=="function"&&define.amd?define(["exports"],a):(r=typeof globalThis<"u"?globalThis:r||self,a(r.WebStreamsPolyfill={}))})(t,function(r){function a(){}function n(g){return typeof g=="object"&&g!==null||typeof g=="function"}const i=a;function l(g,B){try{Object.defineProperty(g,"name",{value:B,configurable:!0})}catch{}}const s=Promise,o=Promise.prototype.then,d=Promise.reject.bind(s);function u(g){return new s(g)}function c(g){return u(B=>B(g))}function p(g){return d(g)}function A(g,B,Q){return o.call(g,B,Q)}function m(g,B,Q){A(A(g,B,Q),void 0,i)}function h(g,B){m(g,B)}function C(g,B){m(g,void 0,B)}function w(g,B,Q){return A(g,B,Q)}function b(g){A(g,void 0,i)}let f=g=>{if(typeof queueMicrotask=="function")f=queueMicrotask;else{const B=c(void 0);f=Q=>A(B,Q)}return f(g)};function K(g,B,Q){if(typeof g!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(g,B,Q)}function W(g,B,Q){try{return c(K(g,B,Q))}catch(S){return p(S)}}const R=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(B){const Q=this._back;let S=Q;Q._elements.length===R-1&&(S={_elements:[],_next:void 0}),Q._elements.push(B),S!==Q&&(this._back=S,Q._next=S),++this._size}shift(){const B=this._front;let Q=B;const S=this._cursor;let T=S+1;const I=B._elements,x=I[S];return T===R&&(Q=B._next,T=0),--this._size,this._cursor=T,B!==Q&&(this._front=Q),I[S]=void 0,x}forEach(B){let Q=this._cursor,S=this._front,T=S._elements;for(;(Q!==T.length||S._next!==void 0)&&!(Q===T.length&&(S=S._next,T=S._elements,Q=0,T.length===0));)B(T[Q]),++Q}peek(){const B=this._front,Q=this._cursor;return B._elements[Q]}}const L=Symbol("[[AbortSteps]]"),y=Symbol("[[ErrorSteps]]"),G=Symbol("[[CancelSteps]]"),Z=Symbol("[[PullSteps]]"),k=Symbol("[[ReleaseSteps]]");function _(g,B){g._ownerReadableStream=B,B._reader=g,B._state==="readable"?P(g):B._state==="closed"?Se(g):z(g,B._storedError)}function U(g,B){const Q=g._ownerReadableStream;return ia(Q,B)}function j(g){const B=g._ownerReadableStream;B._state==="readable"?he(g,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):Ht(g,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),B._readableStreamController[k](),B._reader=void 0,g._ownerReadableStream=void 0}function O(g){return new TypeError("Cannot "+g+" a stream using a released reader")}function P(g){g._closedPromise=u((B,Q)=>{g._closedPromise_resolve=B,g._closedPromise_reject=Q})}function z(g,B){P(g),he(g,B)}function Se(g){P(g),Vt(g)}function he(g,B){g._closedPromise_reject!==void 0&&(b(g._closedPromise),g._closedPromise_reject(B),g._closedPromise_resolve=void 0,g._closedPromise_reject=void 0)}function Ht(g,B){z(g,B)}function Vt(g){g._closedPromise_resolve!==void 0&&(g._closedPromise_resolve(void 0),g._closedPromise_resolve=void 0,g._closedPromise_reject=void 0)}const Je=Number.isFinite||function(g){return typeof g=="number"&&isFinite(g)},Xe=Math.trunc||function(g){return g<0?Math.ceil(g):Math.floor(g)};function ct(g){return typeof g=="object"||typeof g=="function"}function rt(g,B){if(g!==void 0&&!ct(g))throw new TypeError(`${B} is not an object.`)}function je(g,B){if(typeof g!="function")throw new TypeError(`${B} is not a function.`)}function Yt(g){return typeof g=="object"&&g!==null||typeof g=="function"}function at(g,B){if(!Yt(g))throw new TypeError(`${B} is not an object.`)}function ve(g,B,Q){if(g===void 0)throw new TypeError(`Parameter ${B} is required in '${Q}'.`)}function to(g,B,Q){if(g===void 0)throw new TypeError(`${B} is required in '${Q}'.`)}function ro(g){return Number(g)}function vu(g){return g===0?0:g}function H(g){return vu(Xe(g))}function V(g,B){const S=Number.MAX_SAFE_INTEGER;let T=Number(g);if(T=vu(T),!Je(T))throw new TypeError(`${B} is not a finite number`);if(T=H(T),T<0||T>S)throw new TypeError(`${B} is outside the accepted range of 0 to ${S}, inclusive`);return!Je(T)||T===0?0:T}function q(g,B){if(!Gn(g))throw new TypeError(`${B} is not a ReadableStream.`)}function $(g){return new Jt(g)}function Be(g,B){g._reader._readRequests.push(B)}function Te(g,B,Q){const T=g._reader._readRequests.shift();Q?T._closeSteps():T._chunkSteps(B)}function wt(g){return g._reader._readRequests.length}function ra(g){const B=g._reader;return!(B===void 0||!aa(B))}class Jt{constructor(B){if(ve(B,1,"ReadableStreamDefaultReader"),q(B,"First parameter"),Sn(B))throw new TypeError("This stream has already been locked for exclusive reading by another reader");_(this,B),this._readRequests=new v}get closed(){return aa(this)?this._closedPromise:p(Fu("closed"))}cancel(B=void 0){return aa(this)?this._ownerReadableStream===void 0?p(O("cancel")):U(this,B):p(Fu("cancel"))}read(){if(!aa(this))return p(Fu("read"));if(this._ownerReadableStream===void 0)return p(O("read from"));let B,Q;const S=u((I,x)=>{B=I,Q=x});return ao(this,{_chunkSteps:I=>B({value:I,done:!1}),_closeSteps:()=>B({value:void 0,done:!0}),_errorSteps:I=>Q(I)}),S}releaseLock(){if(!aa(this))throw Fu("releaseLock");this._ownerReadableStream!==void 0&&Vv(this)}}Object.defineProperties(Jt.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),l(Jt.prototype.cancel,"cancel"),l(Jt.prototype.read,"read"),l(Jt.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Jt.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function aa(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_readRequests")?!1:g instanceof Jt}function ao(g,B){const Q=g._ownerReadableStream;Q._disturbed=!0,Q._state==="closed"?B._closeSteps():Q._state==="errored"?B._errorSteps(Q._storedError):Q._readableStreamController[Z](B)}function Vv(g){j(g);const B=new TypeError("Reader was released");FC(g,B)}function FC(g,B){const Q=g._readRequests;g._readRequests=new v,Q.forEach(S=>{S._errorSteps(B)})}function Fu(g){return new TypeError(`ReadableStreamDefaultReader.prototype.${g} can only be used on a ReadableStreamDefaultReader`)}const Yv=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class yC{constructor(B,Q){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=B,this._preventCancel=Q}next(){const B=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?w(this._ongoingPromise,B,B):B(),this._ongoingPromise}return(B){const Q=()=>this._returnSteps(B);return this._ongoingPromise?w(this._ongoingPromise,Q,Q):Q()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});const B=this._reader;let Q,S;const T=u((x,ce)=>{Q=x,S=ce});return ao(B,{_chunkSteps:x=>{this._ongoingPromise=void 0,f(()=>Q({value:x,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,j(B),Q({value:void 0,done:!0})},_errorSteps:x=>{this._ongoingPromise=void 0,this._isFinished=!0,j(B),S(x)}}),T}_returnSteps(B){if(this._isFinished)return Promise.resolve({value:B,done:!0});this._isFinished=!0;const Q=this._reader;if(!this._preventCancel){const S=U(Q,B);return j(Q),w(S,()=>({value:B,done:!0}))}return j(Q),c({value:B,done:!0})}}const RC={next(){return EC(this)?this._asyncIteratorImpl.next():p(GC("next"))},return(g){return EC(this)?this._asyncIteratorImpl.return(g):p(GC("return"))}};Object.setPrototypeOf(RC,Yv);function Nv(g,B){const Q=$(g),S=new yC(Q,B),T=Object.create(RC);return T._asyncIteratorImpl=S,T}function EC(g){if(!n(g)||!Object.prototype.hasOwnProperty.call(g,"_asyncIteratorImpl"))return!1;try{return g._asyncIteratorImpl instanceof yC}catch{return!1}}function GC(g){return new TypeError(`ReadableStreamAsyncIterator.${g} can only be used on a ReadableSteamAsyncIterator`)}const SC=Number.isNaN||function(g){return g!==g};var f1,Q1,W1;function no(g){return g.slice()}function ZC(g,B,Q,S,T){new Uint8Array(g).set(new Uint8Array(Q,S,T),B)}let xa=g=>(typeof g.transfer=="function"?xa=B=>B.transfer():typeof structuredClone=="function"?xa=B=>structuredClone(B,{transfer:[B]}):xa=B=>B,xa(g)),Fn=g=>(typeof g.detached=="boolean"?Fn=B=>B.detached:Fn=B=>B.byteLength===0,Fn(g));function XC(g,B,Q){if(g.slice)return g.slice(B,Q);const S=Q-B,T=new ArrayBuffer(S);return ZC(T,0,g,B,S),T}function yu(g,B){const Q=g[B];if(Q!=null){if(typeof Q!="function")throw new TypeError(`${String(B)} is not a function`);return Q}}function Lv(g){const B={[Symbol.iterator]:()=>g.iterator},Q=async function*(){return yield*B}(),S=Q.next;return{iterator:Q,nextMethod:S,done:!1}}const v1=(W1=(f1=Symbol.asyncIterator)!==null&&f1!==void 0?f1:(Q1=Symbol.for)===null||Q1===void 0?void 0:Q1.call(Symbol,"Symbol.asyncIterator"))!==null&&W1!==void 0?W1:"@@asyncIterator";function HC(g,B="sync",Q){if(Q===void 0)if(B==="async"){if(Q=yu(g,v1),Q===void 0){const I=yu(g,Symbol.iterator),x=HC(g,"sync",I);return Lv(x)}}else Q=yu(g,Symbol.iterator);if(Q===void 0)throw new TypeError("The object is not iterable");const S=K(Q,g,[]);if(!n(S))throw new TypeError("The iterator method must return an object");const T=S.next;return{iterator:S,nextMethod:T,done:!1}}function Tv(g){const B=K(g.nextMethod,g.iterator,[]);if(!n(B))throw new TypeError("The iterator.next() method must return an object");return B}function kv(g){return!!g.done}function Uv(g){return g.value}function _v(g){return!(typeof g!="number"||SC(g)||g<0)}function VC(g){const B=XC(g.buffer,g.byteOffset,g.byteOffset+g.byteLength);return new Uint8Array(B)}function F1(g){const B=g._queue.shift();return g._queueTotalSize-=B.size,g._queueTotalSize<0&&(g._queueTotalSize=0),B.value}function y1(g,B,Q){if(!_v(Q)||Q===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");g._queue.push({value:B,size:Q}),g._queueTotalSize+=Q}function Iv(g){return g._queue.peek().value}function yn(g){g._queue=new v,g._queueTotalSize=0}function YC(g){return g===DataView}function Dv(g){return YC(g.constructor)}function Mv(g){return YC(g)?1:g.BYTES_PER_ELEMENT}class fi{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!R1(this))throw X1("view");return this._view}respond(B){if(!R1(this))throw X1("respond");if(ve(B,1,"respond"),B=V(B,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Fn(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");Su(this._associatedReadableByteStreamController,B)}respondWithNewView(B){if(!R1(this))throw X1("respondWithNewView");if(ve(B,1,"respondWithNewView"),!ArrayBuffer.isView(B))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(Fn(B.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");Zu(this._associatedReadableByteStreamController,B)}}Object.defineProperties(fi.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),l(fi.prototype.respond,"respond"),l(fi.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fi.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class Ja{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Qi(this))throw lo("byobRequest");return Z1(this)}get desiredSize(){if(!Qi(this))throw lo("desiredSize");return xC(this)}close(){if(!Qi(this))throw lo("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");const B=this._controlledReadableByteStream._state;if(B!=="readable")throw new TypeError(`The stream (in ${B} state) is not in the readable state and cannot be closed`);io(this)}enqueue(B){if(!Qi(this))throw lo("enqueue");if(ve(B,1,"enqueue"),!ArrayBuffer.isView(B))throw new TypeError("chunk must be an array buffer view");if(B.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(B.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");const Q=this._controlledReadableByteStream._state;if(Q!=="readable")throw new TypeError(`The stream (in ${Q} state) is not in the readable state and cannot be enqueued to`);Gu(this,B)}error(B=void 0){if(!Qi(this))throw lo("error");Mr(this,B)}[G](B){NC(this),yn(this);const Q=this._cancelAlgorithm(B);return Eu(this),Q}[Z](B){const Q=this._controlledReadableByteStream;if(this._queueTotalSize>0){MC(this,B);return}const S=this._autoAllocateChunkSize;if(S!==void 0){let T;try{T=new ArrayBuffer(S)}catch(x){B._errorSteps(x);return}const I={buffer:T,bufferByteLength:S,byteOffset:0,byteLength:S,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(I)}Be(Q,B),Wi(this)}[k](){if(this._pendingPullIntos.length>0){const B=this._pendingPullIntos.peek();B.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(B)}}}Object.defineProperties(Ja.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),l(Ja.prototype.close,"close"),l(Ja.prototype.enqueue,"enqueue"),l(Ja.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ja.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Qi(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_controlledReadableByteStream")?!1:g instanceof Ja}function R1(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_associatedReadableByteStreamController")?!1:g instanceof fi}function Wi(g){if(!zv(g))return;if(g._pulling){g._pullAgain=!0;return}g._pulling=!0;const Q=g._pullAlgorithm();m(Q,()=>(g._pulling=!1,g._pullAgain&&(g._pullAgain=!1,Wi(g)),null),S=>(Mr(g,S),null))}function NC(g){G1(g),g._pendingPullIntos=new v}function E1(g,B){let Q=!1;g._state==="closed"&&(Q=!0);const S=LC(B);B.readerType==="default"?Te(g,S,Q):rF(g,S,Q)}function LC(g){const B=g.bytesFilled,Q=g.elementSize;return new g.viewConstructor(g.buffer,g.byteOffset,B/Q)}function Ru(g,B,Q,S){g._queue.push({buffer:B,byteOffset:Q,byteLength:S}),g._queueTotalSize+=S}function TC(g,B,Q,S){let T;try{T=XC(B,Q,Q+S)}catch(I){throw Mr(g,I),I}Ru(g,T,0,S)}function kC(g,B){B.bytesFilled>0&&TC(g,B.buffer,B.byteOffset,B.bytesFilled),Hl(g)}function UC(g,B){const Q=Math.min(g._queueTotalSize,B.byteLength-B.bytesFilled),S=B.bytesFilled+Q;let T=Q,I=!1;const x=S%B.elementSize,ce=S-x;ce>=B.minimumFill&&(T=ce-B.bytesFilled,I=!0);const Ee=g._queue;for(;T>0;){const we=Ee.peek(),He=Math.min(T,we.byteLength),Ie=B.byteOffset+B.bytesFilled;ZC(B.buffer,Ie,we.buffer,we.byteOffset,He),we.byteLength===He?Ee.shift():(we.byteOffset+=He,we.byteLength-=He),g._queueTotalSize-=He,_C(g,He,B),T-=He}return I}function _C(g,B,Q){Q.bytesFilled+=B}function IC(g){g._queueTotalSize===0&&g._closeRequested?(Eu(g),mo(g._controlledReadableByteStream)):Wi(g)}function G1(g){g._byobRequest!==null&&(g._byobRequest._associatedReadableByteStreamController=void 0,g._byobRequest._view=null,g._byobRequest=null)}function S1(g){for(;g._pendingPullIntos.length>0;){if(g._queueTotalSize===0)return;const B=g._pendingPullIntos.peek();UC(g,B)&&(Hl(g),E1(g._controlledReadableByteStream,B))}}function xv(g){const B=g._controlledReadableByteStream._reader;for(;B._readRequests.length>0;){if(g._queueTotalSize===0)return;const Q=B._readRequests.shift();MC(g,Q)}}function Jv(g,B,Q,S){const T=g._controlledReadableByteStream,I=B.constructor,x=Mv(I),{byteOffset:ce,byteLength:Ee}=B,we=Q*x;let He;try{He=xa(B.buffer)}catch(At){S._errorSteps(At);return}const Ie={buffer:He,bufferByteLength:He.byteLength,byteOffset:ce,byteLength:Ee,bytesFilled:0,minimumFill:we,elementSize:x,viewConstructor:I,readerType:"byob"};if(g._pendingPullIntos.length>0){g._pendingPullIntos.push(Ie),PC(T,S);return}if(T._state==="closed"){const At=new I(Ie.buffer,Ie.byteOffset,0);S._closeSteps(At);return}if(g._queueTotalSize>0){if(UC(g,Ie)){const At=LC(Ie);IC(g),S._chunkSteps(At);return}if(g._closeRequested){const At=new TypeError("Insufficient bytes to fill elements in the given buffer");Mr(g,At),S._errorSteps(At);return}}g._pendingPullIntos.push(Ie),PC(T,S),Wi(g)}function Ov(g,B){B.readerType==="none"&&Hl(g);const Q=g._controlledReadableByteStream;if(H1(Q))for(;zC(Q)>0;){const S=Hl(g);E1(Q,S)}}function Pv(g,B,Q){if(_C(g,B,Q),Q.readerType==="none"){kC(g,Q),S1(g);return}if(Q.bytesFilled<Q.minimumFill)return;Hl(g);const S=Q.bytesFilled%Q.elementSize;if(S>0){const T=Q.byteOffset+Q.bytesFilled;TC(g,Q.buffer,T-S,S)}Q.bytesFilled-=S,E1(g._controlledReadableByteStream,Q),S1(g)}function DC(g,B){const Q=g._pendingPullIntos.peek();G1(g),g._controlledReadableByteStream._state==="closed"?Ov(g,Q):Pv(g,B,Q),Wi(g)}function Hl(g){return g._pendingPullIntos.shift()}function zv(g){const B=g._controlledReadableByteStream;return B._state!=="readable"||g._closeRequested||!g._started?!1:!!(ra(B)&&wt(B)>0||H1(B)&&zC(B)>0||xC(g)>0)}function Eu(g){g._pullAlgorithm=void 0,g._cancelAlgorithm=void 0}function io(g){const B=g._controlledReadableByteStream;if(!(g._closeRequested||B._state!=="readable")){if(g._queueTotalSize>0){g._closeRequested=!0;return}if(g._pendingPullIntos.length>0){const Q=g._pendingPullIntos.peek();if(Q.bytesFilled%Q.elementSize!==0){const S=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Mr(g,S),S}}Eu(g),mo(B)}}function Gu(g,B){const Q=g._controlledReadableByteStream;if(g._closeRequested||Q._state!=="readable")return;const{buffer:S,byteOffset:T,byteLength:I}=B;if(Fn(S))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");const x=xa(S);if(g._pendingPullIntos.length>0){const ce=g._pendingPullIntos.peek();if(Fn(ce.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");G1(g),ce.buffer=xa(ce.buffer),ce.readerType==="none"&&kC(g,ce)}if(ra(Q))if(xv(g),wt(Q)===0)Ru(g,x,T,I);else{g._pendingPullIntos.length>0&&Hl(g);const ce=new Uint8Array(x,T,I);Te(Q,ce,!1)}else H1(Q)?(Ru(g,x,T,I),S1(g)):Ru(g,x,T,I);Wi(g)}function Mr(g,B){const Q=g._controlledReadableByteStream;Q._state==="readable"&&(NC(g),yn(g),Eu(g),b4(Q,B))}function MC(g,B){const Q=g._queue.shift();g._queueTotalSize-=Q.byteLength,IC(g);const S=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);B._chunkSteps(S)}function Z1(g){if(g._byobRequest===null&&g._pendingPullIntos.length>0){const B=g._pendingPullIntos.peek(),Q=new Uint8Array(B.buffer,B.byteOffset+B.bytesFilled,B.byteLength-B.bytesFilled),S=Object.create(fi.prototype);qv(S,g,Q),g._byobRequest=S}return g._byobRequest}function xC(g){const B=g._controlledReadableByteStream._state;return B==="errored"?null:B==="closed"?0:g._strategyHWM-g._queueTotalSize}function Su(g,B){const Q=g._pendingPullIntos.peek();if(g._controlledReadableByteStream._state==="closed"){if(B!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(B===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(Q.bytesFilled+B>Q.byteLength)throw new RangeError("bytesWritten out of range")}Q.buffer=xa(Q.buffer),DC(g,B)}function Zu(g,B){const Q=g._pendingPullIntos.peek();if(g._controlledReadableByteStream._state==="closed"){if(B.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(B.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(Q.byteOffset+Q.bytesFilled!==B.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(Q.bufferByteLength!==B.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(Q.bytesFilled+B.byteLength>Q.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");const T=B.byteLength;Q.buffer=xa(B.buffer),DC(g,T)}function JC(g,B,Q,S,T,I,x){B._controlledReadableByteStream=g,B._pullAgain=!1,B._pulling=!1,B._byobRequest=null,B._queue=B._queueTotalSize=void 0,yn(B),B._closeRequested=!1,B._started=!1,B._strategyHWM=I,B._pullAlgorithm=S,B._cancelAlgorithm=T,B._autoAllocateChunkSize=x,B._pendingPullIntos=new v,g._readableStreamController=B;const ce=Q();m(c(ce),()=>(B._started=!0,Wi(B),null),Ee=>(Mr(B,Ee),null))}function jv(g,B,Q){const S=Object.create(Ja.prototype);let T,I,x;B.start!==void 0?T=()=>B.start(S):T=()=>{},B.pull!==void 0?I=()=>B.pull(S):I=()=>c(void 0),B.cancel!==void 0?x=Ee=>B.cancel(Ee):x=()=>c(void 0);const ce=B.autoAllocateChunkSize;if(ce===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");JC(g,S,T,I,x,Q,ce)}function qv(g,B,Q){g._associatedReadableByteStreamController=B,g._view=Q}function X1(g){return new TypeError(`ReadableStreamBYOBRequest.prototype.${g} can only be used on a ReadableStreamBYOBRequest`)}function lo(g){return new TypeError(`ReadableByteStreamController.prototype.${g} can only be used on a ReadableByteStreamController`)}function $v(g,B){rt(g,B);const Q=g==null?void 0:g.mode;return{mode:Q===void 0?void 0:eF(Q,`${B} has member 'mode' that`)}}function eF(g,B){if(g=`${g}`,g!=="byob")throw new TypeError(`${B} '${g}' is not a valid enumeration value for ReadableStreamReaderMode`);return g}function tF(g,B){var Q;rt(g,B);const S=(Q=g==null?void 0:g.min)!==null&&Q!==void 0?Q:1;return{min:V(S,`${B} has member 'min' that`)}}function OC(g){return new Rn(g)}function PC(g,B){g._reader._readIntoRequests.push(B)}function rF(g,B,Q){const T=g._reader._readIntoRequests.shift();Q?T._closeSteps(B):T._chunkSteps(B)}function zC(g){return g._reader._readIntoRequests.length}function H1(g){const B=g._reader;return!(B===void 0||!vi(B))}class Rn{constructor(B){if(ve(B,1,"ReadableStreamBYOBReader"),q(B,"First parameter"),Sn(B))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Qi(B._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");_(this,B),this._readIntoRequests=new v}get closed(){return vi(this)?this._closedPromise:p(Xu("closed"))}cancel(B=void 0){return vi(this)?this._ownerReadableStream===void 0?p(O("cancel")):U(this,B):p(Xu("cancel"))}read(B,Q={}){if(!vi(this))return p(Xu("read"));if(!ArrayBuffer.isView(B))return p(new TypeError("view must be an array buffer view"));if(B.byteLength===0)return p(new TypeError("view must have non-zero byteLength"));if(B.buffer.byteLength===0)return p(new TypeError("view's buffer must have non-zero byteLength"));if(Fn(B.buffer))return p(new TypeError("view's buffer has been detached"));let S;try{S=tF(Q,"options")}catch(we){return p(we)}const T=S.min;if(T===0)return p(new TypeError("options.min must be greater than 0"));if(Dv(B)){if(T>B.byteLength)return p(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(T>B.length)return p(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return p(O("read from"));let I,x;const ce=u((we,He)=>{I=we,x=He});return jC(this,B,T,{_chunkSteps:we=>I({value:we,done:!1}),_closeSteps:we=>I({value:we,done:!0}),_errorSteps:we=>x(we)}),ce}releaseLock(){if(!vi(this))throw Xu("releaseLock");this._ownerReadableStream!==void 0&&aF(this)}}Object.defineProperties(Rn.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),l(Rn.prototype.cancel,"cancel"),l(Rn.prototype.read,"read"),l(Rn.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Rn.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function vi(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_readIntoRequests")?!1:g instanceof Rn}function jC(g,B,Q,S){const T=g._ownerReadableStream;T._disturbed=!0,T._state==="errored"?S._errorSteps(T._storedError):Jv(T._readableStreamController,B,Q,S)}function aF(g){j(g);const B=new TypeError("Reader was released");qC(g,B)}function qC(g,B){const Q=g._readIntoRequests;g._readIntoRequests=new v,Q.forEach(S=>{S._errorSteps(B)})}function Xu(g){return new TypeError(`ReadableStreamBYOBReader.prototype.${g} can only be used on a ReadableStreamBYOBReader`)}function so(g,B){const{highWaterMark:Q}=g;if(Q===void 0)return B;if(SC(Q)||Q<0)throw new RangeError("Invalid highWaterMark");return Q}function Hu(g){const{size:B}=g;return B||(()=>1)}function Vu(g,B){rt(g,B);const Q=g==null?void 0:g.highWaterMark,S=g==null?void 0:g.size;return{highWaterMark:Q===void 0?void 0:ro(Q),size:S===void 0?void 0:nF(S,`${B} has member 'size' that`)}}function nF(g,B){return je(g,B),Q=>ro(g(Q))}function iF(g,B){rt(g,B);const Q=g==null?void 0:g.abort,S=g==null?void 0:g.close,T=g==null?void 0:g.start,I=g==null?void 0:g.type,x=g==null?void 0:g.write;return{abort:Q===void 0?void 0:lF(Q,g,`${B} has member 'abort' that`),close:S===void 0?void 0:sF(S,g,`${B} has member 'close' that`),start:T===void 0?void 0:oF(T,g,`${B} has member 'start' that`),write:x===void 0?void 0:dF(x,g,`${B} has member 'write' that`),type:I}}function lF(g,B,Q){return je(g,Q),S=>W(g,B,[S])}function sF(g,B,Q){return je(g,Q),()=>W(g,B,[])}function oF(g,B,Q){return je(g,Q),S=>K(g,B,[S])}function dF(g,B,Q){return je(g,Q),(S,T)=>W(g,B,[S,T])}function $C(g,B){if(!Vl(g))throw new TypeError(`${B} is not a WritableStream.`)}function uF(g){if(typeof g!="object"||g===null)return!1;try{return typeof g.aborted=="boolean"}catch{return!1}}const pF=typeof AbortController=="function";function cF(){if(pF)return new AbortController}class En{constructor(B={},Q={}){B===void 0?B=null:at(B,"First parameter");const S=Vu(Q,"Second parameter"),T=iF(B,"First parameter");if(t4(this),T.type!==void 0)throw new RangeError("Invalid type is specified");const x=Hu(S),ce=so(S,1);FF(this,T,ce,x)}get locked(){if(!Vl(this))throw ku("locked");return Yl(this)}abort(B=void 0){return Vl(this)?Yl(this)?p(new TypeError("Cannot abort a stream that already has a writer")):Yu(this,B):p(ku("abort"))}close(){return Vl(this)?Yl(this)?p(new TypeError("Cannot close a stream that already has a writer")):Qa(this)?p(new TypeError("Cannot close an already-closing stream")):r4(this):p(ku("close"))}getWriter(){if(!Vl(this))throw ku("getWriter");return e4(this)}}Object.defineProperties(En.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),l(En.prototype.abort,"abort"),l(En.prototype.close,"close"),l(En.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(En.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function e4(g){return new Oa(g)}function mF(g,B,Q,S,T=1,I=()=>1){const x=Object.create(En.prototype);t4(x);const ce=Object.create(Nl.prototype);return o4(x,ce,g,B,Q,S,T,I),x}function t4(g){g._state="writable",g._storedError=void 0,g._writer=void 0,g._writableStreamController=void 0,g._writeRequests=new v,g._inFlightWriteRequest=void 0,g._closeRequest=void 0,g._inFlightCloseRequest=void 0,g._pendingAbortRequest=void 0,g._backpressure=!1}function Vl(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_writableStreamController")?!1:g instanceof En}function Yl(g){return g._writer!==void 0}function Yu(g,B){var Q;if(g._state==="closed"||g._state==="errored")return c(void 0);g._writableStreamController._abortReason=B,(Q=g._writableStreamController._abortController)===null||Q===void 0||Q.abort(B);const S=g._state;if(S==="closed"||S==="errored")return c(void 0);if(g._pendingAbortRequest!==void 0)return g._pendingAbortRequest._promise;let T=!1;S==="erroring"&&(T=!0,B=void 0);const I=u((x,ce)=>{g._pendingAbortRequest={_promise:void 0,_resolve:x,_reject:ce,_reason:B,_wasAlreadyErroring:T}});return g._pendingAbortRequest._promise=I,T||Y1(g,B),I}function r4(g){const B=g._state;if(B==="closed"||B==="errored")return p(new TypeError(`The stream (in ${B} state) is not in the writable state and cannot be closed`));const Q=u((T,I)=>{const x={_resolve:T,_reject:I};g._closeRequest=x}),S=g._writer;return S!==void 0&&g._backpressure&&B==="writable"&&D1(S),yF(g._writableStreamController),Q}function gF(g){return u((Q,S)=>{const T={_resolve:Q,_reject:S};g._writeRequests.push(T)})}function V1(g,B){if(g._state==="writable"){Y1(g,B);return}N1(g)}function Y1(g,B){const Q=g._writableStreamController;g._state="erroring",g._storedError=B;const S=g._writer;S!==void 0&&n4(S,B),!wF(g)&&Q._started&&N1(g)}function N1(g){g._state="errored",g._writableStreamController[y]();const B=g._storedError;if(g._writeRequests.forEach(T=>{T._reject(B)}),g._writeRequests=new v,g._pendingAbortRequest===void 0){Nu(g);return}const Q=g._pendingAbortRequest;if(g._pendingAbortRequest=void 0,Q._wasAlreadyErroring){Q._reject(B),Nu(g);return}const S=g._writableStreamController[L](Q._reason);m(S,()=>(Q._resolve(),Nu(g),null),T=>(Q._reject(T),Nu(g),null))}function AF(g){g._inFlightWriteRequest._resolve(void 0),g._inFlightWriteRequest=void 0}function hF(g,B){g._inFlightWriteRequest._reject(B),g._inFlightWriteRequest=void 0,V1(g,B)}function BF(g){g._inFlightCloseRequest._resolve(void 0),g._inFlightCloseRequest=void 0,g._state==="erroring"&&(g._storedError=void 0,g._pendingAbortRequest!==void 0&&(g._pendingAbortRequest._resolve(),g._pendingAbortRequest=void 0)),g._state="closed";const Q=g._writer;Q!==void 0&&c4(Q)}function CF(g,B){g._inFlightCloseRequest._reject(B),g._inFlightCloseRequest=void 0,g._pendingAbortRequest!==void 0&&(g._pendingAbortRequest._reject(B),g._pendingAbortRequest=void 0),V1(g,B)}function Qa(g){return!(g._closeRequest===void 0&&g._inFlightCloseRequest===void 0)}function wF(g){return!(g._inFlightWriteRequest===void 0&&g._inFlightCloseRequest===void 0)}function bF(g){g._inFlightCloseRequest=g._closeRequest,g._closeRequest=void 0}function KF(g){g._inFlightWriteRequest=g._writeRequests.shift()}function Nu(g){g._closeRequest!==void 0&&(g._closeRequest._reject(g._storedError),g._closeRequest=void 0);const B=g._writer;B!==void 0&&_1(B,g._storedError)}function L1(g,B){const Q=g._writer;Q!==void 0&&B!==g._backpressure&&(B?HF(Q):D1(Q)),g._backpressure=B}class Oa{constructor(B){if(ve(B,1,"WritableStreamDefaultWriter"),$C(B,"First parameter"),Yl(B))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=B,B._writer=this;const Q=B._state;if(Q==="writable")!Qa(B)&&B._backpressure?_u(this):m4(this),Uu(this);else if(Q==="erroring")I1(this,B._storedError),Uu(this);else if(Q==="closed")m4(this),ZF(this);else{const S=B._storedError;I1(this,S),p4(this,S)}}get closed(){return Fi(this)?this._closedPromise:p(yi("closed"))}get desiredSize(){if(!Fi(this))throw yi("desiredSize");if(this._ownerWritableStream===void 0)throw uo("desiredSize");return vF(this)}get ready(){return Fi(this)?this._readyPromise:p(yi("ready"))}abort(B=void 0){return Fi(this)?this._ownerWritableStream===void 0?p(uo("abort")):fF(this,B):p(yi("abort"))}close(){if(!Fi(this))return p(yi("close"));const B=this._ownerWritableStream;return B===void 0?p(uo("close")):Qa(B)?p(new TypeError("Cannot close an already-closing stream")):a4(this)}releaseLock(){if(!Fi(this))throw yi("releaseLock");this._ownerWritableStream!==void 0&&i4(this)}write(B=void 0){return Fi(this)?this._ownerWritableStream===void 0?p(uo("write to")):l4(this,B):p(yi("write"))}}Object.defineProperties(Oa.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),l(Oa.prototype.abort,"abort"),l(Oa.prototype.close,"close"),l(Oa.prototype.releaseLock,"releaseLock"),l(Oa.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Oa.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Fi(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_ownerWritableStream")?!1:g instanceof Oa}function fF(g,B){const Q=g._ownerWritableStream;return Yu(Q,B)}function a4(g){const B=g._ownerWritableStream;return r4(B)}function QF(g){const B=g._ownerWritableStream,Q=B._state;return Qa(B)||Q==="closed"?c(void 0):Q==="errored"?p(B._storedError):a4(g)}function WF(g,B){g._closedPromiseState==="pending"?_1(g,B):XF(g,B)}function n4(g,B){g._readyPromiseState==="pending"?g4(g,B):VF(g,B)}function vF(g){const B=g._ownerWritableStream,Q=B._state;return Q==="errored"||Q==="erroring"?null:Q==="closed"?0:d4(B._writableStreamController)}function i4(g){const B=g._ownerWritableStream,Q=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");n4(g,Q),WF(g,Q),B._writer=void 0,g._ownerWritableStream=void 0}function l4(g,B){const Q=g._ownerWritableStream,S=Q._writableStreamController,T=RF(S,B);if(Q!==g._ownerWritableStream)return p(uo("write to"));const I=Q._state;if(I==="errored")return p(Q._storedError);if(Qa(Q)||I==="closed")return p(new TypeError("The stream is closing or closed and cannot be written to"));if(I==="erroring")return p(Q._storedError);const x=gF(Q);return EF(S,B,T),x}const s4={};class Nl{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!T1(this))throw U1("abortReason");return this._abortReason}get signal(){if(!T1(this))throw U1("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(B=void 0){if(!T1(this))throw U1("error");this._controlledWritableStream._state==="writable"&&u4(this,B)}[L](B){const Q=this._abortAlgorithm(B);return Lu(this),Q}[y](){yn(this)}}Object.defineProperties(Nl.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Nl.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function T1(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_controlledWritableStream")?!1:g instanceof Nl}function o4(g,B,Q,S,T,I,x,ce){B._controlledWritableStream=g,g._writableStreamController=B,B._queue=void 0,B._queueTotalSize=void 0,yn(B),B._abortReason=void 0,B._abortController=cF(),B._started=!1,B._strategySizeAlgorithm=ce,B._strategyHWM=x,B._writeAlgorithm=S,B._closeAlgorithm=T,B._abortAlgorithm=I;const Ee=k1(B);L1(g,Ee);const we=Q(),He=c(we);m(He,()=>(B._started=!0,Tu(B),null),Ie=>(B._started=!0,V1(g,Ie),null))}function FF(g,B,Q,S){const T=Object.create(Nl.prototype);let I,x,ce,Ee;B.start!==void 0?I=()=>B.start(T):I=()=>{},B.write!==void 0?x=we=>B.write(we,T):x=()=>c(void 0),B.close!==void 0?ce=()=>B.close():ce=()=>c(void 0),B.abort!==void 0?Ee=we=>B.abort(we):Ee=()=>c(void 0),o4(g,T,I,x,ce,Ee,Q,S)}function Lu(g){g._writeAlgorithm=void 0,g._closeAlgorithm=void 0,g._abortAlgorithm=void 0,g._strategySizeAlgorithm=void 0}function yF(g){y1(g,s4,0),Tu(g)}function RF(g,B){try{return g._strategySizeAlgorithm(B)}catch(Q){return oo(g,Q),1}}function d4(g){return g._strategyHWM-g._queueTotalSize}function EF(g,B,Q){try{y1(g,B,Q)}catch(T){oo(g,T);return}const S=g._controlledWritableStream;if(!Qa(S)&&S._state==="writable"){const T=k1(g);L1(S,T)}Tu(g)}function Tu(g){const B=g._controlledWritableStream;if(!g._started||B._inFlightWriteRequest!==void 0)return;if(B._state==="erroring"){N1(B);return}if(g._queue.length===0)return;const S=Iv(g);S===s4?GF(g):SF(g,S)}function oo(g,B){g._controlledWritableStream._state==="writable"&&u4(g,B)}function GF(g){const B=g._controlledWritableStream;bF(B),F1(g);const Q=g._closeAlgorithm();Lu(g),m(Q,()=>(BF(B),null),S=>(CF(B,S),null))}function SF(g,B){const Q=g._controlledWritableStream;KF(Q);const S=g._writeAlgorithm(B);m(S,()=>{AF(Q);const T=Q._state;if(F1(g),!Qa(Q)&&T==="writable"){const I=k1(g);L1(Q,I)}return Tu(g),null},T=>(Q._state==="writable"&&Lu(g),hF(Q,T),null))}function k1(g){return d4(g)<=0}function u4(g,B){const Q=g._controlledWritableStream;Lu(g),Y1(Q,B)}function ku(g){return new TypeError(`WritableStream.prototype.${g} can only be used on a WritableStream`)}function U1(g){return new TypeError(`WritableStreamDefaultController.prototype.${g} can only be used on a WritableStreamDefaultController`)}function yi(g){return new TypeError(`WritableStreamDefaultWriter.prototype.${g} can only be used on a WritableStreamDefaultWriter`)}function uo(g){return new TypeError("Cannot "+g+" a stream using a released writer")}function Uu(g){g._closedPromise=u((B,Q)=>{g._closedPromise_resolve=B,g._closedPromise_reject=Q,g._closedPromiseState="pending"})}function p4(g,B){Uu(g),_1(g,B)}function ZF(g){Uu(g),c4(g)}function _1(g,B){g._closedPromise_reject!==void 0&&(b(g._closedPromise),g._closedPromise_reject(B),g._closedPromise_resolve=void 0,g._closedPromise_reject=void 0,g._closedPromiseState="rejected")}function XF(g,B){p4(g,B)}function c4(g){g._closedPromise_resolve!==void 0&&(g._closedPromise_resolve(void 0),g._closedPromise_resolve=void 0,g._closedPromise_reject=void 0,g._closedPromiseState="resolved")}function _u(g){g._readyPromise=u((B,Q)=>{g._readyPromise_resolve=B,g._readyPromise_reject=Q}),g._readyPromiseState="pending"}function I1(g,B){_u(g),g4(g,B)}function m4(g){_u(g),D1(g)}function g4(g,B){g._readyPromise_reject!==void 0&&(b(g._readyPromise),g._readyPromise_reject(B),g._readyPromise_resolve=void 0,g._readyPromise_reject=void 0,g._readyPromiseState="rejected")}function HF(g){_u(g)}function VF(g,B){I1(g,B)}function D1(g){g._readyPromise_resolve!==void 0&&(g._readyPromise_resolve(void 0),g._readyPromise_resolve=void 0,g._readyPromise_reject=void 0,g._readyPromiseState="fulfilled")}function YF(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}const M1=YF();function NF(g){if(!(typeof g=="function"||typeof g=="object")||g.name!=="DOMException")return!1;try{return new g,!0}catch{return!1}}function LF(){const g=M1==null?void 0:M1.DOMException;return NF(g)?g:void 0}function TF(){const g=function(Q,S){this.message=Q||"",this.name=S||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return l(g,"DOMException"),g.prototype=Object.create(Error.prototype),Object.defineProperty(g.prototype,"constructor",{value:g,writable:!0,configurable:!0}),g}const kF=LF()||TF();function A4(g,B,Q,S,T,I){const x=$(g),ce=e4(B);g._disturbed=!0;let Ee=!1,we=c(void 0);return u((He,Ie)=>{let At;if(I!==void 0){if(At=()=>{const fe=I.reason!==void 0?I.reason:new kF("Aborted","AbortError"),Me=[];S||Me.push(()=>B._state==="writable"?Yu(B,fe):c(void 0)),T||Me.push(()=>g._state==="readable"?ia(g,fe):c(void 0)),Sr(()=>Promise.all(Me.map(Ct=>Ct())),!0,fe)},I.aborted){At();return}I.addEventListener("abort",At)}function la(){return u((fe,Me)=>{function Ct(Lr){Lr?fe():A(Ul(),Ct,Me)}Ct(!1)})}function Ul(){return Ee?c(!0):A(ce._readyPromise,()=>u((fe,Me)=>{ao(x,{_chunkSteps:Ct=>{we=A(l4(ce,Ct),void 0,a),fe(!1)},_closeSteps:()=>fe(!0),_errorSteps:Me})}))}if(za(g,x._closedPromise,fe=>(S?xr(!0,fe):Sr(()=>Yu(B,fe),!0,fe),null)),za(B,ce._closedPromise,fe=>(T?xr(!0,fe):Sr(()=>ia(g,fe),!0,fe),null)),Kr(g,x._closedPromise,()=>(Q?xr():Sr(()=>QF(ce)),null)),Qa(B)||B._state==="closed"){const fe=new TypeError("the destination writable stream closed before all data could be piped to it");T?xr(!0,fe):Sr(()=>ia(g,fe),!0,fe)}b(la());function Xn(){const fe=we;return A(we,()=>fe!==we?Xn():void 0)}function za(fe,Me,Ct){fe._state==="errored"?Ct(fe._storedError):C(Me,Ct)}function Kr(fe,Me,Ct){fe._state==="closed"?Ct():h(Me,Ct)}function Sr(fe,Me,Ct){if(Ee)return;Ee=!0,B._state==="writable"&&!Qa(B)?h(Xn(),Lr):Lr();function Lr(){return m(fe(),()=>ja(Me,Ct),_l=>ja(!0,_l)),null}}function xr(fe,Me){Ee||(Ee=!0,B._state==="writable"&&!Qa(B)?h(Xn(),()=>ja(fe,Me)):ja(fe,Me))}function ja(fe,Me){return i4(ce),j(x),I!==void 0&&I.removeEventListener("abort",At),fe?Ie(Me):He(void 0),null}})}class Pa{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Iu(this))throw Mu("desiredSize");return x1(this)}close(){if(!Iu(this))throw Mu("close");if(!Tl(this))throw new TypeError("The stream is not in a state that permits close");Ri(this)}enqueue(B=void 0){if(!Iu(this))throw Mu("enqueue");if(!Tl(this))throw new TypeError("The stream is not in a state that permits enqueue");return Ll(this,B)}error(B=void 0){if(!Iu(this))throw Mu("error");na(this,B)}[G](B){yn(this);const Q=this._cancelAlgorithm(B);return Du(this),Q}[Z](B){const Q=this._controlledReadableStream;if(this._queue.length>0){const S=F1(this);this._closeRequested&&this._queue.length===0?(Du(this),mo(Q)):po(this),B._chunkSteps(S)}else Be(Q,B),po(this)}[k](){}}Object.defineProperties(Pa.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),l(Pa.prototype.close,"close"),l(Pa.prototype.enqueue,"enqueue"),l(Pa.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Pa.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function Iu(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_controlledReadableStream")?!1:g instanceof Pa}function po(g){if(!h4(g))return;if(g._pulling){g._pullAgain=!0;return}g._pulling=!0;const Q=g._pullAlgorithm();m(Q,()=>(g._pulling=!1,g._pullAgain&&(g._pullAgain=!1,po(g)),null),S=>(na(g,S),null))}function h4(g){const B=g._controlledReadableStream;return!Tl(g)||!g._started?!1:!!(Sn(B)&&wt(B)>0||x1(g)>0)}function Du(g){g._pullAlgorithm=void 0,g._cancelAlgorithm=void 0,g._strategySizeAlgorithm=void 0}function Ri(g){if(!Tl(g))return;const B=g._controlledReadableStream;g._closeRequested=!0,g._queue.length===0&&(Du(g),mo(B))}function Ll(g,B){if(!Tl(g))return;const Q=g._controlledReadableStream;if(Sn(Q)&&wt(Q)>0)Te(Q,B,!1);else{let S;try{S=g._strategySizeAlgorithm(B)}catch(T){throw na(g,T),T}try{y1(g,B,S)}catch(T){throw na(g,T),T}}po(g)}function na(g,B){const Q=g._controlledReadableStream;Q._state==="readable"&&(yn(g),Du(g),b4(Q,B))}function x1(g){const B=g._controlledReadableStream._state;return B==="errored"?null:B==="closed"?0:g._strategyHWM-g._queueTotalSize}function UF(g){return!h4(g)}function Tl(g){const B=g._controlledReadableStream._state;return!g._closeRequested&&B==="readable"}function B4(g,B,Q,S,T,I,x){B._controlledReadableStream=g,B._queue=void 0,B._queueTotalSize=void 0,yn(B),B._started=!1,B._closeRequested=!1,B._pullAgain=!1,B._pulling=!1,B._strategySizeAlgorithm=x,B._strategyHWM=I,B._pullAlgorithm=S,B._cancelAlgorithm=T,g._readableStreamController=B;const ce=Q();m(c(ce),()=>(B._started=!0,po(B),null),Ee=>(na(B,Ee),null))}function _F(g,B,Q,S){const T=Object.create(Pa.prototype);let I,x,ce;B.start!==void 0?I=()=>B.start(T):I=()=>{},B.pull!==void 0?x=()=>B.pull(T):x=()=>c(void 0),B.cancel!==void 0?ce=Ee=>B.cancel(Ee):ce=()=>c(void 0),B4(g,T,I,x,ce,Q,S)}function Mu(g){return new TypeError(`ReadableStreamDefaultController.prototype.${g} can only be used on a ReadableStreamDefaultController`)}function IF(g,B){return Qi(g._readableStreamController)?MF(g):DF(g)}function DF(g,B){const Q=$(g);let S=!1,T=!1,I=!1,x=!1,ce,Ee,we,He,Ie;const At=u(Kr=>{Ie=Kr});function la(){return S?(T=!0,c(void 0)):(S=!0,ao(Q,{_chunkSteps:Sr=>{f(()=>{T=!1;const xr=Sr,ja=Sr;I||Ll(we._readableStreamController,xr),x||Ll(He._readableStreamController,ja),S=!1,T&&la()})},_closeSteps:()=>{S=!1,I||Ri(we._readableStreamController),x||Ri(He._readableStreamController),(!I||!x)&&Ie(void 0)},_errorSteps:()=>{S=!1}}),c(void 0))}function Ul(Kr){if(I=!0,ce=Kr,x){const Sr=no([ce,Ee]),xr=ia(g,Sr);Ie(xr)}return At}function Xn(Kr){if(x=!0,Ee=Kr,I){const Sr=no([ce,Ee]),xr=ia(g,Sr);Ie(xr)}return At}function za(){}return we=co(za,la,Ul),He=co(za,la,Xn),C(Q._closedPromise,Kr=>(na(we._readableStreamController,Kr),na(He._readableStreamController,Kr),(!I||!x)&&Ie(void 0),null)),[we,He]}function MF(g){let B=$(g),Q=!1,S=!1,T=!1,I=!1,x=!1,ce,Ee,we,He,Ie;const At=u(fe=>{Ie=fe});function la(fe){C(fe._closedPromise,Me=>(fe!==B||(Mr(we._readableStreamController,Me),Mr(He._readableStreamController,Me),(!I||!x)&&Ie(void 0)),null))}function Ul(){vi(B)&&(j(B),B=$(g),la(B)),ao(B,{_chunkSteps:Me=>{f(()=>{S=!1,T=!1;const Ct=Me;let Lr=Me;if(!I&&!x)try{Lr=VC(Me)}catch(_l){Mr(we._readableStreamController,_l),Mr(He._readableStreamController,_l),Ie(ia(g,_l));return}I||Gu(we._readableStreamController,Ct),x||Gu(He._readableStreamController,Lr),Q=!1,S?za():T&&Kr()})},_closeSteps:()=>{Q=!1,I||io(we._readableStreamController),x||io(He._readableStreamController),we._readableStreamController._pendingPullIntos.length>0&&Su(we._readableStreamController,0),He._readableStreamController._pendingPullIntos.length>0&&Su(He._readableStreamController,0),(!I||!x)&&Ie(void 0)},_errorSteps:()=>{Q=!1}})}function Xn(fe,Me){aa(B)&&(j(B),B=OC(g),la(B));const Ct=Me?He:we,Lr=Me?we:He;jC(B,fe,1,{_chunkSteps:Il=>{f(()=>{S=!1,T=!1;const Dl=Me?x:I;if(Me?I:x)Dl||Zu(Ct._readableStreamController,Il);else{let X4;try{X4=VC(Il)}catch(j1){Mr(Ct._readableStreamController,j1),Mr(Lr._readableStreamController,j1),Ie(ia(g,j1));return}Dl||Zu(Ct._readableStreamController,Il),Gu(Lr._readableStreamController,X4)}Q=!1,S?za():T&&Kr()})},_closeSteps:Il=>{Q=!1;const Dl=Me?x:I,$u=Me?I:x;Dl||io(Ct._readableStreamController),$u||io(Lr._readableStreamController),Il!==void 0&&(Dl||Zu(Ct._readableStreamController,Il),!$u&&Lr._readableStreamController._pendingPullIntos.length>0&&Su(Lr._readableStreamController,0)),(!Dl||!$u)&&Ie(void 0)},_errorSteps:()=>{Q=!1}})}function za(){if(Q)return S=!0,c(void 0);Q=!0;const fe=Z1(we._readableStreamController);return fe===null?Ul():Xn(fe._view,!1),c(void 0)}function Kr(){if(Q)return T=!0,c(void 0);Q=!0;const fe=Z1(He._readableStreamController);return fe===null?Ul():Xn(fe._view,!0),c(void 0)}function Sr(fe){if(I=!0,ce=fe,x){const Me=no([ce,Ee]),Ct=ia(g,Me);Ie(Ct)}return At}function xr(fe){if(x=!0,Ee=fe,I){const Me=no([ce,Ee]),Ct=ia(g,Me);Ie(Ct)}return At}function ja(){}return we=w4(ja,za,Sr),He=w4(ja,Kr,xr),la(B),[we,He]}function xF(g){return n(g)&&typeof g.getReader<"u"}function JF(g){return xF(g)?PF(g.getReader()):OF(g)}function OF(g){let B;const Q=HC(g,"async"),S=a;function T(){let x;try{x=Tv(Q)}catch(Ee){return p(Ee)}const ce=c(x);return w(ce,Ee=>{if(!n(Ee))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(kv(Ee))Ri(B._readableStreamController);else{const He=Uv(Ee);Ll(B._readableStreamController,He)}})}function I(x){const ce=Q.iterator;let Ee;try{Ee=yu(ce,"return")}catch(Ie){return p(Ie)}if(Ee===void 0)return c(void 0);let we;try{we=K(Ee,ce,[x])}catch(Ie){return p(Ie)}const He=c(we);return w(He,Ie=>{if(!n(Ie))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return B=co(S,T,I,0),B}function PF(g){let B;const Q=a;function S(){let I;try{I=g.read()}catch(x){return p(x)}return w(I,x=>{if(!n(x))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(x.done)Ri(B._readableStreamController);else{const ce=x.value;Ll(B._readableStreamController,ce)}})}function T(I){try{return c(g.cancel(I))}catch(x){return p(x)}}return B=co(Q,S,T,0),B}function zF(g,B){rt(g,B);const Q=g,S=Q==null?void 0:Q.autoAllocateChunkSize,T=Q==null?void 0:Q.cancel,I=Q==null?void 0:Q.pull,x=Q==null?void 0:Q.start,ce=Q==null?void 0:Q.type;return{autoAllocateChunkSize:S===void 0?void 0:V(S,`${B} has member 'autoAllocateChunkSize' that`),cancel:T===void 0?void 0:jF(T,Q,`${B} has member 'cancel' that`),pull:I===void 0?void 0:qF(I,Q,`${B} has member 'pull' that`),start:x===void 0?void 0:$F(x,Q,`${B} has member 'start' that`),type:ce===void 0?void 0:e5(ce,`${B} has member 'type' that`)}}function jF(g,B,Q){return je(g,Q),S=>W(g,B,[S])}function qF(g,B,Q){return je(g,Q),S=>W(g,B,[S])}function $F(g,B,Q){return je(g,Q),S=>K(g,B,[S])}function e5(g,B){if(g=`${g}`,g!=="bytes")throw new TypeError(`${B} '${g}' is not a valid enumeration value for ReadableStreamType`);return g}function t5(g,B){return rt(g,B),{preventCancel:!!(g==null?void 0:g.preventCancel)}}function C4(g,B){rt(g,B);const Q=g==null?void 0:g.preventAbort,S=g==null?void 0:g.preventCancel,T=g==null?void 0:g.preventClose,I=g==null?void 0:g.signal;return I!==void 0&&r5(I,`${B} has member 'signal' that`),{preventAbort:!!Q,preventCancel:!!S,preventClose:!!T,signal:I}}function r5(g,B){if(!uF(g))throw new TypeError(`${B} is not an AbortSignal.`)}function a5(g,B){rt(g,B);const Q=g==null?void 0:g.readable;to(Q,"readable","ReadableWritablePair"),q(Q,`${B} has member 'readable' that`);const S=g==null?void 0:g.writable;return to(S,"writable","ReadableWritablePair"),$C(S,`${B} has member 'writable' that`),{readable:Q,writable:S}}class ur{constructor(B={},Q={}){B===void 0?B=null:at(B,"First parameter");const S=Vu(Q,"Second parameter"),T=zF(B,"First parameter");if(J1(this),T.type==="bytes"){if(S.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");const I=so(S,0);jv(this,T,I)}else{const I=Hu(S),x=so(S,1);_F(this,T,x,I)}}get locked(){if(!Gn(this))throw Ei("locked");return Sn(this)}cancel(B=void 0){return Gn(this)?Sn(this)?p(new TypeError("Cannot cancel a stream that already has a reader")):ia(this,B):p(Ei("cancel"))}getReader(B=void 0){if(!Gn(this))throw Ei("getReader");return $v(B,"First parameter").mode===void 0?$(this):OC(this)}pipeThrough(B,Q={}){if(!Gn(this))throw Ei("pipeThrough");ve(B,1,"pipeThrough");const S=a5(B,"First parameter"),T=C4(Q,"Second parameter");if(Sn(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(Yl(S.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");const I=A4(this,S.writable,T.preventClose,T.preventAbort,T.preventCancel,T.signal);return b(I),S.readable}pipeTo(B,Q={}){if(!Gn(this))return p(Ei("pipeTo"));if(B===void 0)return p("Parameter 1 is required in 'pipeTo'.");if(!Vl(B))return p(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let S;try{S=C4(Q,"Second parameter")}catch(T){return p(T)}return Sn(this)?p(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):Yl(B)?p(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):A4(this,B,S.preventClose,S.preventAbort,S.preventCancel,S.signal)}tee(){if(!Gn(this))throw Ei("tee");const B=IF(this);return no(B)}values(B=void 0){if(!Gn(this))throw Ei("values");const Q=t5(B,"First parameter");return Nv(this,Q.preventCancel)}[v1](B){return this.values(B)}static from(B){return JF(B)}}Object.defineProperties(ur,{from:{enumerable:!0}}),Object.defineProperties(ur.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),l(ur.from,"from"),l(ur.prototype.cancel,"cancel"),l(ur.prototype.getReader,"getReader"),l(ur.prototype.pipeThrough,"pipeThrough"),l(ur.prototype.pipeTo,"pipeTo"),l(ur.prototype.tee,"tee"),l(ur.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ur.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(ur.prototype,v1,{value:ur.prototype.values,writable:!0,configurable:!0});function co(g,B,Q,S=1,T=()=>1){const I=Object.create(ur.prototype);J1(I);const x=Object.create(Pa.prototype);return B4(I,x,g,B,Q,S,T),I}function w4(g,B,Q){const S=Object.create(ur.prototype);J1(S);const T=Object.create(Ja.prototype);return JC(S,T,g,B,Q,0,void 0),S}function J1(g){g._state="readable",g._reader=void 0,g._storedError=void 0,g._disturbed=!1}function Gn(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_readableStreamController")?!1:g instanceof ur}function Sn(g){return g._reader!==void 0}function ia(g,B){if(g._disturbed=!0,g._state==="closed")return c(void 0);if(g._state==="errored")return p(g._storedError);mo(g);const Q=g._reader;if(Q!==void 0&&vi(Q)){const T=Q._readIntoRequests;Q._readIntoRequests=new v,T.forEach(I=>{I._closeSteps(void 0)})}const S=g._readableStreamController[G](B);return w(S,a)}function mo(g){g._state="closed";const B=g._reader;if(B!==void 0&&(Vt(B),aa(B))){const Q=B._readRequests;B._readRequests=new v,Q.forEach(S=>{S._closeSteps()})}}function b4(g,B){g._state="errored",g._storedError=B;const Q=g._reader;Q!==void 0&&(he(Q,B),aa(Q)?FC(Q,B):qC(Q,B))}function Ei(g){return new TypeError(`ReadableStream.prototype.${g} can only be used on a ReadableStream`)}function K4(g,B){rt(g,B);const Q=g==null?void 0:g.highWaterMark;return to(Q,"highWaterMark","QueuingStrategyInit"),{highWaterMark:ro(Q)}}const f4=g=>g.byteLength;l(f4,"size");class xu{constructor(B){ve(B,1,"ByteLengthQueuingStrategy"),B=K4(B,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=B.highWaterMark}get highWaterMark(){if(!W4(this))throw Q4("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!W4(this))throw Q4("size");return f4}}Object.defineProperties(xu.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(xu.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function Q4(g){return new TypeError(`ByteLengthQueuingStrategy.prototype.${g} can only be used on a ByteLengthQueuingStrategy`)}function W4(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_byteLengthQueuingStrategyHighWaterMark")?!1:g instanceof xu}const v4=()=>1;l(v4,"size");class Ju{constructor(B){ve(B,1,"CountQueuingStrategy"),B=K4(B,"First parameter"),this._countQueuingStrategyHighWaterMark=B.highWaterMark}get highWaterMark(){if(!y4(this))throw F4("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!y4(this))throw F4("size");return v4}}Object.defineProperties(Ju.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ju.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function F4(g){return new TypeError(`CountQueuingStrategy.prototype.${g} can only be used on a CountQueuingStrategy`)}function y4(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_countQueuingStrategyHighWaterMark")?!1:g instanceof Ju}function n5(g,B){rt(g,B);const Q=g==null?void 0:g.cancel,S=g==null?void 0:g.flush,T=g==null?void 0:g.readableType,I=g==null?void 0:g.start,x=g==null?void 0:g.transform,ce=g==null?void 0:g.writableType;return{cancel:Q===void 0?void 0:o5(Q,g,`${B} has member 'cancel' that`),flush:S===void 0?void 0:i5(S,g,`${B} has member 'flush' that`),readableType:T,start:I===void 0?void 0:l5(I,g,`${B} has member 'start' that`),transform:x===void 0?void 0:s5(x,g,`${B} has member 'transform' that`),writableType:ce}}function i5(g,B,Q){return je(g,Q),S=>W(g,B,[S])}function l5(g,B,Q){return je(g,Q),S=>K(g,B,[S])}function s5(g,B,Q){return je(g,Q),(S,T)=>W(g,B,[S,T])}function o5(g,B,Q){return je(g,Q),S=>W(g,B,[S])}class Ou{constructor(B={},Q={},S={}){B===void 0&&(B=null);const T=Vu(Q,"Second parameter"),I=Vu(S,"Third parameter"),x=n5(B,"First parameter");if(x.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(x.writableType!==void 0)throw new RangeError("Invalid writableType specified");const ce=so(I,0),Ee=Hu(I),we=so(T,1),He=Hu(T);let Ie;const At=u(la=>{Ie=la});d5(this,At,we,He,ce,Ee),p5(this,x),x.start!==void 0?Ie(x.start(this._transformStreamController)):Ie(void 0)}get readable(){if(!R4(this))throw Z4("readable");return this._readable}get writable(){if(!R4(this))throw Z4("writable");return this._writable}}Object.defineProperties(Ou.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ou.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function d5(g,B,Q,S,T,I){function x(){return B}function ce(At){return g5(g,At)}function Ee(At){return A5(g,At)}function we(){return h5(g)}g._writable=mF(x,ce,we,Ee,Q,S);function He(){return B5(g)}function Ie(At){return C5(g,At)}g._readable=co(x,He,Ie,T,I),g._backpressure=void 0,g._backpressureChangePromise=void 0,g._backpressureChangePromise_resolve=void 0,Pu(g,!0),g._transformStreamController=void 0}function R4(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_transformStreamController")?!1:g instanceof Ou}function E4(g,B){na(g._readable._readableStreamController,B),O1(g,B)}function O1(g,B){ju(g._transformStreamController),oo(g._writable._writableStreamController,B),P1(g)}function P1(g){g._backpressure&&Pu(g,!1)}function Pu(g,B){g._backpressureChangePromise!==void 0&&g._backpressureChangePromise_resolve(),g._backpressureChangePromise=u(Q=>{g._backpressureChangePromise_resolve=Q}),g._backpressure=B}class Zn{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!zu(this))throw qu("desiredSize");const B=this._controlledTransformStream._readable._readableStreamController;return x1(B)}enqueue(B=void 0){if(!zu(this))throw qu("enqueue");G4(this,B)}error(B=void 0){if(!zu(this))throw qu("error");c5(this,B)}terminate(){if(!zu(this))throw qu("terminate");m5(this)}}Object.defineProperties(Zn.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),l(Zn.prototype.enqueue,"enqueue"),l(Zn.prototype.error,"error"),l(Zn.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Zn.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function zu(g){return!n(g)||!Object.prototype.hasOwnProperty.call(g,"_controlledTransformStream")?!1:g instanceof Zn}function u5(g,B,Q,S,T){B._controlledTransformStream=g,g._transformStreamController=B,B._transformAlgorithm=Q,B._flushAlgorithm=S,B._cancelAlgorithm=T,B._finishPromise=void 0,B._finishPromise_resolve=void 0,B._finishPromise_reject=void 0}function p5(g,B){const Q=Object.create(Zn.prototype);let S,T,I;B.transform!==void 0?S=x=>B.transform(x,Q):S=x=>{try{return G4(Q,x),c(void 0)}catch(ce){return p(ce)}},B.flush!==void 0?T=()=>B.flush(Q):T=()=>c(void 0),B.cancel!==void 0?I=x=>B.cancel(x):I=()=>c(void 0),u5(g,Q,S,T,I)}function ju(g){g._transformAlgorithm=void 0,g._flushAlgorithm=void 0,g._cancelAlgorithm=void 0}function G4(g,B){const Q=g._controlledTransformStream,S=Q._readable._readableStreamController;if(!Tl(S))throw new TypeError("Readable side is not in a state that permits enqueue");try{Ll(S,B)}catch(I){throw O1(Q,I),Q._readable._storedError}UF(S)!==Q._backpressure&&Pu(Q,!0)}function c5(g,B){E4(g._controlledTransformStream,B)}function S4(g,B){const Q=g._transformAlgorithm(B);return w(Q,void 0,S=>{throw E4(g._controlledTransformStream,S),S})}function m5(g){const B=g._controlledTransformStream,Q=B._readable._readableStreamController;Ri(Q);const S=new TypeError("TransformStream terminated");O1(B,S)}function g5(g,B){const Q=g._transformStreamController;if(g._backpressure){const S=g._backpressureChangePromise;return w(S,()=>{const T=g._writable;if(T._state==="erroring")throw T._storedError;return S4(Q,B)})}return S4(Q,B)}function A5(g,B){const Q=g._transformStreamController;if(Q._finishPromise!==void 0)return Q._finishPromise;const S=g._readable;Q._finishPromise=u((I,x)=>{Q._finishPromise_resolve=I,Q._finishPromise_reject=x});const T=Q._cancelAlgorithm(B);return ju(Q),m(T,()=>(S._state==="errored"?kl(Q,S._storedError):(na(S._readableStreamController,B),z1(Q)),null),I=>(na(S._readableStreamController,I),kl(Q,I),null)),Q._finishPromise}function h5(g){const B=g._transformStreamController;if(B._finishPromise!==void 0)return B._finishPromise;const Q=g._readable;B._finishPromise=u((T,I)=>{B._finishPromise_resolve=T,B._finishPromise_reject=I});const S=B._flushAlgorithm();return ju(B),m(S,()=>(Q._state==="errored"?kl(B,Q._storedError):(Ri(Q._readableStreamController),z1(B)),null),T=>(na(Q._readableStreamController,T),kl(B,T),null)),B._finishPromise}function B5(g){return Pu(g,!1),g._backpressureChangePromise}function C5(g,B){const Q=g._transformStreamController;if(Q._finishPromise!==void 0)return Q._finishPromise;const S=g._writable;Q._finishPromise=u((I,x)=>{Q._finishPromise_resolve=I,Q._finishPromise_reject=x});const T=Q._cancelAlgorithm(B);return ju(Q),m(T,()=>(S._state==="errored"?kl(Q,S._storedError):(oo(S._writableStreamController,B),P1(g),z1(Q)),null),I=>(oo(S._writableStreamController,I),P1(g),kl(Q,I),null)),Q._finishPromise}function qu(g){return new TypeError(`TransformStreamDefaultController.prototype.${g} can only be used on a TransformStreamDefaultController`)}function z1(g){g._finishPromise_resolve!==void 0&&(g._finishPromise_resolve(),g._finishPromise_resolve=void 0,g._finishPromise_reject=void 0)}function kl(g,B){g._finishPromise_reject!==void 0&&(b(g._finishPromise),g._finishPromise_reject(B),g._finishPromise_resolve=void 0,g._finishPromise_reject=void 0)}function Z4(g){return new TypeError(`TransformStream.prototype.${g} can only be used on a TransformStream`)}r.ByteLengthQueuingStrategy=xu,r.CountQueuingStrategy=Ju,r.ReadableByteStreamController=Ja,r.ReadableStream=ur,r.ReadableStreamBYOBReader=Rn,r.ReadableStreamBYOBRequest=fi,r.ReadableStreamDefaultController=Pa,r.ReadableStreamDefaultReader=Jt,r.TransformStream=Ou,r.TransformStreamDefaultController=Zn,r.WritableStream=En,r.WritableStreamDefaultController=Nl,r.WritableStreamDefaultWriter=Oa})}}),RX=tt({"node_modules/node-domexception/index.js"(t,e){if(!globalThis.DOMException)try{const{MessageChannel:r}=hi("worker_threads"),a=new r().port1,n=new ArrayBuffer;a.postMessage(n,[n,n])}catch(r){r.constructor.name==="DOMException"&&(globalThis.DOMException=r.constructor)}e.exports=globalThis.DOMException}});function EX(t){if(XW(t)!=="object")return!1;const e=Object.getPrototypeOf(t);return e==null?!0:(e.constructor&&e.constructor.toString())===Object.toString()}var XW,HW,GX=be({"node_modules/formdata-node/lib/esm/isPlainObject.js"(){XW=t=>Object.prototype.toString.call(t).slice(8,-1).toLowerCase(),HW=EX}}),VW={};iu(VW,{fileFromPath:()=>ZX,fileFromPathSync:()=>SX,isFile:()=>UB});function YW(t,{mtimeMs:e,size:r},a,n={}){let i;HW(a)?[n,i]=[a,void 0]:i=a;const l=new NW({path:t,size:r,lastModified:e});return i||(i=l.name),new Ns([l],i,{...n,lastModified:l.lastModified})}function SX(t,e,r={}){const a=gd.statSync(t);return YW(t,a,e,r)}async function ZX(t,e,r){const a=await gd.promises.stat(t);return YW(t,a,e,r)}var pb,Jm,_i,Ii,Qo,cb,NW,XX=be({"node_modules/formdata-node/lib/esm/fileFromPath.js"(){pb=Gr(RX(),1),m1(),GX(),SW(),Jm=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},_i=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},cb="The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.",NW=class LW{constructor(e){Ii.set(this,void 0),Qo.set(this,void 0),Jm(this,Ii,e.path,"f"),Jm(this,Qo,e.start||0,"f"),this.name=K5.basename(_i(this,Ii,"f")),this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new LW({path:_i(this,Ii,"f"),lastModified:this.lastModified,size:r-e,start:e})}async*stream(){const{mtimeMs:e}=await gd.promises.stat(_i(this,Ii,"f"));if(e>this.lastModified)throw new pb.default(cb,"NotReadableError");this.size&&(yield*gd.createReadStream(_i(this,Ii,"f"),{start:_i(this,Qo,"f"),end:_i(this,Qo,"f")+this.size-1}))}get[(Ii=new WeakMap,Qo=new WeakMap,Symbol.toStringTag)](){return"File"}}}});ta();var mb="__run",TW=class kW{constructor(e){Object.defineProperty(this,"text",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"generationInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.text=e.text,this.generationInfo=e.generationInfo}concat(e){return new kW({text:this.text+e.text,generationInfo:{...this.generationInfo,...e.generationInfo}})}},sl=class UW extends TW{constructor(e){super(e),Object.defineProperty(this,"message",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.message=e.message}concat(e){return new UW({text:this.text+e.text,generationInfo:{...this.generationInfo,...e.generationInfo},message:this.message.concat(e.message)})}},HX=typeof window=="object"?window:{},ke="0123456789abcdef".split(""),VX=[-2147483648,8388608,32768,128],pa=[24,16,8,0],er=[];function Ka(t){t?(er[0]=er[16]=er[1]=er[2]=er[3]=er[4]=er[5]=er[6]=er[7]=er[8]=er[9]=er[10]=er[11]=er[12]=er[13]=er[14]=er[15]=0,this.blocks=er):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.h0=1732584193,this.h1=4023233417,this.h2=2562383102,this.h3=271733878,this.h4=3285377520,this.block=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0}Ka.prototype.update=function(t){if(!this.finalized){var e=typeof t!="string";e&&t.constructor===HX.ArrayBuffer&&(t=new Uint8Array(t));for(var r,a=0,n,i=t.length||0,l=this.blocks;a<i;){if(this.hashed&&(this.hashed=!1,l[0]=this.block,l[16]=l[1]=l[2]=l[3]=l[4]=l[5]=l[6]=l[7]=l[8]=l[9]=l[10]=l[11]=l[12]=l[13]=l[14]=l[15]=0),e)for(n=this.start;a<i&&n<64;++a)l[n>>2]|=t[a]<<pa[n++&3];else for(n=this.start;a<i&&n<64;++a)r=t.charCodeAt(a),r<128?l[n>>2]|=r<<pa[n++&3]:r<2048?(l[n>>2]|=(192|r>>6)<<pa[n++&3],l[n>>2]|=(128|r&63)<<pa[n++&3]):r<55296||r>=57344?(l[n>>2]|=(224|r>>12)<<pa[n++&3],l[n>>2]|=(128|r>>6&63)<<pa[n++&3],l[n>>2]|=(128|r&63)<<pa[n++&3]):(r=65536+((r&1023)<<10|t.charCodeAt(++a)&1023),l[n>>2]|=(240|r>>18)<<pa[n++&3],l[n>>2]|=(128|r>>12&63)<<pa[n++&3],l[n>>2]|=(128|r>>6&63)<<pa[n++&3],l[n>>2]|=(128|r&63)<<pa[n++&3]);this.lastByteIndex=n,this.bytes+=n-this.start,n>=64?(this.block=l[16],this.start=n-64,this.hash(),this.hashed=!0):this.start=n}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};Ka.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,e=this.lastByteIndex;t[16]=this.block,t[e>>2]|=VX[e&3],this.block=t[16],e>=56&&(this.hashed||this.hash(),t[0]=this.block,t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.hBytes<<3|this.bytes>>>29,t[15]=this.bytes<<3,this.hash()}};Ka.prototype.hash=function(){var t=this.h0,e=this.h1,r=this.h2,a=this.h3,n=this.h4,i,l,s,o=this.blocks;for(l=16;l<80;++l)s=o[l-3]^o[l-8]^o[l-14]^o[l-16],o[l]=s<<1|s>>>31;for(l=0;l<20;l+=5)i=e&r|~e&a,s=t<<5|t>>>27,n=s+i+n+1518500249+o[l]<<0,e=e<<30|e>>>2,i=t&e|~t&r,s=n<<5|n>>>27,a=s+i+a+1518500249+o[l+1]<<0,t=t<<30|t>>>2,i=n&t|~n&e,s=a<<5|a>>>27,r=s+i+r+1518500249+o[l+2]<<0,n=n<<30|n>>>2,i=a&n|~a&t,s=r<<5|r>>>27,e=s+i+e+1518500249+o[l+3]<<0,a=a<<30|a>>>2,i=r&a|~r&n,s=e<<5|e>>>27,t=s+i+t+1518500249+o[l+4]<<0,r=r<<30|r>>>2;for(;l<40;l+=5)i=e^r^a,s=t<<5|t>>>27,n=s+i+n+1859775393+o[l]<<0,e=e<<30|e>>>2,i=t^e^r,s=n<<5|n>>>27,a=s+i+a+1859775393+o[l+1]<<0,t=t<<30|t>>>2,i=n^t^e,s=a<<5|a>>>27,r=s+i+r+1859775393+o[l+2]<<0,n=n<<30|n>>>2,i=a^n^t,s=r<<5|r>>>27,e=s+i+e+1859775393+o[l+3]<<0,a=a<<30|a>>>2,i=r^a^n,s=e<<5|e>>>27,t=s+i+t+1859775393+o[l+4]<<0,r=r<<30|r>>>2;for(;l<60;l+=5)i=e&r|e&a|r&a,s=t<<5|t>>>27,n=s+i+n-1894007588+o[l]<<0,e=e<<30|e>>>2,i=t&e|t&r|e&r,s=n<<5|n>>>27,a=s+i+a-1894007588+o[l+1]<<0,t=t<<30|t>>>2,i=n&t|n&e|t&e,s=a<<5|a>>>27,r=s+i+r-1894007588+o[l+2]<<0,n=n<<30|n>>>2,i=a&n|a&t|n&t,s=r<<5|r>>>27,e=s+i+e-1894007588+o[l+3]<<0,a=a<<30|a>>>2,i=r&a|r&n|a&n,s=e<<5|e>>>27,t=s+i+t-1894007588+o[l+4]<<0,r=r<<30|r>>>2;for(;l<80;l+=5)i=e^r^a,s=t<<5|t>>>27,n=s+i+n-899497514+o[l]<<0,e=e<<30|e>>>2,i=t^e^r,s=n<<5|n>>>27,a=s+i+a-899497514+o[l+1]<<0,t=t<<30|t>>>2,i=n^t^e,s=a<<5|a>>>27,r=s+i+r-899497514+o[l+2]<<0,n=n<<30|n>>>2,i=a^n^t,s=r<<5|r>>>27,e=s+i+e-899497514+o[l+3]<<0,a=a<<30|a>>>2,i=r^a^n,s=e<<5|e>>>27,t=s+i+t-899497514+o[l+4]<<0,r=r<<30|r>>>2;this.h0=this.h0+t<<0,this.h1=this.h1+e<<0,this.h2=this.h2+r<<0,this.h3=this.h3+a<<0,this.h4=this.h4+n<<0};Ka.prototype.hex=function(){this.finalize();var t=this.h0,e=this.h1,r=this.h2,a=this.h3,n=this.h4;return ke[t>>28&15]+ke[t>>24&15]+ke[t>>20&15]+ke[t>>16&15]+ke[t>>12&15]+ke[t>>8&15]+ke[t>>4&15]+ke[t&15]+ke[e>>28&15]+ke[e>>24&15]+ke[e>>20&15]+ke[e>>16&15]+ke[e>>12&15]+ke[e>>8&15]+ke[e>>4&15]+ke[e&15]+ke[r>>28&15]+ke[r>>24&15]+ke[r>>20&15]+ke[r>>16&15]+ke[r>>12&15]+ke[r>>8&15]+ke[r>>4&15]+ke[r&15]+ke[a>>28&15]+ke[a>>24&15]+ke[a>>20&15]+ke[a>>16&15]+ke[a>>12&15]+ke[a>>8&15]+ke[a>>4&15]+ke[a&15]+ke[n>>28&15]+ke[n>>24&15]+ke[n>>20&15]+ke[n>>16&15]+ke[n>>12&15]+ke[n>>8&15]+ke[n>>4&15]+ke[n&15]};Ka.prototype.toString=Ka.prototype.hex;Ka.prototype.digest=function(){this.finalize();var t=this.h0,e=this.h1,r=this.h2,a=this.h3,n=this.h4;return[t>>24&255,t>>16&255,t>>8&255,t&255,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24&255,r>>16&255,r>>8&255,r&255,a>>24&255,a>>16&255,a>>8&255,a&255,n>>24&255,n>>16&255,n>>8&255,n&255]};Ka.prototype.array=Ka.prototype.digest;Ka.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(20),e=new DataView(t);return e.setUint32(0,this.h0),e.setUint32(4,this.h1),e.setUint32(8,this.h2),e.setUint32(12,this.h3),e.setUint32(16,this.h4),t};var YX=t=>new Ka(!0).update(t).hex();ta();var gb=(...t)=>YX(t.join("_")),NX=class{},LX=new Map,TX=class _W extends NX{constructor(e){super(),Object.defineProperty(this,"cache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cache=e??new Map}lookup(e,r){return Promise.resolve(this.cache.get(gb(e,r))??null)}async update(e,r,a){this.cache.set(gb(e,r),a)}static global(){return new _W(LX)}};l1();ta();s1();var kX=Gr(o7(),1),UX=Object.defineProperty,_X=(t,e,r)=>e in t?UX(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,IX=(t,e,r)=>(_X(t,typeof e!="symbol"?e+"":e,r),r);function DX(t,e){let r=Array.from({length:t.length},(a,n)=>({start:n,end:n+1}));for(;r.length>1;){let a=null;for(let n=0;n<r.length-1;n++){const i=t.slice(r[n].start,r[n+1].end),l=e.get(i.join(","));l!=null&&(a==null||l<a[0])&&(a=[l,n])}if(a!=null){const n=a[1];r[n]={start:r[n].start,end:r[n+1].end},r.splice(n+1,1)}else break}return r}function MX(t,e){return t.length===1?[e.get(t.join(","))]:DX(t,e).map(r=>e.get(t.slice(r.start,r.end).join(","))).filter(r=>r!=null)}function xX(t){return t.replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")}var JA=class{constructor(t,e){Vi(this,"specialTokens"),Vi(this,"inverseSpecialTokens"),Vi(this,"patStr"),Vi(this,"textEncoder",new TextEncoder),Vi(this,"textDecoder",new TextDecoder("utf-8")),Vi(this,"rankMap",new Map),Vi(this,"textMap",new Map),this.patStr=t.pat_str;const r=t.bpe_ranks.split(`
`).filter(Boolean).reduce((a,n)=>{const[i,l,...s]=n.split(" "),o=Number.parseInt(l,10);return s.forEach((d,u)=>a[d]=o+u),a},{});for(const[a,n]of Object.entries(r)){const i=kX.default.toByteArray(a);this.rankMap.set(i.join(","),n),this.textMap.set(n,i)}this.specialTokens={...t.special_tokens,...e},this.inverseSpecialTokens=Object.entries(this.specialTokens).reduce((a,[n,i])=>(a[i]=this.textEncoder.encode(n),a),{})}encode(t,e=[],r="all"){const a=new RegExp(this.patStr,"ug"),n=JA.specialTokenRegex(Object.keys(this.specialTokens)),i=[],l=new Set(e==="all"?Object.keys(this.specialTokens):e),s=new Set(r==="all"?Object.keys(this.specialTokens).filter(d=>!l.has(d)):r);if(s.size>0){const d=JA.specialTokenRegex([...s]),u=t.match(d);if(u!=null)throw new Error(`The text contains a special token that is not allowed: ${u[0]}`)}let o=0;for(;;){let d=null,u=o;for(;n.lastIndex=u,d=n.exec(t),!(d==null||l.has(d[0]));)u=d.index+1;const c=(d==null?void 0:d.index)??t.length;for(const A of t.substring(o,c).matchAll(a)){const m=this.textEncoder.encode(A[0]),h=this.rankMap.get(m.join(","));if(h!=null){i.push(h);continue}i.push(...MX(m,this.rankMap))}if(d==null)break;let p=this.specialTokens[d[0]];i.push(p),o=d.index+d[0].length}return i}decode(t){const e=[];let r=0;for(let i=0;i<t.length;++i){const l=t[i],s=this.textMap.get(l)??this.inverseSpecialTokens[l];s!=null&&(e.push(s),r+=s.length)}const a=new Uint8Array(r);let n=0;for(const i of e)a.set(i,n),n+=i.length;return this.textDecoder.decode(a)}},IW=JA;IX(IW,"specialTokenRegex",t=>new RegExp(t.map(e=>xX(e)).join("|"),"g"));function JX(t){switch(t){case"gpt2":return"gpt2";case"code-cushman-001":case"code-cushman-002":case"code-davinci-001":case"code-davinci-002":case"cushman-codex":case"davinci-codex":case"davinci-002":case"text-davinci-002":case"text-davinci-003":return"p50k_base";case"code-davinci-edit-001":case"text-davinci-edit-001":return"p50k_edit";case"ada":case"babbage":case"babbage-002":case"code-search-ada-code-001":case"code-search-babbage-code-001":case"curie":case"davinci":case"text-ada-001":case"text-babbage-001":case"text-curie-001":case"text-davinci-001":case"text-search-ada-doc-001":case"text-search-babbage-doc-001":case"text-search-curie-doc-001":case"text-search-davinci-doc-001":case"text-similarity-ada-001":case"text-similarity-babbage-001":case"text-similarity-curie-001":case"text-similarity-davinci-001":return"r50k_base";case"gpt-3.5-turbo-instruct-0914":case"gpt-3.5-turbo-instruct":case"gpt-3.5-turbo-16k-0613":case"gpt-3.5-turbo-16k":case"gpt-3.5-turbo-0613":case"gpt-3.5-turbo-0301":case"gpt-3.5-turbo":case"gpt-4-32k-0613":case"gpt-4-32k-0314":case"gpt-4-32k":case"gpt-4-0613":case"gpt-4-0314":case"gpt-4":case"gpt-3.5-turbo-1106":case"gpt-35-turbo":case"gpt-4-1106-preview":case"gpt-4-vision-preview":case"gpt-3.5-turbo-0125":case"gpt-4-turbo-preview":case"gpt-4-0125-preview":case"text-embedding-ada-002":return"cl100k_base";default:throw new Error("Unknown model")}}s1();var Sp={},OX=new su({});async function PX(t){return t in Sp||(Sp[t]=OX.fetch(`https://tiktoken.pages.dev/js/${t}.json`).then(e=>e.json()).then(e=>new IW(e)).catch(e=>{throw delete Sp[t],e})),await Sp[t]}async function zX(t){return PX(JX(t))}Ma();var jX=t=>t.startsWith("gpt-3.5-turbo-16k")?"gpt-3.5-turbo-16k":t.startsWith("gpt-3.5-turbo-")?"gpt-3.5-turbo":t.startsWith("gpt-4-32k")?"gpt-4-32k":t.startsWith("gpt-4-")?"gpt-4":t,qX=()=>!1,$X=class extends Ot{get lc_attributes(){return{callbacks:void 0,verbose:void 0}}constructor(t){super(t),Object.defineProperty(this,"verbose",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"callbacks",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.verbose=t.verbose??qX(),this.callbacks=t.callbacks,this.tags=t.tags??[],this.metadata=t.metadata??{}}},eH=class extends $X{get callKeys(){return["stop","timeout","signal","tags","metadata","callbacks"]}constructor({callbacks:t,callbackManager:e,...r}){super({callbacks:t??e,...r}),Object.defineProperty(this,"caller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_encoding",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),typeof r.cache=="object"?this.cache=r.cache:r.cache?this.cache=TX.global():this.cache=void 0,this.caller=new su(r??{})}async getNumTokens(t){if(typeof t!="string")return 0;let e=Math.ceil(t.length/4);if(!this._encoding)try{this._encoding=await zX("modelName"in this?jX(this.modelName):"gpt2")}catch(r){console.warn("Failed to calculate number of tokens, falling back to approximate count",r)}if(this._encoding)try{e=this._encoding.encode(t).length}catch(r){console.warn("Failed to calculate number of tokens, falling back to approximate count",r)}return e}static _convertInputToPromptValue(t){return typeof t=="string"?new gB(t):Array.isArray(t)?new AB(t.map(To)):t}_identifyingParams(){return{}}_getSerializedCacheKeyParametersForCall(t){const e={...this._identifyingParams(),...t,_type:this._llmType(),_model:this._modelType()};return Object.entries(e).filter(([n,i])=>i!==void 0).map(([n,i])=>`${n}:${JSON.stringify(i)}`).sort().join(",")}serialize(){return{...this._identifyingParams(),_type:this._llmType(),_model:this._modelType()}}static async deserialize(t){throw new Error("Use .toJSON() instead")}};uu();var DW=class ls extends eH{constructor(e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain","chat_models",this._llmType()]})}_separateRunnableConfigFromCallOptions(e){const[r,a]=super._separateRunnableConfigFromCallOptions(e);return a!=null&&a.timeout&&!a.signal&&(a.signal=AbortSignal.timeout(a.timeout)),[r,a]}async invoke(e,r){const a=ls._convertInputToPromptValue(e);return(await this.generatePrompt([a],r,r==null?void 0:r.callbacks)).generations[0][0].message}async*_streamResponseChunks(e,r,a){throw new Error("Not implemented.")}async*_streamIterator(e,r){if(this._streamResponseChunks===ls.prototype._streamResponseChunks)yield this.invoke(e,r);else{const n=ls._convertInputToPromptValue(e).toChatMessages(),[i,l]=this._separateRunnableConfigFromCallOptions(r),s=await Pr.configure(i.callbacks,this.callbacks,i.tags,this.tags,i.metadata,this.metadata,{verbose:this.verbose}),o={options:l,invocation_params:this==null?void 0:this.invocationParams(l),batch_size:1},d=await(s==null?void 0:s.handleChatModelStart(this.toJSON(),[n],void 0,void 0,o,void 0,void 0,i.runName));let u;try{for await(const c of this._streamResponseChunks(n,l,d==null?void 0:d[0]))yield c.message,u?u=u.concat(c):u=c}catch(c){throw await Promise.all((d??[]).map(p=>p==null?void 0:p.handleLLMError(c))),c}await Promise.all((d??[]).map(c=>c==null?void 0:c.handleLLMEnd({generations:[[u]]})))}}async _generateUncached(e,r,a){var p;const n=e.map(A=>A.map(To)),i=await Pr.configure(a.callbacks,this.callbacks,a.tags,this.tags,a.metadata,this.metadata,{verbose:this.verbose}),l={options:r,invocation_params:this==null?void 0:this.invocationParams(r),batch_size:1},s=await(i==null?void 0:i.handleChatModelStart(this.toJSON(),n,void 0,void 0,l,void 0,void 0,a.runName)),o=await Promise.allSettled(n.map((A,m)=>this._generate(A,{...r,promptIndex:m},s==null?void 0:s[m]))),d=[],u=[];await Promise.all(o.map(async(A,m)=>{var h,C;if(A.status==="fulfilled"){const w=A.value;return d[m]=w.generations,u[m]=w.llmOutput,(h=s==null?void 0:s[m])==null?void 0:h.handleLLMEnd({generations:[w.generations],llmOutput:w.llmOutput})}else return await((C=s==null?void 0:s[m])==null?void 0:C.handleLLMError(A.reason)),Promise.reject(A.reason)}));const c={generations:d,llmOutput:u.length?(p=this._combineLLMOutput)==null?void 0:p.call(this,...u):void 0};return Object.defineProperty(c,mb,{value:s?{runIds:s==null?void 0:s.map(A=>A.runId)}:void 0,configurable:!0}),c}async _generateCached({messages:e,cache:r,llmStringKey:a,parsedOptions:n,handledOptions:i}){const l=e.map(h=>h.map(To)),s=await Pr.configure(i.callbacks,this.callbacks,i.tags,this.tags,i.metadata,this.metadata,{verbose:this.verbose}),o={options:n,invocation_params:this==null?void 0:this.invocationParams(n),batch_size:1,cached:!0},d=await(s==null?void 0:s.handleChatModelStart(this.toJSON(),l,void 0,void 0,o,void 0,void 0,i.runName)),u=[],p=(await Promise.allSettled(l.map(async(h,C)=>{const w=ls._convertInputToPromptValue(h).toString(),b=await r.lookup(w,a);return b==null&&u.push(C),b}))).map((h,C)=>({result:h,runManager:d==null?void 0:d[C]})).filter(({result:h})=>h.status==="fulfilled"&&h.value!=null||h.status==="rejected"),A=[];await Promise.all(p.map(async({result:h,runManager:C},w)=>{if(h.status==="fulfilled"){const b=h.value;return A[w]=b,b.length&&await(C==null?void 0:C.handleLLMNewToken(b[0].text)),C==null?void 0:C.handleLLMEnd({generations:[b]})}else return await(C==null?void 0:C.handleLLMError(h.reason)),Promise.reject(h.reason)}));const m={generations:A,missingPromptIndices:u};return Object.defineProperty(m,mb,{value:d?{runIds:d==null?void 0:d.map(h=>h.runId)}:void 0,configurable:!0}),m}async generate(e,r,a){let n;Array.isArray(r)?n={stop:r}:n=r;const i=e.map(A=>A.map(To)),[l,s]=this._separateRunnableConfigFromCallOptions(n);if(l.callbacks=l.callbacks??a,!this.cache)return this._generateUncached(i,s,l);const{cache:o}=this,d=this._getSerializedCacheKeyParametersForCall(s),{generations:u,missingPromptIndices:c}=await this._generateCached({messages:i,cache:o,llmStringKey:d,parsedOptions:s,handledOptions:l});let p={};if(c.length>0){const A=await this._generateUncached(c.map(m=>i[m]),s,l);await Promise.all(A.generations.map(async(m,h)=>{const C=c[h];u[C]=m;const w=ls._convertInputToPromptValue(i[C]).toString();return o.update(w,d,m)})),p=A.llmOutput??{}}return{generations:u,llmOutput:p}}invocationParams(e){return{}}_modelType(){return"base_chat_model"}serialize(){return{...this.invocationParams(),_type:this._llmType(),_model:this._modelType()}}async generatePrompt(e,r,a){const n=e.map(i=>i.toChatMessages());return this.generate(n,r,a)}async call(e,r,a){return(await this.generate([e.map(To)],r,a)).generations[0][0].message}async callPrompt(e,r,a){const n=e.toChatMessages();return this.call(n,r,a)}async predictMessages(e,r,a){return this.call(e,r,a)}async predict(e,r,a){const n=new Td(e),i=await this.call([n],r,a);if(typeof i.content!="string")throw new Error("Cannot use predict when output is not a string.");return i.content}},tH=class extends DW{async _generate(t,e,r){const a=await this._call(t,e,r),n=new i1(a);if(typeof n.content!="string")throw new Error("Cannot generate with a simple chat model when output is not a string.");return{generations:[{text:n.content,message:n}]}}};ta();pu();async function*MW(t,e,r){let a=t;a.startsWith("http://localhost:")&&(a=a.replace("http://localhost:","http://127.0.0.1:"));const n=await fetch(a,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",...r.headers},signal:r.signal});if(!n.ok){let o;const d=await n.text();try{const u=JSON.parse(d);o=new Error(`Ollama call failed with status code ${n.status}: ${u.error}`)}catch{o=new Error(`Ollama call failed with status code ${n.status}: ${d}`)}throw o.response=n,o}if(!n.body)throw new Error("Could not begin Ollama stream. Please check the given URL and try again.");const i=jn.fromReadableStream(n.body),l=new TextDecoder;let s="";for await(const o of i){const u=(s+l.decode(o)).split(`
`);s=u.pop()||"";for(const c of u)try{yield JSON.parse(c)}catch{console.warn(`Received a non-JSON parseable chunk: ${c}`)}}}async function*rH(t,e,r){yield*MW(`${t}/api/generate`,e,r)}async function*aH(t,e,r){yield*MW(`${t}/api/chat`,e,r)}var nH=class extends tH{static lc_name(){return"ChatOllama"}constructor(t){var e;super(t),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"model",{enumerable:!0,configurable:!0,writable:!0,value:"llama2"}),Object.defineProperty(this,"baseUrl",{enumerable:!0,configurable:!0,writable:!0,value:"http://localhost:11434"}),Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,writable:!0,value:"5m"}),Object.defineProperty(this,"embeddingOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"f16KV",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"frequencyPenalty",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"logitsAll",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lowVram",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"mainGpu",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"mirostat",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"mirostatEta",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"mirostatTau",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numBatch",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numCtx",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numGpu",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numGqa",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numKeep",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numPredict",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"numThread",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"penalizeNewline",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"presencePenalty",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"repeatLastN",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"repeatPenalty",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ropeFrequencyBase",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"ropeFrequencyScale",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"temperature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"stop",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tfsZ",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"topK",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"topP",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"typicalP",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"useMLock",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"useMMap",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"vocabOnly",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"format",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.model=t.model??this.model,this.baseUrl=(e=t.baseUrl)!=null&&e.endsWith("/")?t.baseUrl.slice(0,-1):t.baseUrl??this.baseUrl,this.keepAlive=t.keepAlive??this.keepAlive,this.embeddingOnly=t.embeddingOnly,this.f16KV=t.f16KV,this.frequencyPenalty=t.frequencyPenalty,this.headers=t.headers,this.logitsAll=t.logitsAll,this.lowVram=t.lowVram,this.mainGpu=t.mainGpu,this.mirostat=t.mirostat,this.mirostatEta=t.mirostatEta,this.mirostatTau=t.mirostatTau,this.numBatch=t.numBatch,this.numCtx=t.numCtx,this.numGpu=t.numGpu,this.numGqa=t.numGqa,this.numKeep=t.numKeep,this.numPredict=t.numPredict,this.numThread=t.numThread,this.penalizeNewline=t.penalizeNewline,this.presencePenalty=t.presencePenalty,this.repeatLastN=t.repeatLastN,this.repeatPenalty=t.repeatPenalty,this.ropeFrequencyBase=t.ropeFrequencyBase,this.ropeFrequencyScale=t.ropeFrequencyScale,this.temperature=t.temperature,this.stop=t.stop,this.tfsZ=t.tfsZ,this.topK=t.topK,this.topP=t.topP,this.typicalP=t.typicalP,this.useMLock=t.useMLock,this.useMMap=t.useMMap,this.vocabOnly=t.vocabOnly,this.format=t.format}_llmType(){return"ollama"}invocationParams(t){return{model:this.model,format:this.format,keep_alive:this.keepAlive,options:{embedding_only:this.embeddingOnly,f16_kv:this.f16KV,frequency_penalty:this.frequencyPenalty,logits_all:this.logitsAll,low_vram:this.lowVram,main_gpu:this.mainGpu,mirostat:this.mirostat,mirostat_eta:this.mirostatEta,mirostat_tau:this.mirostatTau,num_batch:this.numBatch,num_ctx:this.numCtx,num_gpu:this.numGpu,num_gqa:this.numGqa,num_keep:this.numKeep,num_predict:this.numPredict,num_thread:this.numThread,penalize_newline:this.penalizeNewline,presence_penalty:this.presencePenalty,repeat_last_n:this.repeatLastN,repeat_penalty:this.repeatPenalty,rope_frequency_base:this.ropeFrequencyBase,rope_frequency_scale:this.ropeFrequencyScale,temperature:this.temperature,stop:(t==null?void 0:t.stop)??this.stop,tfs_z:this.tfsZ,top_k:this.topK,top_p:this.topP,typical_p:this.typicalP,use_mlock:this.useMLock,use_mmap:this.useMMap,vocab_only:this.vocabOnly}}}_combineLLMOutput(){return{}}async*_streamResponseChunksLegacy(t,e,r){const a=rH(this.baseUrl,{...this.invocationParams(e),prompt:this._formatMessagesAsPrompt(t)},{...e,headers:this.headers});for await(const n of a)n.done?yield new sl({text:"",message:new ti({content:""}),generationInfo:{model:n.model,total_duration:n.total_duration,load_duration:n.load_duration,prompt_eval_count:n.prompt_eval_count,prompt_eval_duration:n.prompt_eval_duration,eval_count:n.eval_count,eval_duration:n.eval_duration}}):(yield new sl({text:n.response,message:new ti({content:n.response})}),await(r==null?void 0:r.handleLLMNewToken(n.response??"")))}async*_streamResponseChunks(t,e,r){var a;try{const n=await this.caller.call(async()=>aH(this.baseUrl,{...this.invocationParams(e),messages:this._convertMessagesToOllamaMessages(t)},{...e,headers:this.headers}));for await(const i of n)i.done?yield new sl({text:"",message:new ti({content:""}),generationInfo:{model:i.model,total_duration:i.total_duration,load_duration:i.load_duration,prompt_eval_count:i.prompt_eval_count,prompt_eval_duration:i.prompt_eval_duration,eval_count:i.eval_count,eval_duration:i.eval_duration}}):(yield new sl({text:i.message.content,message:new ti({content:i.message.content})}),await(r==null?void 0:r.handleLLMNewToken(i.message.content??"")))}catch(n){if(((a=n.response)==null?void 0:a.status)===404)console.warn("[WARNING]: It seems you are using a legacy version of Ollama. Please upgrade to a newer version for better chat support."),yield*this._streamResponseChunksLegacy(t,e,r);else throw n}}_convertMessagesToOllamaMessages(t){return t.map(e=>{let r;if(e._getType()==="human")r="user";else if(e._getType()==="ai")r="assistant";else if(e._getType()==="system")r="system";else throw new Error(`Unsupported message type for Ollama: ${e._getType()}`);let a="";const n=[];if(typeof e.content=="string")a=e.content;else for(const i of e.content)if(i.type==="text")a=`${a}
${i.text}`;else if(i.type==="image_url"&&typeof i.image_url=="string"){const l=i.image_url.split(",");n.push(l[1]??l[0])}else throw new Error('Unsupported message content type. Must either have type "text" or type "image_url" with a string "image_url" field.');return{role:r,content:a,images:n}})}_formatMessagesAsPrompt(t){return t.map(r=>{let a;return r._getType()==="human"?a=`[INST] ${r.content} [/INST]`:r._getType()==="ai"?a=r.content:r._getType()==="system"?a=`<<SYS>> ${r.content} <</SYS>>`:kd.isInstance(r)?a=`
${r.role[0].toUpperCase()}${r.role.slice(1)}: ${r.content}`:(console.warn(`Unsupported message type passed to Ollama: "${r._getType()}"`),a=""),a}).join(`
`)}async _call(t,e,r){const a=[];for await(const n of this._streamResponseChunks(t,e,r))a.push(n.message.content);return a.join("")}};Ma();zs();pu();Ma();zs();var OA=class extends Ot{static lc_name(){return"RunnablePassthrough"}constructor(t){super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","runnables"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"func",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),t&&(this.func=t.func)}async invoke(t,e){const r=lr(e);return this.func&&await this.func(t,r),this._callWithConfig(a=>Promise.resolve(a),t,r)}async*transform(t,e){const r=lr(e);let a,n=!0;for await(const i of this._transformStreamWithConfig(t,l=>l,r))if(yield i,n)if(a===void 0)a=i;else try{a=el(a,i)}catch{a=void 0,n=!1}this.func&&a!==void 0&&await this.func(a,r)}static assign(t){return new yA(new od({steps:t}))}};Ma();zs();Ma();zs();pu();ta();Ma();var IB=class extends Ot{parseResultWithPrompt(t,e,r){return this.parseResult(t,r)}async invoke(t,e){return typeof t=="string"?this._callWithConfig(async r=>this.parseResult([{text:r}]),t,{...e,runType:"parser"}):this._callWithConfig(async r=>this.parseResult([{message:r,text:typeof r.content=="string"?r.content:JSON.stringify(r.content)}]),t,{...e,runType:"parser"})}},iH=class extends IB{parseResult(t,e){return this.parse(t[0].text,e)}async parseWithPrompt(t,e,r){return this.parse(t,r)}_type(){throw new Error("_type not implemented")}};ta();function PA(t,e){const r=typeof t;if(r!==typeof e)return!1;if(Array.isArray(t)){if(!Array.isArray(e))return!1;const a=t.length;if(a!==e.length)return!1;for(let n=0;n<a;n++)if(!PA(t[n],e[n]))return!1;return!0}if(r==="object"){if(!t||!e)return t===e;const a=Object.keys(t),n=Object.keys(e);if(a.length!==n.length)return!1;for(const l of a)if(!PA(t[l],e[l]))return!1;return!0}return t===e}var xW=class extends iH{async*_transform(t){for await(const e of t)typeof e=="string"?yield this.parseResult([{text:e}]):yield this.parseResult([{message:e,text:typeof e.content=="string"?e.content:JSON.stringify(e.content)}])}async*transform(t,e){yield*this._transformStreamWithConfig(t,this._transform.bind(this),{...e,runType:"parser"})}},lH=class extends xW{constructor(t){super(t),Object.defineProperty(this,"diff",{enumerable:!0,configurable:!0,writable:!0,value:!1}),this.diff=(t==null?void 0:t.diff)??this.diff}async*_transform(t){let e,r;for await(const a of t){if(typeof a!="string"&&typeof a.content!="string")throw new Error("Cannot handle non-string output.");let n;if($Z(a)){if(typeof a.content!="string")throw new Error("Cannot handle non-string message output.");n=new sl({message:a,text:a.content})}else if(mB(a)){if(typeof a.content!="string")throw new Error("Cannot handle non-string message output.");n=new sl({message:a.toChunk(),text:a.content})}else n=new TW({text:a});r===void 0?r=n:r=r.concat(n);const i=await this.parsePartialResult([r]);i!=null&&!PA(i,e)&&(this.diff?yield this._diff(e,i):yield i,e=i)}}},g1=class extends xW{constructor(){super(...arguments),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","output_parsers","string"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0})}static lc_name(){return"StrOutputParser"}parse(t){return Promise.resolve(t)}getFormatInstructions(){return""}};YQ();var sH=class extends lH{constructor(){super(...arguments),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain_core","output_parsers"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0})}static lc_name(){return"JsonOutputParser"}_diff(t,e){if(e)return t?T7(t,e):[{op:"replace",path:"",value:e}]}async parsePartialResult(t){return Ab(t[0].text)}async parse(t){return Ab(t,JSON.parse)}getFormatInstructions(){return""}};function Ab(t,e=oH){t=t.trim();const r=/```(json)?(.*)```/s.exec(t);return e(r?r[2]:t)}function oH(t){if(typeof t>"u")return null;try{return JSON.parse(t)}catch{}let e="";const r=[];let a=!1,n=!1;for(let i of t){if(a)i==='"'&&!n?a=!1:i===`
`&&!n?i="\\n":i==="\\"?n=!n:n=!1;else if(i==='"')a=!0,n=!1;else if(i==="{")r.push("}");else if(i==="[")r.push("]");else if(i==="}"||i==="]")if(r&&r[r.length-1]===i)r.pop();else return null;e+=i}a&&(e+='"');for(let i=r.length-1;i>=0;i-=1)e+=r[i];try{return JSON.parse(e)}catch{return null}}mu();WB();zQ();mu();WB();_d();u1();cu();MQ();var ss="4.28.4",hb=!1,cd=void 0,JW=void 0,OW=void 0,zA=void 0,PW=void 0,zW=void 0,jW=void 0,qW=void 0,$W=void 0;function dH(t,e={auto:!1}){if(hb)throw new Error(`you must \`import 'openai/shims/${t.kind}'\` before importing anything else from openai`);if(cd)throw new Error(`can't \`import 'openai/shims/${t.kind}'\` after \`import 'openai/shims/${cd}'\``);hb=e.auto,cd=t.kind,JW=t.fetch,t.Request,t.Response,t.Headers,OW=t.FormData,t.Blob,zA=t.File,PW=t.ReadableStream,zW=t.getMultipartRequestOptions,jW=t.getDefaultAgent,qW=t.fileFromPath,$W=t.isFsReadStream}var e9=Gr(q7(),1),uH=qr.Readable,un=Symbol("buffer"),Om=Symbol("type"),DB=class jA{constructor(){this[Om]="";const e=arguments[0],r=arguments[1],a=[];let n=0;if(e){const l=e,s=Number(l.length);for(let o=0;o<s;o++){const d=l[o];let u;d instanceof Buffer?u=d:ArrayBuffer.isView(d)?u=Buffer.from(d.buffer,d.byteOffset,d.byteLength):d instanceof ArrayBuffer?u=Buffer.from(d):d instanceof jA?u=d[un]:u=Buffer.from(typeof d=="string"?d:String(d)),n+=u.length,a.push(u)}}this[un]=Buffer.concat(a);let i=r&&r.type!==void 0&&String(r.type).toLowerCase();i&&!/[^\u0020-\u007E]/.test(i)&&(this[Om]=i)}get size(){return this[un].length}get type(){return this[Om]}text(){return Promise.resolve(this[un].toString())}arrayBuffer(){const e=this[un],r=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return Promise.resolve(r)}stream(){const e=new uH;return e._read=function(){},e.push(this[un]),e.push(null),e}toString(){return"[object Blob]"}slice(){const e=this.size,r=arguments[0],a=arguments[1];let n,i;r===void 0?n=0:r<0?n=Math.max(e+r,0):n=Math.min(r,e),a===void 0?i=e:a<0?i=Math.max(e+a,0):i=Math.min(a,e);const l=Math.max(i-n,0),o=this[un].slice(n,n+l),d=new jA([],{type:arguments[2]});return d[un]=o,d}};Object.defineProperties(DB.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Object.defineProperty(DB.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0});function gr(t,e,r){Error.call(this,t),this.message=t,this.type=e,r&&(this.code=this.errno=r.code),Error.captureStackTrace(this,this.constructor)}gr.prototype=Object.create(Error.prototype);gr.prototype.constructor=gr;gr.prototype.name="FetchError";var qA;try{qA=hi("encoding").convert}catch{}var Cn=Symbol("Body internals"),Bb=qr.PassThrough;function ar(t){var e=this,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=r.size;let n=a===void 0?0:a;var i=r.timeout;let l=i===void 0?0:i;t==null?t=null:t9(t)?t=Buffer.from(t.toString()):gu(t)||Buffer.isBuffer(t)||(Object.prototype.toString.call(t)==="[object ArrayBuffer]"?t=Buffer.from(t):ArrayBuffer.isView(t)?t=Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof qr||(t=Buffer.from(String(t)))),this[Cn]={body:t,disturbed:!1,error:null},this.size=n,this.timeout=l,t instanceof qr&&t.on("error",function(s){const o=s.name==="AbortError"?s:new gr(`Invalid response body while trying to fetch ${e.url}: ${s.message}`,"system",s);e[Cn].error=o})}ar.prototype={get body(){return this[Cn].body},get bodyUsed(){return this[Cn].disturbed},arrayBuffer(){return $l.call(this).then(function(t){return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)})},blob(){let t=this.headers&&this.headers.get("content-type")||"";return $l.call(this).then(function(e){return Object.assign(new DB([],{type:t.toLowerCase()}),{[un]:e})})},json(){var t=this;return $l.call(this).then(function(e){try{return JSON.parse(e.toString())}catch(r){return ar.Promise.reject(new gr(`invalid json response body at ${t.url} reason: ${r.message}`,"invalid-json"))}})},text(){return $l.call(this).then(function(t){return t.toString()})},buffer(){return $l.call(this)},textConverted(){var t=this;return $l.call(this).then(function(e){return pH(e,t.headers)})}};Object.defineProperties(ar.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});ar.mixIn=function(t){for(const e of Object.getOwnPropertyNames(ar.prototype))if(!(e in t)){const r=Object.getOwnPropertyDescriptor(ar.prototype,e);Object.defineProperty(t,e,r)}};function $l(){var t=this;if(this[Cn].disturbed)return ar.Promise.reject(new TypeError(`body used already for: ${this.url}`));if(this[Cn].disturbed=!0,this[Cn].error)return ar.Promise.reject(this[Cn].error);let e=this.body;if(e===null)return ar.Promise.resolve(Buffer.alloc(0));if(gu(e)&&(e=e.stream()),Buffer.isBuffer(e))return ar.Promise.resolve(e);if(!(e instanceof qr))return ar.Promise.resolve(Buffer.alloc(0));let r=[],a=0,n=!1;return new ar.Promise(function(i,l){let s;t.timeout&&(s=setTimeout(function(){n=!0,l(new gr(`Response timeout while trying to fetch ${t.url} (over ${t.timeout}ms)`,"body-timeout"))},t.timeout)),e.on("error",function(o){o.name==="AbortError"?(n=!0,l(o)):l(new gr(`Invalid response body while trying to fetch ${t.url}: ${o.message}`,"system",o))}),e.on("data",function(o){if(!(n||o===null)){if(t.size&&a+o.length>t.size){n=!0,l(new gr(`content size at ${t.url} over limit: ${t.size}`,"max-size"));return}a+=o.length,r.push(o)}}),e.on("end",function(){if(!n){clearTimeout(s);try{i(Buffer.concat(r,a))}catch(o){l(new gr(`Could not create Buffer from response body for ${t.url}: ${o.message}`,"system",o))}}})})}function pH(t,e){if(typeof qA!="function")throw new Error("The package `encoding` must be installed to use the textConverted() function");const r=e.get("content-type");let a="utf-8",n,i;return r&&(n=/charset=([^;]*)/i.exec(r)),i=t.slice(0,1024).toString(),!n&&i&&(n=/<meta.+?charset=(['"])(.+?)\1/i.exec(i)),!n&&i&&(n=/<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(i),n||(n=/<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(i),n&&n.pop()),n&&(n=/charset=(.*)/i.exec(n.pop()))),!n&&i&&(n=/<\?xml.+?encoding=(['"])(.+?)\1/i.exec(i)),n&&(a=n.pop(),(a==="gb2312"||a==="gbk")&&(a="gb18030")),qA(t,"UTF-8",a).toString()}function t9(t){return 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"?!1:t.constructor.name==="URLSearchParams"||Object.prototype.toString.call(t)==="[object URLSearchParams]"||typeof t.sort=="function"}function gu(t){return typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&typeof t.constructor.name=="string"&&/^(Blob|File)$/.test(t.constructor.name)&&/^(Blob|File)$/.test(t[Symbol.toStringTag])}function r9(t){let e,r,a=t.body;if(t.bodyUsed)throw new Error("cannot clone body after it is used");return a instanceof qr&&typeof a.getBoundary!="function"&&(e=new Bb,r=new Bb,a.pipe(e),a.pipe(r),t[Cn].body=e,a=r),a}function a9(t){return t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":t9(t)?"application/x-www-form-urlencoded;charset=UTF-8":gu(t)?t.type||null:Buffer.isBuffer(t)||Object.prototype.toString.call(t)==="[object ArrayBuffer]"||ArrayBuffer.isView(t)?null:typeof t.getBoundary=="function"?`multipart/form-data;boundary=${t.getBoundary()}`:t instanceof qr?null:"text/plain;charset=UTF-8"}function n9(t){const e=t.body;return e===null?0:gu(e)?e.size:Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&(e._lengthRetrievers&&e._lengthRetrievers.length==0||e.hasKnownLength&&e.hasKnownLength())?e.getLengthSync():null}function cH(t,e){const r=e.body;r===null?t.end():gu(r)?r.stream().pipe(t):Buffer.isBuffer(r)?(t.write(r),t.end()):r.pipe(t)}ar.Promise=global.Promise;var i9=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,$A=/[^\t\x20-\x7e\x80-\xff]/;function Wo(t){if(t=`${t}`,i9.test(t)||t==="")throw new TypeError(`${t} is not a legal HTTP header name`)}function Cb(t){if(t=`${t}`,$A.test(t))throw new TypeError(`${t} is not a legal HTTP header value`)}function os(t,e){e=e.toLowerCase();for(const r in t)if(r.toLowerCase()===e)return r}var Nt=Symbol("map"),Ua=class l9{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:void 0;if(this[Nt]=Object.create(null),e instanceof l9){const r=e.raw(),a=Object.keys(r);for(const n of a)for(const i of r[n])this.append(n,i);return}if(e!=null)if(typeof e=="object"){const r=e[Symbol.iterator];if(r!=null){if(typeof r!="function")throw new TypeError("Header pairs must be iterable");const a=[];for(const n of e){if(typeof n!="object"||typeof n[Symbol.iterator]!="function")throw new TypeError("Each header pair must be iterable");a.push(Array.from(n))}for(const n of a){if(n.length!==2)throw new TypeError("Each header pair must be a name/value tuple");this.append(n[0],n[1])}}else for(const a of Object.keys(e)){const n=e[a];this.append(a,n)}}else throw new TypeError("Provided initializer must be an object")}get(e){e=`${e}`,Wo(e);const r=os(this[Nt],e);return r===void 0?null:this[Nt][r].join(", ")}forEach(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,a=eh(this),n=0;for(;n<a.length;){var i=a[n];const l=i[0],s=i[1];e.call(r,s,l,this),a=eh(this),n++}}set(e,r){e=`${e}`,r=`${r}`,Wo(e),Cb(r);const a=os(this[Nt],e);this[Nt][a!==void 0?a:e]=[r]}append(e,r){e=`${e}`,r=`${r}`,Wo(e),Cb(r);const a=os(this[Nt],e);a!==void 0?this[Nt][a].push(r):this[Nt][e]=[r]}has(e){return e=`${e}`,Wo(e),os(this[Nt],e)!==void 0}delete(e){e=`${e}`,Wo(e);const r=os(this[Nt],e);r!==void 0&&delete this[Nt][r]}raw(){return this[Nt]}keys(){return Pm(this,"key")}values(){return Pm(this,"value")}[Symbol.iterator](){return Pm(this,"key+value")}};Ua.prototype.entries=Ua.prototype[Symbol.iterator];Object.defineProperty(Ua.prototype,Symbol.toStringTag,{value:"Headers",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(Ua.prototype,{get:{enumerable:!0},forEach:{enumerable:!0},set:{enumerable:!0},append:{enumerable:!0},has:{enumerable:!0},delete:{enumerable:!0},keys:{enumerable:!0},values:{enumerable:!0},entries:{enumerable:!0}});function eh(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"key+value";return Object.keys(t[Nt]).sort().map(e==="key"?function(a){return a.toLowerCase()}:e==="value"?function(a){return t[Nt][a].join(", ")}:function(a){return[a.toLowerCase(),t[Nt][a].join(", ")]})}var th=Symbol("internal");function Pm(t,e){const r=Object.create(MB);return r[th]={target:t,kind:e,index:0},r}var MB=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==MB)throw new TypeError("Value of `this` is not a HeadersIterator");var t=this[th];const e=t.target,r=t.kind,a=t.index,n=eh(e,r),i=n.length;return a>=i?{value:void 0,done:!0}:(this[th].index=a+1,{value:n[a],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(MB,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});function mH(t){const e=Object.assign({__proto__:null},t[Nt]),r=os(t[Nt],"Host");return r!==void 0&&(e[r]=e[r][0]),e}function gH(t){const e=new Ua;for(const r of Object.keys(t))if(!i9.test(r))if(Array.isArray(t[r]))for(const a of t[r])$A.test(a)||(e[Nt][r]===void 0?e[Nt][r]=[a]:e[Nt][r].push(a));else $A.test(t[r])||(e[Nt][r]=[t[r]]);return e}var Nn=Symbol("Response internals"),AH=rf.STATUS_CODES,Xa=class s9{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};ar.call(this,e,r);const a=r.status||200,n=new Ua(r.headers);if(e!=null&&!n.has("Content-Type")){const i=a9(e);i&&n.append("Content-Type",i)}this[Nn]={url:r.url,status:a,statusText:r.statusText||AH[a],headers:n,counter:r.counter}}get url(){return this[Nn].url||""}get status(){return this[Nn].status}get ok(){return this[Nn].status>=200&&this[Nn].status<300}get redirected(){return this[Nn].counter>0}get statusText(){return this[Nn].statusText}get headers(){return this[Nn].headers}clone(){return new s9(r9(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}};ar.mixIn(Xa.prototype);Object.defineProperties(Xa.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}});Object.defineProperty(Xa.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});var mn=Symbol("Request internals"),hH=M0.URL||e9.default.URL,BH=M0.parse,CH=M0.format;function zm(t){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(t)&&(t=new hH(t).toString()),BH(t)}var wH="destroy"in qr.Readable.prototype;function Zp(t){return typeof t=="object"&&typeof t[mn]=="object"}function bH(t){const e=t&&typeof t=="object"&&Object.getPrototypeOf(t);return!!(e&&e.constructor.name==="AbortSignal")}var Ls=class o9{constructor(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a;Zp(e)?a=zm(e.url):(e&&e.href?a=zm(e.href):a=zm(`${e}`),e={});let n=r.method||e.method||"GET";if(n=n.toUpperCase(),(r.body!=null||Zp(e)&&e.body!==null)&&(n==="GET"||n==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body!=null?r.body:Zp(e)&&e.body!==null?r9(e):null;ar.call(this,i,{timeout:r.timeout||e.timeout||0,size:r.size||e.size||0});const l=new Ua(r.headers||e.headers||{});if(i!=null&&!l.has("Content-Type")){const o=a9(i);o&&l.append("Content-Type",o)}let s=Zp(e)?e.signal:null;if("signal"in r&&(s=r.signal),s!=null&&!bH(s))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[mn]={method:n,redirect:r.redirect||e.redirect||"follow",headers:l,parsedURL:a,signal:s},this.follow=r.follow!==void 0?r.follow:e.follow!==void 0?e.follow:20,this.compress=r.compress!==void 0?r.compress:e.compress!==void 0?e.compress:!0,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent}get method(){return this[mn].method}get url(){return CH(this[mn].parsedURL)}get headers(){return this[mn].headers}get redirect(){return this[mn].redirect}get signal(){return this[mn].signal}clone(){return new o9(this)}};ar.mixIn(Ls.prototype);Object.defineProperty(Ls.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0});Object.defineProperties(Ls.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}});function KH(t){const e=t[mn].parsedURL,r=new Ua(t[mn].headers);if(r.has("Accept")||r.set("Accept","*/*"),!e.protocol||!e.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(e.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(t.signal&&t.body instanceof qr.Readable&&!wH)throw new Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let a=null;if(t.body==null&&/^(POST|PUT)$/i.test(t.method)&&(a="0"),t.body!=null){const i=n9(t);typeof i=="number"&&(a=String(i))}a&&r.set("Content-Length",a),r.has("User-Agent")||r.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip,deflate");let n=t.agent;return typeof n=="function"&&(n=n(e)),Object.assign({},e,{method:t.method,headers:mH(r),agent:n})}function Id(t){Error.call(this,t),this.type="aborted",this.message=t,Error.captureStackTrace(this,this.constructor)}Id.prototype=Object.create(Error.prototype);Id.prototype.constructor=Id;Id.prototype.name="AbortError";var Dd=M0.URL||e9.default.URL,wb=qr.PassThrough,fH=function(e,r){const a=new Dd(r).hostname,n=new Dd(e).hostname;return a===n||a[a.length-n.length-1]==="."&&a.endsWith(n)},QH=function(e,r){const a=new Dd(r).protocol,n=new Dd(e).protocol;return a===n};function ei(t,e){if(!ei.Promise)throw new Error("native promise missing, set fetch.Promise to your favorite alternative");return ar.Promise=ei.Promise,new ei.Promise(function(r,a){const n=new Ls(t,e),i=KH(n),l=(i.protocol==="https:"?f5:rf).request,s=n.signal;let o=null;const d=function(){let h=new Id("The user aborted a request.");a(h),n.body&&n.body instanceof qr.Readable&&jm(n.body,h),!(!o||!o.body)&&o.body.emit("error",h)};if(s&&s.aborted){d();return}const u=function(){d(),A()},c=l(i);let p;s&&s.addEventListener("abort",u);function A(){c.abort(),s&&s.removeEventListener("abort",u),clearTimeout(p)}n.timeout&&c.once("socket",function(m){p=setTimeout(function(){a(new gr(`network timeout at: ${n.url}`,"request-timeout")),A()},n.timeout)}),c.on("error",function(m){a(new gr(`request to ${n.url} failed, reason: ${m.message}`,"system",m)),o&&o.body&&jm(o.body,m),A()}),WH(c,function(m){s&&s.aborted||o&&o.body&&jm(o.body,m)}),parseInt(process.version.substring(1))<14&&c.on("socket",function(m){m.addListener("close",function(h){const C=m.listenerCount("data")>0;if(o&&C&&!h&&!(s&&s.aborted)){const w=new Error("Premature close");w.code="ERR_STREAM_PREMATURE_CLOSE",o.body.emit("error",w)}})}),c.on("response",function(m){clearTimeout(p);const h=gH(m.headers);if(ei.isRedirect(m.statusCode)){const K=h.get("Location");let W=null;try{W=K===null?null:new Dd(K,n.url).toString()}catch{if(n.redirect!=="manual"){a(new gr(`uri requested responds with an invalid redirect URL: ${K}`,"invalid-redirect")),A();return}}switch(n.redirect){case"error":a(new gr(`uri requested responds with a redirect, redirect mode is set to error: ${n.url}`,"no-redirect")),A();return;case"manual":if(W!==null)try{h.set("Location",W)}catch(v){a(v)}break;case"follow":if(W===null)break;if(n.counter>=n.follow){a(new gr(`maximum redirect reached at: ${n.url}`,"max-redirect")),A();return}const R={headers:new Ua(n.headers),follow:n.follow,counter:n.counter+1,agent:n.agent,compress:n.compress,method:n.method,body:n.body,signal:n.signal,timeout:n.timeout,size:n.size};if(!fH(n.url,W)||!QH(n.url,W))for(const v of["authorization","www-authenticate","cookie","cookie2"])R.headers.delete(v);if(m.statusCode!==303&&n.body&&n9(n)===null){a(new gr("Cannot follow redirect with body being a readable stream","unsupported-redirect")),A();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&n.method==="POST")&&(R.method="GET",R.body=void 0,R.headers.delete("content-length")),r(ei(new Ls(W,R))),A();return}}m.once("end",function(){s&&s.removeEventListener("abort",u)});let C=m.pipe(new wb);const w={url:n.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:n.size,timeout:n.timeout,counter:n.counter},b=h.get("Content-Encoding");if(!n.compress||n.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){o=new Xa(C,w),r(o);return}const f={flush:Gi.Z_SYNC_FLUSH,finishFlush:Gi.Z_SYNC_FLUSH};if(b=="gzip"||b=="x-gzip"){C=C.pipe(Gi.createGunzip(f)),o=new Xa(C,w),r(o);return}if(b=="deflate"||b=="x-deflate"){const K=m.pipe(new wb);K.once("data",function(W){(W[0]&15)===8?C=C.pipe(Gi.createInflate()):C=C.pipe(Gi.createInflateRaw()),o=new Xa(C,w),r(o)}),K.on("end",function(){o||(o=new Xa(C,w),r(o))});return}if(b=="br"&&typeof Gi.createBrotliDecompress=="function"){C=C.pipe(Gi.createBrotliDecompress()),o=new Xa(C,w),r(o);return}o=new Xa(C,w),r(o)}),cH(c,n)})}function WH(t,e){let r;t.on("socket",function(a){r=a}),t.on("response",function(a){const n=a.headers;n["transfer-encoding"]==="chunked"&&!n["content-length"]&&a.once("close",function(i){if(r&&r.listenerCount("data")>0&&!i){const s=new Error("Premature close");s.code="ERR_STREAM_PREMATURE_CLOSE",e(s)}})})}function jm(t,e){t.destroy?t.destroy(e):(t.emit("error",e),t.end())}ei.isRedirect=function(t){return t===301||t===302||t===303||t===307||t===308};ei.Promise=global.Promise;var vH=ei;m1();SW();kB();var FH=t=>t instanceof Ys;LB();var yH=af.deprecate(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.'),Wa=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},Xp,va,qm,RH=class{constructor(t){Xp.add(this),va.set(this,new Map),t&&(yH(),t.forEach(({name:e,value:r,fileName:a})=>this.append(e,r,a)))}static[(va=new WeakMap,Xp=new WeakSet,Symbol.hasInstance)](t){return!!(t&&Pt(t.constructor)&&t[Symbol.toStringTag]==="FormData"&&Pt(t.append)&&Pt(t.set)&&Pt(t.get)&&Pt(t.getAll)&&Pt(t.has)&&Pt(t.delete)&&Pt(t.entries)&&Pt(t.values)&&Pt(t.keys)&&Pt(t[Symbol.iterator])&&Pt(t.forEach))}append(t,e,r){Wa(this,Xp,"m",qm).call(this,{name:t,fileName:r,append:!0,rawValue:e,argsLength:arguments.length})}set(t,e,r){Wa(this,Xp,"m",qm).call(this,{name:t,fileName:r,append:!1,rawValue:e,argsLength:arguments.length})}get(t){const e=Wa(this,va,"f").get(String(t));return e?e[0]:null}getAll(t){const e=Wa(this,va,"f").get(String(t));return e?e.slice():[]}has(t){return Wa(this,va,"f").has(String(t))}delete(t){Wa(this,va,"f").delete(String(t))}*keys(){for(const t of Wa(this,va,"f").keys())yield t}*entries(){for(const t of this.keys()){const e=this.getAll(t);for(const r of e)yield[t,r]}}*values(){for(const[,t]of this)yield t}[(qm=function({name:e,rawValue:r,append:a,fileName:n,argsLength:i}){const l=a?"append":"set";if(i<2)throw new TypeError(`Failed to execute '${l}' on 'FormData': 2 arguments required, but only ${i} present.`);e=String(e);let s;if(UB(r))s=n===void 0?r:new Ns([r],n,{type:r.type,lastModified:r.lastModified});else if(FH(r))s=new Ns([r],n===void 0?"blob":n,{type:r.type});else{if(n)throw new TypeError(`Failed to execute '${l}' on 'FormData': parameter 2 is not of type 'Blob'.`);s=String(r)}const o=Wa(this,va,"f").get(e);if(!o)return void Wa(this,va,"f").set(e,[s]);if(!a)return void Wa(this,va,"f").set(e,[s]);o.push(s)},Symbol.iterator)](){return this.entries()}forEach(t,e){for(const[r,a]of this)t.call(e,a,r,this)}get[Symbol.toStringTag](){return"FormData"}[af.inspect.custom](){return this[Symbol.toStringTag]}};kB();m1();var d9=Gr(WX(),1),EH=Gr(FX(),1),bb="abcdefghijklmnopqrstuvwxyz0123456789";function GH(){let t=16,e="";for(;t--;)e+=bb[Math.random()*bb.length<<0];return e}var SH=GH,ZH=t=>Object.prototype.toString.call(t).slice(8,-1).toLowerCase();function XH(t){if(ZH(t)!=="object")return!1;const e=Object.getPrototypeOf(t);return e==null?!0:(e.constructor&&e.constructor.toString())===Object.toString()}var Kb=XH,HH=t=>String(t).replace(/\r|\n/g,(e,r,a)=>e==="\r"&&a[r+1]!==`
`||e===`
`&&a[r-1]!=="\r"?`\r
`:e),fb=HH,VH=t=>String(t).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22"),Qb=VH,YH=t=>typeof t=="function",rl=YH,es=t=>!!(t&&typeof t=="object"&&rl(t.constructor)&&t[Symbol.toStringTag]==="File"&&rl(t.stream)&&t.name!=null&&t.size!=null&&t.lastModified!=null),NH=t=>!!(t&&rl(t.constructor)&&t[Symbol.toStringTag]==="FormData"&&rl(t.append)&&rl(t.getAll)&&rl(t.entries)&&rl(t[Symbol.iterator])),vo=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},Kt=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},Hp,Ln,Fo,Vp,yo,Di,Ro,Eo,Yp,$m,LH={enableAdditionalHeaders:!1},TH=class{constructor(t,e,r){if(Hp.add(this),Ln.set(this,`\r
`),Fo.set(this,void 0),Vp.set(this,void 0),yo.set(this,"-".repeat(2)),Di.set(this,new TextEncoder),Ro.set(this,void 0),Eo.set(this,void 0),Yp.set(this,void 0),!NH(t))throw new TypeError("Expected first argument to be a FormData instance.");let a;if(Kb(e)?r=e:a=e,a||(a=SH()),typeof a!="string")throw new TypeError("Expected boundary argument to be a string.");if(r&&!Kb(r))throw new TypeError("Expected options argument to be an object.");vo(this,Eo,t,"f"),vo(this,Yp,{...LH,...r},"f"),vo(this,Fo,Kt(this,Di,"f").encode(Kt(this,Ln,"f")),"f"),vo(this,Vp,Kt(this,Fo,"f").byteLength,"f"),this.boundary=`form-data-boundary-${a}`,this.contentType=`multipart/form-data; boundary=${this.boundary}`,vo(this,Ro,Kt(this,Di,"f").encode(`${Kt(this,yo,"f")}${this.boundary}${Kt(this,yo,"f")}${Kt(this,Ln,"f").repeat(2)}`),"f"),this.contentLength=String(this.getContentLength()),this.headers=Object.freeze({"Content-Type":this.contentType,"Content-Length":this.contentLength}),Object.defineProperties(this,{boundary:{writable:!1,configurable:!1},contentType:{writable:!1,configurable:!1},contentLength:{writable:!1,configurable:!1},headers:{writable:!1,configurable:!1}})}getContentLength(){let t=0;for(const[e,r]of Kt(this,Eo,"f")){const a=es(r)?r:Kt(this,Di,"f").encode(fb(r));t+=Kt(this,Hp,"m",$m).call(this,e,a).byteLength,t+=es(a)?a.size:a.byteLength,t+=Kt(this,Vp,"f")}return t+Kt(this,Ro,"f").byteLength}*values(){for(const[t,e]of Kt(this,Eo,"f").entries()){const r=es(e)?e:Kt(this,Di,"f").encode(fb(e));yield Kt(this,Hp,"m",$m).call(this,t,r),yield r,yield Kt(this,Fo,"f")}yield Kt(this,Ro,"f")}async*encode(){for(const t of this.values())es(t)?yield*t.stream():yield t}[(Ln=new WeakMap,Fo=new WeakMap,Vp=new WeakMap,yo=new WeakMap,Di=new WeakMap,Ro=new WeakMap,Eo=new WeakMap,Yp=new WeakMap,Hp=new WeakSet,$m=function(e,r){let a="";return a+=`${Kt(this,yo,"f")}${this.boundary}${Kt(this,Ln,"f")}`,a+=`Content-Disposition: form-data; name="${Qb(e)}"`,es(r)&&(a+=`; filename="${Qb(r.name)}"${Kt(this,Ln,"f")}`,a+=`Content-Type: ${r.type||"application/octet-stream"}`),Kt(this,Yp,"f").enableAdditionalHeaders===!0&&(a+=`${Kt(this,Ln,"f")}Content-Length: ${es(r)?r.size:r.byteLength}`),Kt(this,Di,"f").encode(`${a}${Kt(this,Ln,"f").repeat(2)}`)},Symbol.iterator)](){return this.values()}[Symbol.asyncIterator](){return this.encode()}},kH=class{constructor(t){this.body=t}get[Symbol.toStringTag](){return"MultipartBody"}},UH=Gr(yX(),1),Wb=!1;async function _H(t,...e){const{fileFromPath:r}=await Promise.resolve().then(()=>(XX(),VW));return Wb||(console.warn(`fileFromPath is deprecated; use fs.createReadStream(${JSON.stringify(t)}) instead`),Wb=!0),await r(t,...e)}var IH=new d9.default({keepAlive:!0,timeout:5*60*1e3}),DH=new d9.default.HttpsAgent({keepAlive:!0,timeout:5*60*1e3});async function MH(t,e){const r=new TH(t),a=qr.Readable.from(r),n=new kH(a),i={...e.headers,...r.headers,"Content-Length":r.contentLength};return{...e,body:n,headers:i}}function xH(){return typeof AbortController>"u"&&(globalThis.AbortController=EH.AbortController),{kind:"node",fetch:vH,Request:Ls,Response:Xa,Headers:Ua,FormData:RH,Blob:Ys,File:Ns,ReadableStream:UH.ReadableStream,getMultipartRequestOptions:MH,getDefaultAgent:t=>t.startsWith("https")?DH:IH,fileFromPath:_H,isFsReadStream:t=>t instanceof gd.ReadStream}}cd||dH(xH(),{auto:!0});var u9={};iu(u9,{APIConnectionError:()=>Au,APIConnectionTimeoutError:()=>A1,APIError:()=>Nr,APIUserAbortError:()=>Ci,AuthenticationError:()=>JB,BadRequestError:()=>xB,ConflictError:()=>zB,InternalServerError:()=>$B,NotFoundError:()=>PB,OpenAIError:()=>it,PermissionDeniedError:()=>OB,RateLimitError:()=>qB,UnprocessableEntityError:()=>jB});var it=class extends Error{},Nr=class rh extends it{constructor(e,r,a,n){super(`${rh.makeMessage(e,r,a)}`),this.status=e,this.headers=n;const i=r;this.error=i,this.code=i==null?void 0:i.code,this.param=i==null?void 0:i.param,this.type=i==null?void 0:i.type}static makeMessage(e,r,a){const n=r!=null&&r.message?typeof r.message=="string"?r.message:JSON.stringify(r.message):r?JSON.stringify(r):a;return e&&n?`${e} ${n}`:e?`${e} status code (no body)`:n||"(no status code or body)"}static generate(e,r,a,n){if(!e)return new Au({cause:lh(r)});const i=r==null?void 0:r.error;return e===400?new xB(e,i,a,n):e===401?new JB(e,i,a,n):e===403?new OB(e,i,a,n):e===404?new PB(e,i,a,n):e===409?new zB(e,i,a,n):e===422?new jB(e,i,a,n):e===429?new qB(e,i,a,n):e>=500?new $B(e,i,a,n):new rh(e,i,a,n)}},Ci=class extends Nr{constructor({message:t}={}){super(void 0,void 0,t||"Request was aborted.",void 0),this.status=void 0}},Au=class extends Nr{constructor({message:t,cause:e}){super(void 0,void 0,t||"Connection error.",void 0),this.status=void 0,e&&(this.cause=e)}},A1=class extends Au{constructor({message:t}={}){super({message:t??"Request timed out."})}},xB=class extends Nr{constructor(){super(...arguments),this.status=400}},JB=class extends Nr{constructor(){super(...arguments),this.status=401}},OB=class extends Nr{constructor(){super(...arguments),this.status=403}},PB=class extends Nr{constructor(){super(...arguments),this.status=404}},zB=class extends Nr{constructor(){super(...arguments),this.status=409}},jB=class extends Nr{constructor(){super(...arguments),this.status=422}},qB=class extends Nr{constructor(){super(...arguments),this.status=429}},$B=class extends Nr{},ah=class Jo{constructor(e,r){this.iterator=e,this.controller=r}static fromSSEResponse(e,r){let a=!1;const n=new JH;async function*i(){if(!e.body)throw r.abort(),new it("Attempted to iterate over a response with no body");const s=new u0,o=vb(e.body);for await(const d of o)for(const u of s.decode(d)){const c=n.decode(u);c&&(yield c)}for(const d of s.flush()){const u=n.decode(d);u&&(yield u)}}async function*l(){if(a)throw new Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let s=!1;try{for await(const o of i())if(!s){if(o.data.startsWith("[DONE]")){s=!0;continue}if(o.event===null){let d;try{d=JSON.parse(o.data)}catch(u){throw console.error("Could not parse message into JSON:",o.data),console.error("From chunk:",o.raw),u}if(d&&d.error)throw new Nr(void 0,d.error,void 0,void 0);yield d}}s=!0}catch(o){if(o instanceof Error&&o.name==="AbortError")return;throw o}finally{s||r.abort()}}return new Jo(l,r)}static fromReadableStream(e,r){let a=!1;async function*n(){const l=new u0,s=vb(e);for await(const o of s)for(const d of l.decode(o))yield d;for(const o of l.flush())yield o}async function*i(){if(a)throw new Error("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");a=!0;let l=!1;try{for await(const s of n())l||s&&(yield JSON.parse(s));l=!0}catch(s){if(s instanceof Error&&s.name==="AbortError")return;throw s}finally{l||r.abort()}}return new Jo(i,r)}[Symbol.asyncIterator](){return this.iterator()}tee(){const e=[],r=[],a=this.iterator(),n=i=>({next:()=>{if(i.length===0){const l=a.next();e.push(l),r.push(l)}return i.shift()}});return[new Jo(()=>n(e),this.controller),new Jo(()=>n(r),this.controller)]}toReadableStream(){const e=this;let r;const a=new TextEncoder;return new PW({async start(){r=e[Symbol.asyncIterator]()},async pull(n){try{const{value:i,done:l}=await r.next();if(l)return n.close();const s=a.encode(JSON.stringify(i)+`
`);n.enqueue(s)}catch(i){n.error(i)}},async cancel(){var n;await((n=r.return)==null?void 0:n.call(r))}})}},JH=class{constructor(){this.event=null,this.data=[],this.chunks=[]}decode(t){if(t.endsWith("\r")&&(t=t.substring(0,t.length-1)),!t){if(!this.event&&!this.data.length)return null;const n={event:this.event,data:this.data.join(`
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],n}if(this.chunks.push(t),t.startsWith(":"))return null;let[e,r,a]=OH(t,":");return a.startsWith(" ")&&(a=a.substring(1)),e==="event"?this.event=a:e==="data"&&this.data.push(a),null}},u0=class nh{constructor(){this.buffer=[],this.trailingCR=!1}decode(e){let r=this.decodeText(e);if(this.trailingCR&&(r="\r"+r,this.trailingCR=!1),r.endsWith("\r")&&(this.trailingCR=!0,r=r.slice(0,-1)),!r)return[];const a=nh.NEWLINE_CHARS.has(r[r.length-1]||"");let n=r.split(nh.NEWLINE_REGEXP);return n.length===1&&!a?(this.buffer.push(n[0]),[]):(this.buffer.length>0&&(n=[this.buffer.join("")+n[0],...n.slice(1)],this.buffer=[]),a||(this.buffer=[n.pop()||""]),n)}decodeText(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof Buffer<"u"){if(e instanceof Buffer)return e.toString();if(e instanceof Uint8Array)return Buffer.from(e).toString();throw new it(`Unexpected: received non-Uint8Array (${e.constructor.name}) stream chunk in an environment with a global "Buffer" defined, which this library assumes to be Node. Please report this error.`)}if(typeof TextDecoder<"u"){if(e instanceof Uint8Array||e instanceof ArrayBuffer)return this.textDecoder??(this.textDecoder=new TextDecoder("utf8")),this.textDecoder.decode(e);throw new it(`Unexpected: received non-Uint8Array/ArrayBuffer (${e.constructor.name}) in a web platform. Please report this error.`)}throw new it("Unexpected: neither Buffer nor TextDecoder are available as globals. Please report this error.")}flush(){if(!this.buffer.length&&!this.trailingCR)return[];const e=[this.buffer.join("")];return this.buffer=[],this.trailingCR=!1,e}};u0.NEWLINE_CHARS=new Set([`
`,"\r","\v","\f","","","","…","\u2028","\u2029"]);u0.NEWLINE_REGEXP=/\r\n|[\n\r\x0b\x0c\x1c\x1d\x1e\x85\u2028\u2029]/g;function OH(t,e){const r=t.indexOf(e);return r!==-1?[t.substring(0,r),e,t.substring(r+e.length)]:[t,"",""]}function vb(t){if(t[Symbol.asyncIterator])return t;const e=t.getReader();return{async next(){try{const r=await e.read();return r!=null&&r.done&&e.releaseLock(),r}catch(r){throw e.releaseLock(),r}},async return(){const r=e.cancel();return e.releaseLock(),await r,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}var p9=t=>t!=null&&typeof t=="object"&&typeof t.url=="string"&&typeof t.blob=="function",PH=t=>t!=null&&typeof t=="object"&&typeof t.name=="string"&&typeof t.lastModified=="number"&&c9(t),c9=t=>t!=null&&typeof t=="object"&&typeof t.size=="number"&&typeof t.type=="string"&&typeof t.text=="function"&&typeof t.slice=="function"&&typeof t.arrayBuffer=="function",zH=t=>PH(t)||p9(t)||$W(t);async function m9(t,e,r={}){var n;if(t=await t,p9(t)){const i=await t.blob();return e||(e=new URL(t.url).pathname.split(/[\\/]/).pop()??"unknown_file"),new zA([i],e,r)}const a=await jH(t);if(e||(e=$H(t)??"unknown_file"),!r.type){const i=(n=a[0])==null?void 0:n.type;typeof i=="string"&&(r={...r,type:i})}return new zA(a,e,r)}async function jH(t){var r;let e=[];if(typeof t=="string"||ArrayBuffer.isView(t)||t instanceof ArrayBuffer)e.push(t);else if(c9(t))e.push(await t.arrayBuffer());else if(eV(t))for await(const a of t)e.push(a);else throw new Error(`Unexpected data type: ${typeof t}; constructor: ${(r=t==null?void 0:t.constructor)==null?void 0:r.name}; props: ${qH(t)}`);return e}function qH(t){return`[${Object.getOwnPropertyNames(t).map(r=>`"${r}"`).join(", ")}]`}function $H(t){var e;return eg(t.name)||eg(t.filename)||((e=eg(t.path))==null?void 0:e.split(/[\\/]/).pop())}var eg=t=>{if(typeof t=="string")return t;if(typeof Buffer<"u"&&t instanceof Buffer)return String(t)},eV=t=>t!=null&&typeof t=="object"&&typeof t[Symbol.asyncIterator]=="function",Fb=t=>t&&typeof t=="object"&&t.body&&t[Symbol.toStringTag]==="MultipartBody",Md=async t=>{const e=await tV(t.body);return zW(e,t)},tV=async t=>{const e=new OW;return await Promise.all(Object.entries(t||{}).map(([r,a])=>ih(e,r,a))),e},ih=async(t,e,r)=>{if(r!==void 0){if(r==null)throw new TypeError(`Received null for "${e}"; to pass null in FormData, you must use the string 'null'`);if(typeof r=="string"||typeof r=="number"||typeof r=="boolean")t.append(e,String(r));else if(zH(r)){const a=await m9(r);t.append(e,a)}else if(Array.isArray(r))await Promise.all(r.map(a=>ih(t,e+"[]",a)));else if(typeof r=="object")await Promise.all(Object.entries(r).map(([a,n])=>ih(t,`${e}[${a}]`,n)));else throw new TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${r} instead`)}},rV=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},aV=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},Np;async function g9(t){const{response:e}=t;if(t.options.stream)return vs("response",e.status,e.url,e.headers,e.body),t.options.__streamClass?t.options.__streamClass.fromSSEResponse(e,t.controller):ah.fromSSEResponse(e,t.controller);if(e.status===204)return null;if(t.options.__binaryResponse)return e;const r=e.headers.get("content-type");if((r==null?void 0:r.includes("application/json"))||(r==null?void 0:r.includes("application/vnd.api+json"))){const i=await e.json();return vs("response",e.status,e.url,e.headers,i),i}const n=await e.text();return vs("response",e.status,e.url,e.headers,n),n}var A9=class h9 extends Promise{constructor(e,r=g9){super(a=>{a(null)}),this.responsePromise=e,this.parseResponse=r}_thenUnwrap(e){return new h9(this.responsePromise,async r=>e(await this.parseResponse(r)))}asResponse(){return this.responsePromise.then(e=>e.response)}async withResponse(){const[e,r]=await Promise.all([this.parse(),this.asResponse()]);return{data:e,response:r}}parse(){return this.parsedPromise||(this.parsedPromise=this.responsePromise.then(this.parseResponse)),this.parsedPromise}then(e,r){return this.parse().then(e,r)}catch(e){return this.parse().catch(e)}finally(e){return this.parse().finally(e)}},nV=class{constructor({baseURL:t,maxRetries:e=2,timeout:r=6e5,httpAgent:a,fetch:n}){this.baseURL=t,this.maxRetries=tg("maxRetries",e),this.timeout=tg("timeout",r),this.httpAgent=a,this.fetch=n??JW}authHeaders(t){return{}}defaultHeaders(t){return{Accept:"application/json","Content-Type":"application/json","User-Agent":this.getUserAgent(),...uV(),...this.authHeaders(t)}}validateHeaders(t,e){}defaultIdempotencyKey(){return`stainless-node-retry-${gV()}`}get(t,e){return this.methodRequest("get",t,e)}post(t,e){return this.methodRequest("post",t,e)}patch(t,e){return this.methodRequest("patch",t,e)}put(t,e){return this.methodRequest("put",t,e)}delete(t,e){return this.methodRequest("delete",t,e)}methodRequest(t,e,r){return this.request(Promise.resolve(r).then(a=>({method:t,path:e,...a})))}getAPIList(t,e,r){return this.requestAPIList(e,{method:"get",path:t,...r})}calculateContentLength(t){if(typeof t=="string"){if(typeof Buffer<"u")return Buffer.byteLength(t,"utf8").toString();if(typeof TextEncoder<"u")return new TextEncoder().encode(t).length.toString()}return null}buildRequest(t){var A;const{method:e,path:r,query:a,headers:n={}}=t,i=Fb(t.body)?t.body.body:t.body?JSON.stringify(t.body,null,2):null,l=this.calculateContentLength(i),s=this.buildURL(r,a);"timeout"in t&&tg("timeout",t.timeout);const o=t.timeout??this.timeout,d=t.httpAgent??this.httpAgent??jW(s),u=o+1e3;typeof((A=d==null?void 0:d.options)==null?void 0:A.timeout)=="number"&&u>(d.options.timeout??0)&&(d.options.timeout=u),this.idempotencyHeader&&e!=="get"&&(t.idempotencyKey||(t.idempotencyKey=this.defaultIdempotencyKey()),n[this.idempotencyHeader]=t.idempotencyKey);const c=this.buildHeaders({options:t,headers:n,contentLength:l});return{req:{method:e,...i&&{body:i},headers:c,...d&&{agent:d},signal:t.signal??null},url:s,timeout:o}}buildHeaders({options:t,headers:e,contentLength:r}){const a={};r&&(a["content-length"]=r);const n=this.defaultHeaders(t);return Gb(a,n),Gb(a,e),Fb(t.body)&&cd!=="node"&&delete a["content-type"],this.validateHeaders(a,e),a}async prepareOptions(t){}async prepareRequest(t,{url:e,options:r}){}parseHeaders(t){return t?Symbol.iterator in t?Object.fromEntries(Array.from(t).map(e=>[...e])):{...t}:{}}makeStatusError(t,e,r,a){return Nr.generate(t,e,r,a)}request(t,e=null){return new A9(this.makeRequest(t,e))}async makeRequest(t,e){var d,u;const r=await t;e==null&&(e=r.maxRetries??this.maxRetries),await this.prepareOptions(r);const{req:a,url:n,timeout:i}=this.buildRequest(r);if(await this.prepareRequest(a,{url:n,options:r}),vs("request",n,r,a.headers),(d=r.signal)!=null&&d.aborted)throw new Ci;const l=new AbortController,s=await this.fetchWithTimeout(n,a,i,l).catch(lh);if(s instanceof Error){if((u=r.signal)!=null&&u.aborted)throw new Ci;if(e)return this.retryRequest(r,e);throw s.name==="AbortError"?new A1:new Au({cause:s})}const o=lV(s.headers);if(!s.ok){if(e&&this.shouldRetry(s)){const C=`retrying, ${e} attempts remaining`;return vs(`response (error; ${C})`,s.status,n,o),this.retryRequest(r,e,o)}const c=await s.text().catch(C=>lh(C).message),p=pV(c),A=p?void 0:c;throw vs(`response (error; ${e?"(error; no more retries left)":"(error; not retryable)"})`,s.status,n,o,A),this.makeStatusError(s.status,p,A,o)}return{response:s,options:r,controller:l}}requestAPIList(t,e){const r=this.makeRequest(e,null);return new iV(this,r,t)}buildURL(t,e){const r=mV(t)?new URL(t):new URL(this.baseURL+(this.baseURL.endsWith("/")&&t.startsWith("/")?t.slice(1):t)),a=this.defaultQuery();return w9(a)||(e={...a,...e}),typeof e=="object"&&e&&!Array.isArray(e)&&(r.search=this.stringifyQuery(e)),r.toString()}stringifyQuery(t){return Object.entries(t).filter(([e,r])=>typeof r<"u").map(([e,r])=>{if(typeof r=="string"||typeof r=="number"||typeof r=="boolean")return`${encodeURIComponent(e)}=${encodeURIComponent(r)}`;if(r===null)return`${encodeURIComponent(e)}=`;throw new it(`Cannot stringify type ${typeof r}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}async fetchWithTimeout(t,e,r,a){const{signal:n,...i}=e||{};n&&n.addEventListener("abort",()=>a.abort());const l=setTimeout(()=>a.abort(),r);return this.getRequestClient().fetch.call(void 0,t,{signal:a.signal,...i}).finally(()=>{clearTimeout(l)})}getRequestClient(){return{fetch:this.fetch}}shouldRetry(t){const e=t.headers.get("x-should-retry");return e==="true"?!0:e==="false"?!1:t.status===408||t.status===409||t.status===429||t.status>=500}async retryRequest(t,e,r){let a;const n=r==null?void 0:r["retry-after-ms"];if(n){const l=parseFloat(n);Number.isNaN(l)||(a=l)}const i=r==null?void 0:r["retry-after"];if(i&&!a){const l=parseFloat(i);Number.isNaN(l)?a=Date.parse(i)-Date.now():a=l*1e3}if(!(a&&0<=a&&a<60*1e3)){const l=t.maxRetries??this.maxRetries;a=this.calculateDefaultRetryTimeoutMillis(e,l)}return await C9(a),this.makeRequest(t,e-1)}calculateDefaultRetryTimeoutMillis(t,e){const n=e-t,i=Math.min(.5*Math.pow(2,n),8),l=1-Math.random()*.25;return i*l*1e3}getUserAgent(){return`${this.constructor.name}/JS ${ss}`}},B9=class{constructor(t,e,r,a){Np.set(this,void 0),rV(this,Np,t,"f"),this.options=a,this.response=e,this.body=r}hasNextPage(){return this.getPaginatedItems().length?this.nextPageInfo()!=null:!1}async getNextPage(){const t=this.nextPageInfo();if(!t)throw new it("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");const e={...this.options};if("params"in t&&typeof e.query=="object")e.query={...e.query,...t.params};else if("url"in t){const r=[...Object.entries(e.query||{}),...t.url.searchParams.entries()];for(const[a,n]of r)t.url.searchParams.set(a,n);e.query=void 0,e.path=t.url.toString()}return await aV(this,Np,"f").requestAPIList(this.constructor,e)}async*iterPages(){let t=this;for(yield t;t.hasNextPage();)t=await t.getNextPage(),yield t}async*[(Np=new WeakMap,Symbol.asyncIterator)](){for await(const t of this.iterPages())for(const e of t.getPaginatedItems())yield e}},iV=class extends A9{constructor(t,e,r){super(e,async a=>new r(t,a.response,await g9(a),a.options))}async*[Symbol.asyncIterator](){const t=await this;for await(const e of t)yield e}},lV=t=>new Proxy(Object.fromEntries(t.entries()),{get(e,r){const a=r.toString();return e[a.toLowerCase()]||e[a]}}),sV={method:!0,path:!0,query:!0,body:!0,headers:!0,maxRetries:!0,stream:!0,timeout:!0,httpAgent:!0,signal:!0,idempotencyKey:!0,__binaryResponse:!0,__streamClass:!0},_a=t=>typeof t=="object"&&t!==null&&!w9(t)&&Object.keys(t).every(e=>b9(sV,e)),oV=()=>{if(typeof Deno<"u"&&Deno.build!=null)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":ss,"X-Stainless-OS":Rb(Deno.build.os),"X-Stainless-Arch":yb(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":Deno.version};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":ss,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":process.version};if(Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":ss,"X-Stainless-OS":Rb(process.platform),"X-Stainless-Arch":yb(process.arch),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":process.version};const t=dV();return t?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":ss,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${t.browser}`,"X-Stainless-Runtime-Version":t.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":ss,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function dV(){if(typeof navigator>"u"||!navigator)return null;const t=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(const{key:e,pattern:r}of t){const a=r.exec(navigator.userAgent);if(a){const n=a[1]||0,i=a[2]||0,l=a[3]||0;return{browser:e,version:`${n}.${i}.${l}`}}}return null}var yb=t=>t==="x32"?"x32":t==="x86_64"||t==="x64"?"x64":t==="arm"?"arm":t==="aarch64"||t==="arm64"?"arm64":t?`other:${t}`:"unknown",Rb=t=>(t=t.toLowerCase(),t.includes("ios")?"iOS":t==="android"?"Android":t==="darwin"?"MacOS":t==="win32"?"Windows":t==="freebsd"?"FreeBSD":t==="openbsd"?"OpenBSD":t==="linux"?"Linux":t?`Other:${t}`:"Unknown"),Eb,uV=()=>Eb??(Eb=oV()),pV=t=>{try{return JSON.parse(t)}catch{return}},cV=new RegExp("^(?:[a-z]+:)?//","i"),mV=t=>cV.test(t),C9=t=>new Promise(e=>setTimeout(e,t)),tg=(t,e)=>{if(typeof e!="number"||!Number.isInteger(e))throw new it(`${t} must be an integer`);if(e<0)throw new it(`${t} must be a positive integer`);return e},lh=t=>t instanceof Error?t:new Error(t),rg=t=>{var e,r,a,n,i;if(typeof process<"u")return((r=(e=process.env)==null?void 0:e[t])==null?void 0:r.trim())??void 0;if(typeof Deno<"u")return(i=(n=(a=Deno.env)==null?void 0:a.get)==null?void 0:n.call(a,t))==null?void 0:i.trim()};function w9(t){if(!t)return!0;for(const e in t)return!1;return!0}function b9(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function Gb(t,e){for(const r in e){if(!b9(e,r))continue;const a=r.toLowerCase();if(!a)continue;const n=e[r];n===null?delete t[a]:n!==void 0&&(t[a]=n)}}function vs(t,...e){typeof process<"u"&&process.env.DEBUG==="true"&&console.log(`OpenAI:DEBUG:${t}`,...e)}var gV=()=>"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)}),AV=()=>typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u",eC=class extends B9{constructor(t,e,r,a){super(t,e,r,a),this.data=r.data||[],this.object=r.object}getPaginatedItems(){return this.data??[]}nextPageParams(){return null}nextPageInfo(){return null}},vn=class extends B9{constructor(t,e,r,a){super(t,e,r,a),this.data=r.data||[]}getPaginatedItems(){return this.data??[]}nextPageParams(){const t=this.nextPageInfo();if(!t)return null;if("params"in t)return t.params;const e=Object.fromEntries(t.url.searchParams);return Object.keys(e).length?e:null}nextPageInfo(){var r;const t=this.getPaginatedItems();if(!t.length)return null;const e=(r=t[t.length-1])==null?void 0:r.id;return e?{params:{after:e}}:null}},yt=class{constructor(t){this._client=t}},p0=class extends yt{create(t,e){return this._client.post("/chat/completions",{body:t,...e,stream:t.stream??!1})}};p0||(p0={});var c0=class extends yt{constructor(){super(...arguments),this.completions=new p0(this._client)}};(function(t){t.Completions=p0})(c0||(c0={}));var m0=class extends yt{create(t,e){return this._client.post("/audio/speech",{body:t,...e,__binaryResponse:!0})}};m0||(m0={});var g0=class extends yt{create(t,e){return this._client.post("/audio/transcriptions",Md({body:t,...e}))}};g0||(g0={});var A0=class extends yt{create(t,e){return this._client.post("/audio/translations",Md({body:t,...e}))}};A0||(A0={});var h0=class extends yt{constructor(){super(...arguments),this.transcriptions=new g0(this._client),this.translations=new A0(this._client),this.speech=new m0(this._client)}};(function(t){t.Transcriptions=g0,t.Translations=A0,t.Speech=m0})(h0||(h0={}));var B0=class extends yt{create(t,e,r){return this._client.post(`/assistants/${t}/files`,{body:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}retrieve(t,e,r){return this._client.get(`/assistants/${t}/files/${e}`,{...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}list(t,e={},r){return _a(e)?this.list(t,{},e):this._client.getAPIList(`/assistants/${t}/files`,tC,{query:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}del(t,e,r){return this._client.delete(`/assistants/${t}/files/${e}`,{...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}},tC=class extends vn{};(function(t){t.AssistantFilesPage=tC})(B0||(B0={}));var C0=class extends yt{constructor(){super(...arguments),this.files=new B0(this._client)}create(t,e){return this._client.post("/assistants",{body:t,...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}retrieve(t,e){return this._client.get(`/assistants/${t}`,{...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}update(t,e,r){return this._client.post(`/assistants/${t}`,{body:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}list(t={},e){return _a(t)?this.list({},t):this._client.getAPIList("/assistants",rC,{query:t,...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}del(t,e){return this._client.delete(`/assistants/${t}`,{...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}},rC=class extends vn{};(function(t){t.AssistantsPage=rC,t.Files=B0,t.AssistantFilesPage=tC})(C0||(C0={}));function Sb(t){return typeof t.parse=="function"}var Fs=t=>(t==null?void 0:t.role)==="assistant",K9=t=>(t==null?void 0:t.role)==="function",f9=t=>(t==null?void 0:t.role)==="tool",ca=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},De=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},cr,uc,pc,Oo,Po,cc,zo,pn,jo,mc,gc,ds,sh,w0,oh,dh,uh,ph,Q9,ch,Zb=10,W9=class{constructor(){cr.add(this),this.controller=new AbortController,uc.set(this,void 0),pc.set(this,()=>{}),Oo.set(this,()=>{}),Po.set(this,void 0),cc.set(this,()=>{}),zo.set(this,()=>{}),pn.set(this,{}),this._chatCompletions=[],this.messages=[],jo.set(this,!1),mc.set(this,!1),gc.set(this,!1),ds.set(this,!1),ph.set(this,t=>{if(ca(this,mc,!0,"f"),t instanceof Error&&t.name==="AbortError"&&(t=new Ci),t instanceof Ci)return ca(this,gc,!0,"f"),this._emit("abort",t);if(t instanceof it)return this._emit("error",t);if(t instanceof Error){const e=new it(t.message);return e.cause=t,this._emit("error",e)}return this._emit("error",new it(String(t)))}),ca(this,uc,new Promise((t,e)=>{ca(this,pc,t,"f"),ca(this,Oo,e,"f")}),"f"),ca(this,Po,new Promise((t,e)=>{ca(this,cc,t,"f"),ca(this,zo,e,"f")}),"f"),De(this,uc,"f").catch(()=>{}),De(this,Po,"f").catch(()=>{})}_run(t){setTimeout(()=>{t().then(()=>{this._emitFinal(),this._emit("end")},De(this,ph,"f"))},0)}_addChatCompletion(t){var r;this._chatCompletions.push(t),this._emit("chatCompletion",t);const e=(r=t.choices[0])==null?void 0:r.message;return e&&this._addMessage(e),t}_addMessage(t,e=!0){if("content"in t||(t.content=null),this.messages.push(t),e){if(this._emit("message",t),(K9(t)||f9(t))&&t.content)this._emit("functionCallResult",t.content);else if(Fs(t)&&t.function_call)this._emit("functionCall",t.function_call);else if(Fs(t)&&t.tool_calls)for(const r of t.tool_calls)r.type==="function"&&this._emit("functionCall",r.function)}}_connected(){this.ended||(De(this,pc,"f").call(this),this._emit("connect"))}get ended(){return De(this,jo,"f")}get errored(){return De(this,mc,"f")}get aborted(){return De(this,gc,"f")}abort(){this.controller.abort()}on(t,e){return(De(this,pn,"f")[t]||(De(this,pn,"f")[t]=[])).push({listener:e}),this}off(t,e){const r=De(this,pn,"f")[t];if(!r)return this;const a=r.findIndex(n=>n.listener===e);return a>=0&&r.splice(a,1),this}once(t,e){return(De(this,pn,"f")[t]||(De(this,pn,"f")[t]=[])).push({listener:e,once:!0}),this}emitted(t){return new Promise((e,r)=>{ca(this,ds,!0,"f"),t!=="error"&&this.once("error",r),this.once(t,e)})}async done(){ca(this,ds,!0,"f"),await De(this,Po,"f")}async finalChatCompletion(){await this.done();const t=this._chatCompletions[this._chatCompletions.length-1];if(!t)throw new it("stream ended without producing a ChatCompletion");return t}async finalContent(){return await this.done(),De(this,cr,"m",sh).call(this)}async finalMessage(){return await this.done(),De(this,cr,"m",w0).call(this)}async finalFunctionCall(){return await this.done(),De(this,cr,"m",oh).call(this)}async finalFunctionCallResult(){return await this.done(),De(this,cr,"m",dh).call(this)}async totalUsage(){return await this.done(),De(this,cr,"m",uh).call(this)}allChatCompletions(){return[...this._chatCompletions]}_emit(t,...e){if(De(this,jo,"f"))return;t==="end"&&(ca(this,jo,!0,"f"),De(this,cc,"f").call(this));const r=De(this,pn,"f")[t];if(r&&(De(this,pn,"f")[t]=r.filter(a=>!a.once),r.forEach(({listener:a})=>a(...e))),t==="abort"){const a=e[0];!De(this,ds,"f")&&!(r!=null&&r.length)&&Promise.reject(a),De(this,Oo,"f").call(this,a),De(this,zo,"f").call(this,a),this._emit("end");return}if(t==="error"){const a=e[0];!De(this,ds,"f")&&!(r!=null&&r.length)&&Promise.reject(a),De(this,Oo,"f").call(this,a),De(this,zo,"f").call(this,a),this._emit("end")}}_emitFinal(){const t=this._chatCompletions[this._chatCompletions.length-1];t&&this._emit("finalChatCompletion",t);const e=De(this,cr,"m",w0).call(this);e&&this._emit("finalMessage",e);const r=De(this,cr,"m",sh).call(this);r&&this._emit("finalContent",r);const a=De(this,cr,"m",oh).call(this);a&&this._emit("finalFunctionCall",a);const n=De(this,cr,"m",dh).call(this);n!=null&&this._emit("finalFunctionCallResult",n),this._chatCompletions.some(i=>i.usage)&&this._emit("totalUsage",De(this,cr,"m",uh).call(this))}async _createChatCompletion(t,e,r){const a=r==null?void 0:r.signal;a&&(a.aborted&&this.controller.abort(),a.addEventListener("abort",()=>this.controller.abort())),De(this,cr,"m",Q9).call(this,e);const n=await t.create({...e,stream:!1},{...r,signal:this.controller.signal});return this._connected(),this._addChatCompletion(n)}async _runChatCompletion(t,e,r){for(const a of e.messages)this._addMessage(a,!1);return await this._createChatCompletion(t,e,r)}async _runFunctions(t,e,r){var c;const a="function",{function_call:n="auto",stream:i,...l}=e,s=typeof n!="string"&&(n==null?void 0:n.name),{maxChatCompletions:o=Zb}=r||{},d={};for(const p of e.functions)d[p.name||p.function.name]=p;const u=e.functions.map(p=>({name:p.name||p.function.name,parameters:p.parameters,description:p.description}));for(const p of e.messages)this._addMessage(p,!1);for(let p=0;p<o;++p){const m=(c=(await this._createChatCompletion(t,{...l,function_call:n,functions:u,messages:[...this.messages]},r)).choices[0])==null?void 0:c.message;if(!m)throw new it("missing message in ChatCompletion response");if(!m.function_call)return;const{name:h,arguments:C}=m.function_call,w=d[h];if(w){if(s&&s!==h){const W=`Invalid function_call: ${JSON.stringify(h)}. ${JSON.stringify(s)} requested. Please try again`;this._addMessage({role:a,name:h,content:W});continue}}else{const W=`Invalid function_call: ${JSON.stringify(h)}. Available options are: ${u.map(R=>JSON.stringify(R.name)).join(", ")}. Please try again`;this._addMessage({role:a,name:h,content:W});continue}let b;try{b=Sb(w)?await w.parse(C):C}catch(W){this._addMessage({role:a,name:h,content:W instanceof Error?W.message:String(W)});continue}const f=await w.function(b,this),K=De(this,cr,"m",ch).call(this,f);if(this._addMessage({role:a,name:h,content:K}),s)return}}async _runTools(t,e,r){var c,p;const a="tool",{tool_choice:n="auto",stream:i,...l}=e,s=typeof n!="string"&&((c=n==null?void 0:n.function)==null?void 0:c.name),{maxChatCompletions:o=Zb}=r||{},d={};for(const A of e.tools)A.type==="function"&&(d[A.function.name||A.function.function.name]=A.function);const u="tools"in e?e.tools.map(A=>A.type==="function"?{type:"function",function:{name:A.function.name||A.function.function.name,parameters:A.function.parameters,description:A.function.description}}:A):void 0;for(const A of e.messages)this._addMessage(A,!1);for(let A=0;A<o;++A){const h=(p=(await this._createChatCompletion(t,{...l,tool_choice:n,tools:u,messages:[...this.messages]},r)).choices[0])==null?void 0:p.message;if(!h)throw new it("missing message in ChatCompletion response");if(!h.tool_calls)return;for(const C of h.tool_calls){if(C.type!=="function")continue;const w=C.id,{name:b,arguments:f}=C.function,K=d[b];if(K){if(s&&s!==b){const L=`Invalid tool_call: ${JSON.stringify(b)}. ${JSON.stringify(s)} requested. Please try again`;this._addMessage({role:a,tool_call_id:w,content:L});continue}}else{const L=`Invalid tool_call: ${JSON.stringify(b)}. Available options are: ${u.map(y=>JSON.stringify(y.function.name)).join(", ")}. Please try again`;this._addMessage({role:a,tool_call_id:w,content:L});continue}let W;try{W=Sb(K)?await K.parse(f):f}catch(L){const y=L instanceof Error?L.message:String(L);this._addMessage({role:a,tool_call_id:w,content:y});continue}const R=await K.function(W,this),v=De(this,cr,"m",ch).call(this,R);if(this._addMessage({role:a,tool_call_id:w,content:v}),s)return}}}};uc=new WeakMap,pc=new WeakMap,Oo=new WeakMap,Po=new WeakMap,cc=new WeakMap,zo=new WeakMap,pn=new WeakMap,jo=new WeakMap,mc=new WeakMap,gc=new WeakMap,ds=new WeakMap,ph=new WeakMap,cr=new WeakSet,sh=function(){return De(this,cr,"m",w0).call(this).content??null},w0=function(){let e=this.messages.length;for(;e-- >0;){const r=this.messages[e];if(Fs(r))return{...r,content:r.content??null}}throw new it("stream ended without producing a ChatCompletionMessage with role=assistant")},oh=function(){var e,r;for(let a=this.messages.length-1;a>=0;a--){const n=this.messages[a];if(Fs(n)&&(n!=null&&n.function_call))return n.function_call;if(Fs(n)&&((e=n==null?void 0:n.tool_calls)!=null&&e.length))return(r=n.tool_calls.at(-1))==null?void 0:r.function}},dh=function(){for(let e=this.messages.length-1;e>=0;e--){const r=this.messages[e];if(K9(r)&&r.content!=null||f9(r)&&r.content!=null&&this.messages.some(a=>{var n;return a.role==="assistant"&&((n=a.tool_calls)==null?void 0:n.some(i=>i.type==="function"&&i.id===r.tool_call_id))}))return r.content}},uh=function(){const e={completion_tokens:0,prompt_tokens:0,total_tokens:0};for(const{usage:r}of this._chatCompletions)r&&(e.completion_tokens+=r.completion_tokens,e.prompt_tokens+=r.prompt_tokens,e.total_tokens+=r.total_tokens);return e},Q9=function(e){if(e.n!=null&&e.n>1)throw new it("ChatCompletion convenience helpers only support n=1 at this time. To use n>1, please use chat.completions.create() directly.")},ch=function(e){return typeof e=="string"?e:e===void 0?"undefined":JSON.stringify(e)};var Xb=class mh extends W9{static runFunctions(e,r,a){const n=new mh,i={...a,headers:{...a==null?void 0:a.headers,"X-Stainless-Helper-Method":"runFunctions"}};return n._run(()=>n._runFunctions(e,r,i)),n}static runTools(e,r,a){const n=new mh,i={...a,headers:{...a==null?void 0:a.headers,"X-Stainless-Helper-Method":"runTools"}};return n._run(()=>n._runTools(e,r,i)),n}_addMessage(e){super._addMessage(e),Fs(e)&&e.content&&this._emit("content",e.content)}},ma=function(t,e,r,a){if(r==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!a:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?a:r==="a"?a.call(t):a?a.value:e.get(t)},ag=function(t,e,r,a,n){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r},Fa,Tn,ng,ig,Lp,Hb,v9=class gh extends W9{constructor(){super(...arguments),Fa.add(this),Tn.set(this,void 0)}get currentChatCompletionSnapshot(){return ma(this,Tn,"f")}static fromReadableStream(e){const r=new gh;return r._run(()=>r._fromReadableStream(e)),r}static createChatCompletion(e,r,a){const n=new gh;return n._run(()=>n._runChatCompletion(e,{...r,stream:!0},{...a,headers:{...a==null?void 0:a.headers,"X-Stainless-Helper-Method":"stream"}})),n}async _createChatCompletion(e,r,a){var l;const n=a==null?void 0:a.signal;n&&(n.aborted&&this.controller.abort(),n.addEventListener("abort",()=>this.controller.abort())),ma(this,Fa,"m",ng).call(this);const i=await e.create({...r,stream:!0},{...a,signal:this.controller.signal});this._connected();for await(const s of i)ma(this,Fa,"m",ig).call(this,s);if((l=i.controller.signal)!=null&&l.aborted)throw new Ci;return this._addChatCompletion(ma(this,Fa,"m",Lp).call(this))}async _fromReadableStream(e,r){var l;const a=r==null?void 0:r.signal;a&&(a.aborted&&this.controller.abort(),a.addEventListener("abort",()=>this.controller.abort())),ma(this,Fa,"m",ng).call(this),this._connected();const n=ah.fromReadableStream(e,this.controller);let i;for await(const s of n)i&&i!==s.id&&this._addChatCompletion(ma(this,Fa,"m",Lp).call(this)),ma(this,Fa,"m",ig).call(this,s),i=s.id;if((l=n.controller.signal)!=null&&l.aborted)throw new Ci;return this._addChatCompletion(ma(this,Fa,"m",Lp).call(this))}[(Tn=new WeakMap,Fa=new WeakSet,ng=function(){this.ended||ag(this,Tn,void 0,"f")},ig=function(r){var l,s,o;if(this.ended)return;const a=ma(this,Fa,"m",Hb).call(this,r);this._emit("chunk",r,a);const n=(s=(l=r.choices[0])==null?void 0:l.delta)==null?void 0:s.content,i=(o=a.choices[0])==null?void 0:o.message;n!=null&&(i==null?void 0:i.role)==="assistant"&&(i!=null&&i.content)&&this._emit("content",n,i.content)},Lp=function(){if(this.ended)throw new it("stream has ended, this shouldn't happen");const r=ma(this,Tn,"f");if(!r)throw new it("request ended without sending any chunks");return ag(this,Tn,void 0,"f"),hV(r)},Hb=function(r){var a,n,i;let l=ma(this,Tn,"f");const{choices:s,...o}=r;l?Object.assign(l,o):l=ag(this,Tn,{...o,choices:[]},"f");for(const{delta:d,finish_reason:u,index:c,logprobs:p=null,...A}of r.choices){let m=l.choices[c];if(m||(m=l.choices[c]={finish_reason:u,index:c,message:{},logprobs:p,...A}),p)if(!m.logprobs)m.logprobs=Object.assign({},p);else{const{content:K,...W}=p;Object.assign(m.logprobs,W),K&&((a=m.logprobs).content??(a.content=[]),m.logprobs.content.push(...K))}if(u&&(m.finish_reason=u),Object.assign(m,A),!d)continue;const{content:h,function_call:C,role:w,tool_calls:b,...f}=d;if(Object.assign(m.message,f),h&&(m.message.content=(m.message.content||"")+h),w&&(m.message.role=w),C&&(m.message.function_call?(C.name&&(m.message.function_call.name=C.name),C.arguments&&((n=m.message.function_call).arguments??(n.arguments=""),m.message.function_call.arguments+=C.arguments)):m.message.function_call=C),b){m.message.tool_calls||(m.message.tool_calls=[]);for(const{index:K,id:W,type:R,function:v,...L}of b){const y=(i=m.message.tool_calls)[K]??(i[K]={});Object.assign(y,L),W&&(y.id=W),R&&(y.type=R),v&&(y.function??(y.function={arguments:""})),v!=null&&v.name&&(y.function.name=v.name),v!=null&&v.arguments&&(y.function.arguments+=v.arguments)}}}return l},Symbol.asyncIterator)](){const e=[],r=[];let a=!1;return this.on("chunk",n=>{const i=r.shift();i?i(n):e.push(n)}),this.on("end",()=>{a=!0;for(const n of r)n(void 0);r.length=0}),{next:async()=>e.length?{value:e.shift(),done:!1}:a?{value:void 0,done:!0}:new Promise(i=>r.push(i)).then(i=>i?{value:i,done:!1}:{value:void 0,done:!0})}}toReadableStream(){return new ah(this[Symbol.asyncIterator].bind(this),this.controller).toReadableStream()}};function hV(t){const{id:e,choices:r,created:a,model:n,system_fingerprint:i,...l}=t;return{...l,id:e,choices:r.map(({message:s,finish_reason:o,index:d,logprobs:u,...c})=>{if(!o)throw new it(`missing finish_reason for choice ${d}`);const{content:p=null,function_call:A,tool_calls:m,...h}=s,C=s.role;if(!C)throw new it(`missing role for choice ${d}`);if(A){const{arguments:w,name:b}=A;if(w==null)throw new it(`missing function_call.arguments for choice ${d}`);if(!b)throw new it(`missing function_call.name for choice ${d}`);return{...c,message:{content:p,function_call:{arguments:w,name:b},role:C},finish_reason:o,index:d,logprobs:u}}return m?{...c,index:d,finish_reason:o,logprobs:u,message:{...h,role:C,content:p,tool_calls:m.map((w,b)=>{const{function:f,type:K,id:W,...R}=w,{arguments:v,name:L,...y}=f||{};if(W==null)throw new it(`missing choices[${d}].tool_calls[${b}].id
${Tp(t)}`);if(K==null)throw new it(`missing choices[${d}].tool_calls[${b}].type
${Tp(t)}`);if(L==null)throw new it(`missing choices[${d}].tool_calls[${b}].function.name
${Tp(t)}`);if(v==null)throw new it(`missing choices[${d}].tool_calls[${b}].function.arguments
${Tp(t)}`);return{...R,id:W,type:K,function:{...y,name:L,arguments:v}}})}}:{...c,message:{...h,content:p,role:C},finish_reason:o,index:d,logprobs:u}}),created:a,model:n,object:"chat.completion",...i?{system_fingerprint:i}:{}}}function Tp(t){return JSON.stringify(t)}var Vb=class Ac extends v9{static fromReadableStream(e){const r=new Ac;return r._run(()=>r._fromReadableStream(e)),r}static runFunctions(e,r,a){const n=new Ac,i={...a,headers:{...a==null?void 0:a.headers,"X-Stainless-Helper-Method":"runFunctions"}};return n._run(()=>n._runFunctions(e,r,i)),n}static runTools(e,r,a){const n=new Ac,i={...a,headers:{...a==null?void 0:a.headers,"X-Stainless-Helper-Method":"runTools"}};return n._run(()=>n._runTools(e,r,i)),n}},F9=class extends yt{runFunctions(t,e){return t.stream?Vb.runFunctions(this._client.chat.completions,t,e):Xb.runFunctions(this._client.chat.completions,t,e)}runTools(t,e){return t.stream?Vb.runTools(this._client.chat.completions,t,e):Xb.runTools(this._client.chat.completions,t,e)}stream(t,e){return v9.createChatCompletion(this._client.chat.completions,t,e)}},b0=class extends yt{constructor(){super(...arguments),this.completions=new F9(this._client)}};(function(t){t.Completions=F9})(b0||(b0={}));var K0=class extends yt{retrieve(t,e,r,a){return this._client.get(`/threads/${t}/messages/${e}/files/${r}`,{...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}list(t,e,r={},a){return _a(r)?this.list(t,e,{},r):this._client.getAPIList(`/threads/${t}/messages/${e}/files`,aC,{query:r,...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}},aC=class extends vn{};(function(t){t.MessageFilesPage=aC})(K0||(K0={}));var f0=class extends yt{constructor(){super(...arguments),this.files=new K0(this._client)}create(t,e,r){return this._client.post(`/threads/${t}/messages`,{body:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}retrieve(t,e,r){return this._client.get(`/threads/${t}/messages/${e}`,{...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}update(t,e,r,a){return this._client.post(`/threads/${t}/messages/${e}`,{body:r,...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}list(t,e={},r){return _a(e)?this.list(t,{},e):this._client.getAPIList(`/threads/${t}/messages`,nC,{query:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}},nC=class extends vn{};(function(t){t.ThreadMessagesPage=nC,t.Files=K0,t.MessageFilesPage=aC})(f0||(f0={}));var Q0=class extends yt{retrieve(t,e,r,a){return this._client.get(`/threads/${t}/runs/${e}/steps/${r}`,{...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}list(t,e,r={},a){return _a(r)?this.list(t,e,{},r):this._client.getAPIList(`/threads/${t}/runs/${e}/steps`,iC,{query:r,...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}},iC=class extends vn{};(function(t){t.RunStepsPage=iC})(Q0||(Q0={}));var W0=class extends yt{constructor(){super(...arguments),this.steps=new Q0(this._client)}create(t,e,r){return this._client.post(`/threads/${t}/runs`,{body:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}retrieve(t,e,r){return this._client.get(`/threads/${t}/runs/${e}`,{...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}update(t,e,r,a){return this._client.post(`/threads/${t}/runs/${e}`,{body:r,...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}list(t,e={},r){return _a(e)?this.list(t,{},e):this._client.getAPIList(`/threads/${t}/runs`,lC,{query:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}cancel(t,e,r){return this._client.post(`/threads/${t}/runs/${e}/cancel`,{...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}submitToolOutputs(t,e,r,a){return this._client.post(`/threads/${t}/runs/${e}/submit_tool_outputs`,{body:r,...a,headers:{"OpenAI-Beta":"assistants=v1",...a==null?void 0:a.headers}})}},lC=class extends vn{};(function(t){t.RunsPage=lC,t.Steps=Q0,t.RunStepsPage=iC})(W0||(W0={}));var v0=class extends yt{constructor(){super(...arguments),this.runs=new W0(this._client),this.messages=new f0(this._client)}create(t={},e){return _a(t)?this.create({},t):this._client.post("/threads",{body:t,...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}retrieve(t,e){return this._client.get(`/threads/${t}`,{...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}update(t,e,r){return this._client.post(`/threads/${t}`,{body:e,...r,headers:{"OpenAI-Beta":"assistants=v1",...r==null?void 0:r.headers}})}del(t,e){return this._client.delete(`/threads/${t}`,{...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}createAndRun(t,e){return this._client.post("/threads/runs",{body:t,...e,headers:{"OpenAI-Beta":"assistants=v1",...e==null?void 0:e.headers}})}};(function(t){t.Runs=W0,t.RunsPage=lC,t.Messages=f0,t.ThreadMessagesPage=nC})(v0||(v0={}));var F0=class extends yt{constructor(){super(...arguments),this.chat=new b0(this._client),this.assistants=new C0(this._client),this.threads=new v0(this._client)}};(function(t){t.Chat=b0,t.Assistants=C0,t.AssistantsPage=rC,t.Threads=v0})(F0||(F0={}));var y0=class extends yt{create(t,e){return this._client.post("/completions",{body:t,...e,stream:t.stream??!1})}};y0||(y0={});var R0=class extends yt{create(t,e){return this._client.post("/embeddings",{body:t,...e})}};R0||(R0={});var E0=class extends yt{create(t,e){return this._client.post("/files",Md({body:t,...e}))}retrieve(t,e){return this._client.get(`/files/${t}`,e)}list(t={},e){return _a(t)?this.list({},t):this._client.getAPIList("/files",sC,{query:t,...e})}del(t,e){return this._client.delete(`/files/${t}`,e)}content(t,e){return this._client.get(`/files/${t}/content`,{...e,__binaryResponse:!0})}retrieveContent(t,e){return this._client.get(`/files/${t}/content`,{...e,headers:{Accept:"application/json",...e==null?void 0:e.headers}})}async waitForProcessing(t,{pollInterval:e=5e3,maxWait:r=30*60*1e3}={}){const a=new Set(["processed","error","deleted"]),n=Date.now();let i=await this.retrieve(t);for(;!i.status||!a.has(i.status);)if(await C9(e),i=await this.retrieve(t),Date.now()-n>r)throw new A1({message:`Giving up on waiting for file ${t} to finish processing after ${r} milliseconds.`});return i}},sC=class extends eC{};(function(t){t.FileObjectsPage=sC})(E0||(E0={}));var G0=class extends yt{create(t,e){return this._client.post("/fine_tuning/jobs",{body:t,...e})}retrieve(t,e){return this._client.get(`/fine_tuning/jobs/${t}`,e)}list(t={},e){return _a(t)?this.list({},t):this._client.getAPIList("/fine_tuning/jobs",oC,{query:t,...e})}cancel(t,e){return this._client.post(`/fine_tuning/jobs/${t}/cancel`,e)}listEvents(t,e={},r){return _a(e)?this.listEvents(t,{},e):this._client.getAPIList(`/fine_tuning/jobs/${t}/events`,dC,{query:e,...r})}},oC=class extends vn{},dC=class extends vn{};(function(t){t.FineTuningJobsPage=oC,t.FineTuningJobEventsPage=dC})(G0||(G0={}));var S0=class extends yt{constructor(){super(...arguments),this.jobs=new G0(this._client)}};(function(t){t.Jobs=G0,t.FineTuningJobsPage=oC,t.FineTuningJobEventsPage=dC})(S0||(S0={}));var Z0=class extends yt{createVariation(t,e){return this._client.post("/images/variations",Md({body:t,...e}))}edit(t,e){return this._client.post("/images/edits",Md({body:t,...e}))}generate(t,e){return this._client.post("/images/generations",{body:t,...e})}};Z0||(Z0={});var X0=class extends yt{retrieve(t,e){return this._client.get(`/models/${t}`,e)}list(t){return this._client.getAPIList("/models",uC,t)}del(t,e){return this._client.delete(`/models/${t}`,e)}},uC=class extends eC{};(function(t){t.ModelsPage=uC})(X0||(X0={}));var H0=class extends yt{create(t,e){return this._client.post("/moderations",{body:t,...e})}};H0||(H0={});var y9,qt=class extends nV{constructor({baseURL:e=rg("OPENAI_BASE_URL"),apiKey:r=rg("OPENAI_API_KEY"),organization:a=rg("OPENAI_ORG_ID")??null,...n}={}){if(r===void 0)throw new it("The OPENAI_API_KEY environment variable is missing or empty; either provide it, or instantiate the OpenAI client with an apiKey option, like new OpenAI({ apiKey: 'My API Key' }).");const i={apiKey:r,organization:a,...n,baseURL:e||"https://api.openai.com/v1"};if(!i.dangerouslyAllowBrowser&&AV())throw new it(`It looks like you're running in a browser-like environment.
This is disabled by default, as it risks exposing your secret API credentials to attackers.
If you understand the risks and have appropriate mitigations in place,
you can set the \`dangerouslyAllowBrowser\` option to \`true\`, e.g.,
new OpenAI({ apiKey, dangerouslyAllowBrowser: true });
https://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety
`);super({baseURL:i.baseURL,timeout:i.timeout??6e5,httpAgent:i.httpAgent,maxRetries:i.maxRetries,fetch:i.fetch}),this.completions=new y0(this),this.chat=new c0(this),this.embeddings=new R0(this),this.files=new E0(this),this.images=new Z0(this),this.audio=new h0(this),this.moderations=new H0(this),this.models=new X0(this),this.fineTuning=new S0(this),this.beta=new F0(this),this._options=i,this.apiKey=r,this.organization=a}defaultQuery(){return this._options.defaultQuery}defaultHeaders(e){return{...super.defaultHeaders(e),"OpenAI-Organization":this.organization,...this._options.defaultHeaders}}authHeaders(e){return{Authorization:`Bearer ${this.apiKey}`}}};y9=qt;qt.OpenAI=y9;qt.OpenAIError=it;qt.APIError=Nr;qt.APIConnectionError=Au;qt.APIConnectionTimeoutError=A1;qt.APIUserAbortError=Ci;qt.NotFoundError=PB;qt.ConflictError=zB;qt.RateLimitError=qB;qt.BadRequestError=xB;qt.AuthenticationError=JB;qt.InternalServerError=$B;qt.PermissionDeniedError=OB;qt.UnprocessableEntityError=jB;var{OpenAIError:GD,APIError:SD,APIConnectionError:ZD,APIConnectionTimeoutError:BV,APIUserAbortError:CV,NotFoundError:XD,ConflictError:HD,RateLimitError:VD,BadRequestError:YD,AuthenticationError:ND,InternalServerError:LD,PermissionDeniedError:TD,UnprocessableEntityError:kD}=u9;(function(t){t.toFile=m9,t.fileFromPath=qW,t.Page=eC,t.CursorPage=vn,t.Completions=y0,t.Chat=c0,t.Embeddings=R0,t.Files=E0,t.FileObjectsPage=sC,t.Images=Z0,t.Audio=h0,t.Moderations=H0,t.Models=X0,t.ModelsPage=uC,t.FineTuning=S0,t.Beta=F0})(qt||(qt={}));d1();function R9(t,e,r,a){a!=null&&a.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function gt(t,e,r,a,n){t[e]=r,R9(t,e,a,n)}var Yb={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"string",mapStrategy:"entries",definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",emailStrategy:"format:email"},wV=t=>typeof t=="string"?{...Yb,name:t}:{...Yb,...t},xd;(function(t){t.assertEqual=n=>n;function e(n){}t.assertIs=e;function r(n){throw new Error}t.assertNever=r,t.arrayToEnum=n=>{const i={};for(const l of n)i[l]=l;return i},t.getValidEnumValues=n=>{const i=t.objectKeys(n).filter(s=>typeof n[n[s]]!="number"),l={};for(const s of i)l[s]=n[s];return t.objectValues(l)},t.objectValues=n=>t.objectKeys(n).map(function(i){return n[i]}),t.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{const i=[];for(const l in n)Object.prototype.hasOwnProperty.call(n,l)&&i.push(l);return i},t.find=(n,i)=>{for(const l of n)if(i(l))return l},t.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&isFinite(n)&&Math.floor(n)===n;function a(n,i=" | "){return n.map(l=>typeof l=="string"?`'${l}'`:l).join(i)}t.joinValues=a,t.jsonStringifyReplacer=(n,i)=>typeof i=="bigint"?i.toString():i})(xd||(xd={}));var Nb;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Nb||(Nb={}));xd.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);xd.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var Lb=class extends Error{constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const e=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,e):this.__proto__=e,this.name="ZodError",this.issues=t}get errors(){return this.issues}format(t){const e=t||function(n){return n.message},r={_errors:[]},a=n=>{for(const i of n.issues)if(i.code==="invalid_union")i.unionErrors.map(a);else if(i.code==="invalid_return_type")a(i.returnTypeError);else if(i.code==="invalid_arguments")a(i.argumentsError);else if(i.path.length===0)r._errors.push(e(i));else{let l=r,s=0;for(;s<i.path.length;){const o=i.path[s];s===i.path.length-1?(l[o]=l[o]||{_errors:[]},l[o]._errors.push(e(i))):l[o]=l[o]||{_errors:[]},l=l[o],s++}}};return a(this),r}toString(){return this.message}get message(){return JSON.stringify(this.issues,xd.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=e=>e.message){const e={},r=[];for(const a of this.issues)a.path.length>0?(e[a.path[0]]=e[a.path[0]]||[],e[a.path[0]].push(t(a))):r.push(t(a));return{formErrors:r,fieldErrors:e}}get formErrors(){return this.flatten()}};Lb.create=t=>new Lb(t);var Tb;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(Tb||(Tb={}));var Ne;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(Ne||(Ne={}));function bV(){return{}}function KV(t,e){var a,n;const r={type:"array"};return((n=(a=t.type)==null?void 0:a._def)==null?void 0:n.typeName)!==Ne.ZodAny&&(r.items=lt(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&gt(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&gt(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(gt(r,"minItems",t.exactLength.value,t.exactLength.message,e),gt(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function fV(t,e){const r={type:"integer",format:"int64"};if(!t.checks)return r;for(const a of t.checks)switch(a.kind){case"min":e.target==="jsonSchema7"?a.inclusive?gt(r,"minimum",a.value,a.message,e):gt(r,"exclusiveMinimum",a.value,a.message,e):(a.inclusive||(r.exclusiveMinimum=!0),gt(r,"minimum",a.value,a.message,e));break;case"max":e.target==="jsonSchema7"?a.inclusive?gt(r,"maximum",a.value,a.message,e):gt(r,"exclusiveMaximum",a.value,a.message,e):(a.inclusive||(r.exclusiveMaximum=!0),gt(r,"maximum",a.value,a.message,e));break;case"multipleOf":gt(r,"multipleOf",a.value,a.message,e);break}return r}function QV(){return{type:"boolean"}}function WV(t,e){return lt(t.type._def,e)}var vV=(t,e)=>lt(t.innerType._def,e);function FV(t,e){return e.dateStrategy=="integer"?yV(t,e):{type:"string",format:"date-time"}}var yV=(t,e)=>{const r={type:"integer",format:"unix-time"};for(const a of t.checks)switch(a.kind){case"min":e.target==="jsonSchema7"&&gt(r,"minimum",a.value,a.message,e);break;case"max":e.target==="jsonSchema7"&&gt(r,"maximum",a.value,a.message,e);break}return r};function RV(t,e){return{...lt(t.innerType._def,e),default:t.defaultValue()}}function EV(t,e){return e.effectStrategy==="input"?lt(t.schema._def,e):{}}function GV(t){return{type:"string",enum:t.values}}var SV=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function ZV(t,e){const r=[lt(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),lt(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(i=>!!i);let a=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0;const n=[];return r.forEach(i=>{if(SV(i))n.push(...i.allOf),i.unevaluatedProperties===void 0&&(a=void 0);else{let l=i;if("additionalProperties"in i&&i.additionalProperties===!1){const{additionalProperties:s,...o}=i;l=o}else a=void 0;n.push(l)}}),n.length?{allOf:n,...a}:void 0}function XV(t,e){const r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var Go={cuid:"^[cC][^\\s-]{8,}$",cuid2:"^[a-z][a-z0-9]*$",ulid:"^[0-9A-HJKMNP-TV-Z]{26}$",email:"^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_+-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$",emoji:"^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",uuid:"^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$",ipv4:"^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$",ipv6:"^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$"};function E9(t,e){const r={type:"string"};function a(n){return e.patternStrategy==="escape"?HV(n):n}if(t.checks)for(const n of t.checks)switch(n.kind){case"min":gt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":gt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":Mi(r,"email",n.message,e);break;case"format:idn-email":Mi(r,"idn-email",n.message,e);break;case"pattern:zod":nn(r,Go.email,n.message,e);break}break;case"url":Mi(r,"uri",n.message,e);break;case"uuid":Mi(r,"uuid",n.message,e);break;case"regex":nn(r,n.regex.source,n.message,e);break;case"cuid":nn(r,Go.cuid,n.message,e);break;case"cuid2":nn(r,Go.cuid2,n.message,e);break;case"startsWith":nn(r,"^"+a(n.value),n.message,e);break;case"endsWith":nn(r,a(n.value)+"$",n.message,e);break;case"datetime":Mi(r,"date-time",n.message,e);break;case"length":gt(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),gt(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{nn(r,a(n.value),n.message,e);break}case"ip":{n.version!=="v6"&&Mi(r,"ipv4",n.message,e),n.version!=="v4"&&Mi(r,"ipv6",n.message,e);break}case"emoji":nn(r,Go.emoji,n.message,e);break;case"ulid":{nn(r,Go.ulid,n.message,e);break}}return r}var HV=t=>Array.from(t).map(e=>/[a-zA-Z0-9]/.test(e)?e:`\\${e}`).join(""),Mi=(t,e,r,a)=>{var n;t.format||(n=t.anyOf)!=null&&n.some(i=>i.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&a.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&a.errorMessages&&{errorMessage:{format:r}}})):gt(t,"format",e,r,a)},nn=(t,e,r,a)=>{var n;t.pattern||(n=t.allOf)!=null&&n.some(i=>i.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&a.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:e,...r&&a.errorMessages&&{errorMessage:{pattern:r}}})):gt(t,"pattern",e,r,a)};function G9(t,e){var a,n,i,l;if(e.target==="openApi3"&&((a=t.keyType)==null?void 0:a._def.typeName)===Ne.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((s,o)=>({...s,[o]:lt(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??{}}),{}),additionalProperties:!1};const r={type:"object",additionalProperties:lt(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??{}};if(e.target==="openApi3")return r;if(((n=t.keyType)==null?void 0:n._def.typeName)===Ne.ZodString&&((i=t.keyType._def.checks)!=null&&i.length)){const s=Object.entries(E9(t.keyType._def,e)).reduce((o,[d,u])=>d==="type"?o:{...o,[d]:u},{});return{...r,propertyNames:s}}else if(((l=t.keyType)==null?void 0:l._def.typeName)===Ne.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};return r}function VV(t,e){if(e.mapStrategy==="record")return G9(t,e);const r=lt(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||{},a=lt(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||{};return{type:"array",maxItems:125,items:{type:"array",items:[r,a],minItems:2,maxItems:2}}}function YV(t){const e=t.values,a=Object.keys(t.values).filter(i=>typeof e[e[i]]!="number").map(i=>e[i]),n=Array.from(new Set(a.map(i=>typeof i)));return{type:n.length===1?n[0]==="string"?"string":"number":["string","number"],enum:a}}function NV(){return{not:{}}}function LV(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var V0={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function TV(t,e){if(e.target==="openApi3")return kb(t,e);const r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(a=>a._def.typeName in V0&&(!a._def.checks||!a._def.checks.length))){const a=r.reduce((n,i)=>{const l=V0[i._def.typeName];return l&&!n.includes(l)?[...n,l]:n},[]);return{type:a.length>1?a:a[0]}}else if(r.every(a=>a._def.typeName==="ZodLiteral"&&!a.description)){const a=r.reduce((n,i)=>{const l=typeof i._def.value;switch(l){case"string":case"number":case"boolean":return[...n,l];case"bigint":return[...n,"integer"];case"object":if(i._def.value===null)return[...n,"null"];case"symbol":case"undefined":case"function":default:return n}},[]);if(a.length===r.length){const n=a.filter((i,l,s)=>s.indexOf(i)===l);return{type:n.length>1?n:n[0],enum:r.reduce((i,l)=>i.includes(l._def.value)?i:[...i,l._def.value],[])}}}else if(r.every(a=>a._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((a,n)=>[...a,...n._def.values.filter(i=>!a.includes(i))],[])};return kb(t,e)}var kb=(t,e)=>{const r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((a,n)=>lt(a._def,{...e,currentPath:[...e.currentPath,"anyOf",`${n}`]})).filter(a=>!!a&&(!e.strictUnions||typeof a=="object"&&Object.keys(a).length>0));return r.length?{anyOf:r}:void 0};function kV(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:V0[t.innerType._def.typeName],nullable:!0}:{type:[V0[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){const a=lt(t.innerType._def,{...e,currentPath:[...e.currentPath]});return a&&"$ref"in a?{allOf:[a],nullable:!0}:a&&{...a,nullable:!0}}const r=lt(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function UV(t,e){const r={type:"number"};if(!t.checks)return r;for(const a of t.checks)switch(a.kind){case"int":r.type="integer",R9(r,"type",a.message,e);break;case"min":e.target==="jsonSchema7"?a.inclusive?gt(r,"minimum",a.value,a.message,e):gt(r,"exclusiveMinimum",a.value,a.message,e):(a.inclusive||(r.exclusiveMinimum=!0),gt(r,"minimum",a.value,a.message,e));break;case"max":e.target==="jsonSchema7"?a.inclusive?gt(r,"maximum",a.value,a.message,e):gt(r,"exclusiveMaximum",a.value,a.message,e):(a.inclusive||(r.exclusiveMaximum=!0),gt(r,"maximum",a.value,a.message,e));break;case"multipleOf":gt(r,"multipleOf",a.value,a.message,e);break}return r}function _V(t,e){const r={type:"object",...Object.entries(t.shape()).reduce((a,[n,i])=>{if(i===void 0||i._def===void 0)return a;const l=lt(i._def,{...e,currentPath:[...e.currentPath,"properties",n],propertyPath:[...e.currentPath,"properties",n]});return l===void 0?a:{properties:{...a.properties,[n]:l},required:i.isOptional()?a.required:[...a.required,n]}},{properties:{},required:[]}),additionalProperties:t.catchall._def.typeName==="ZodNever"?t.unknownKeys==="passthrough":lt(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??!0};return r.required.length||delete r.required,r}var IV=(t,e)=>{var a;if(e.currentPath.toString()===((a=e.propertyPath)==null?void 0:a.toString()))return lt(t.innerType._def,e);const r=lt(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{}},DV=(t,e)=>{if(e.pipeStrategy==="input")return lt(t.in._def,e);if(e.pipeStrategy==="output")return lt(t.out._def,e);const r=lt(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),a=lt(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,a].filter(n=>n!==void 0)}};function MV(t,e){return lt(t.type._def,e)}function xV(t,e){const a={type:"array",uniqueItems:!0,items:lt(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&gt(a,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&gt(a,"maxItems",t.maxSize.value,t.maxSize.message,e),a}function JV(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,a)=>lt(r._def,{...e,currentPath:[...e.currentPath,"items",`${a}`]})).reduce((r,a)=>a===void 0?r:[...r,a],[]),additionalItems:lt(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,a)=>lt(r._def,{...e,currentPath:[...e.currentPath,"items",`${a}`]})).reduce((r,a)=>a===void 0?r:[...r,a],[])}}function OV(){return{not:{}}}function PV(){return{}}var zV=(t,e)=>lt(t.innerType._def,e);function lt(t,e,r=!1){const a=e.seen.get(t);if(a&&!r){const l=jV(a,e);if(l!==void 0)return l}const n={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,n);const i=$V(t,t.typeName,e);return i&&eY(t,e,i),n.jsonSchema=i,i}var jV=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:qV(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,a)=>e.currentPath[a]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),{}):e.$refStrategy==="seen"?{}:void 0}},qV=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")},$V=(t,e,r)=>{switch(e){case Ne.ZodString:return E9(t,r);case Ne.ZodNumber:return UV(t,r);case Ne.ZodObject:return _V(t,r);case Ne.ZodBigInt:return fV(t,r);case Ne.ZodBoolean:return QV();case Ne.ZodDate:return FV(t,r);case Ne.ZodUndefined:return OV();case Ne.ZodNull:return LV(r);case Ne.ZodArray:return KV(t,r);case Ne.ZodUnion:case Ne.ZodDiscriminatedUnion:return TV(t,r);case Ne.ZodIntersection:return ZV(t,r);case Ne.ZodTuple:return JV(t,r);case Ne.ZodRecord:return G9(t,r);case Ne.ZodLiteral:return XV(t,r);case Ne.ZodEnum:return GV(t);case Ne.ZodNativeEnum:return YV(t);case Ne.ZodNullable:return kV(t,r);case Ne.ZodOptional:return IV(t,r);case Ne.ZodMap:return VV(t,r);case Ne.ZodSet:return xV(t,r);case Ne.ZodLazy:return lt(t.getter()._def,r);case Ne.ZodPromise:return MV(t,r);case Ne.ZodNaN:case Ne.ZodNever:return NV();case Ne.ZodEffects:return EV(t,r);case Ne.ZodAny:return bV();case Ne.ZodUnknown:return PV();case Ne.ZodDefault:return RV(t,r);case Ne.ZodBranded:return WV(t,r);case Ne.ZodReadonly:return zV(t,r);case Ne.ZodCatch:return vV(t,r);case Ne.ZodPipeline:return DV(t,r);case Ne.ZodFunction:case Ne.ZodVoid:case Ne.ZodSymbol:return;default:return(a=>{})()}},eY=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r),tY=t=>{const e=wV(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([a,n])=>[n._def,{def:n._def,path:[...e.basePath,e.definitionPath,a],jsonSchema:void 0}]))}},S9=(t,e)=>{const r=tY(e),a=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((s,[o,d])=>({...s,[o]:lt(d._def,{...r,currentPath:[...r.basePath,r.definitionPath,o]},!0)??{}}),{}):void 0,n=typeof e=="string"?e:e==null?void 0:e.name,i=lt(t._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1)??{},l=n===void 0?a?{...i,[r.definitionPath]:a}:i:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...a,[n]:i}};return r.target==="jsonSchema7"?l.$schema="http://json-schema.org/draft-07/schema#":r.target==="jsonSchema2019-09"&&(l.$schema="https://json-schema.org/draft/2019-09/schema#"),l};function rY(t){return{name:t.name,description:t.description,parameters:S9(t.schema)}}function aY(t){return{type:"function",function:rY(t)}}var nY=class extends IB{static lc_name(){return"JsonOutputToolsParser"}constructor(t){super(t),Object.defineProperty(this,"returnId",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain","output_parsers","openai_tools"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),this.returnId=(t==null?void 0:t.returnId)??this.returnId}async parseResult(t){const e=t[0].message.additional_kwargs.tool_calls;if(!e)throw new Error(`No tools_call in message ${JSON.stringify(t)}`);const r=JSON.parse(JSON.stringify(e)),a=[];for(const n of r)if(n.function!==void 0){const i={type:n.function.name,args:JSON.parse(n.function.arguments)};this.returnId&&(i.id=n.id),Object.defineProperty(i,"name",{get(){return this.type}}),Object.defineProperty(i,"arguments",{get(){return this.args}}),a.push(i)}return a}},Ub=class extends IB{static lc_name(){return"JsonOutputKeyToolsParser"}constructor(t){super(t),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain","output_parsers","openai_tools"]}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"returnId",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"keyName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"returnSingle",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"initialParser",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.keyName=t.keyName,this.returnSingle=t.returnSingle??this.returnSingle,this.initialParser=new nY(t)}async parseResult(t){const r=(await this.initialParser.parseResult(t)).filter(n=>n.type===this.keyName);let a=r;return this.returnId||(a=r.map(n=>n.args)),this.returnSingle?a[0]:a}};function Z9(t){const{azureOpenAIApiDeploymentName:e,azureOpenAIApiInstanceName:r,azureOpenAIApiKey:a,azureOpenAIBasePath:n,baseURL:i}=t;if(a&&n&&e)return`${n}/${e}`;if(a){if(!r)throw new Error("azureOpenAIApiInstanceName is required when using azureOpenAIApiKey");if(!e)throw new Error("azureOpenAIApiDeploymentName is a required parameter when using azureOpenAIApiKey");return`https://${r}.openai.azure.com/openai/deployments/${e}`}return i}function X9(t){let e;return t.constructor.name===BV.name?(e=new Error(t.message),e.name="TimeoutError"):t.constructor.name===CV.name?(e=new Error(t.message),e.name="AbortError"):e=t,e}function iY(t){return t.anyOf!==void 0&&Array.isArray(t.anyOf)}function lY(t){const e=["namespace functions {",""];for(const r of t)r.description&&e.push(`// ${r.description}`),Object.keys(r.parameters.properties??{}).length>0?(e.push(`type ${r.name} = (_: {`),e.push(H9(r.parameters,0)),e.push("}) => any;")):e.push(`type ${r.name} = () => any;`),e.push("");return e.push("} // namespace functions"),e.join(`
`)}function H9(t,e){var a;const r=[];for(const[n,i]of Object.entries(t.properties??{}))i.description&&e<2&&r.push(`// ${i.description}`),(a=t.required)!=null&&a.includes(n)?r.push(`${n}: ${Y0(i,e)},`):r.push(`${n}?: ${Y0(i,e)},`);return r.map(n=>" ".repeat(e)+n).join(`
`)}function Y0(t,e){if(iY(t))return t.anyOf.map(r=>Y0(r,e)).join(" | ");switch(t.type){case"string":return t.enum?t.enum.map(r=>`"${r}"`).join(" | "):"string";case"number":return t.enum?t.enum.map(r=>`${r}`).join(" | "):"number";case"integer":return t.enum?t.enum.map(r=>`${r}`).join(" | "):"number";case"boolean":return"boolean";case"null":return"null";case"object":return["{",H9(t,e+2),"}"].join(`
`);case"array":return t.items?`${Y0(t.items,e)}[]`:"any[]";default:return""}}function sY(t){return t.role!=="system"&&t.role!=="assistant"&&t.role!=="user"&&t.role!=="function"&&t.role!=="tool"&&console.warn(`Unknown message role: ${t.role}`),t.role}function V9(t){const e=t._getType();switch(e){case"system":return"system";case"ai":return"assistant";case"human":return"user";case"function":return"function";case"tool":return"tool";case"generic":{if(!kd.isInstance(t))throw new Error("Invalid generic chat message");return sY(t)}default:throw new Error(`Unknown message type: ${e}`)}}function oY(t){switch(t.role){case"assistant":return new i1(t.content||"",{function_call:t.function_call,tool_calls:t.tool_calls});default:return new kd(t.content||"",t.role??"unknown")}}function dY(t,e){const r=t.role??e,a=t.content??"";let n;return t.function_call?n={function_call:t.function_call}:t.tool_calls?n={tool_calls:t.tool_calls}:n={},r==="user"?new nA({content:a}):r==="assistant"?new ti({content:a,additional_kwargs:n}):r==="system"?new iA({content:a}):r==="function"?new lA({content:a,additional_kwargs:n,name:t.name}):r==="tool"?new AQ({content:a,additional_kwargs:n,tool_call_id:t.tool_call_id}):new sA({content:a,role:r})}function _b(t){return t.map(e=>({role:V9(e),content:e.content,name:e.name,function_call:e.additional_kwargs.function_call,tool_calls:e.additional_kwargs.tool_calls,tool_call_id:e.tool_call_id}))}var uY=class extends DW{static lc_name(){return"ChatOpenAI"}get callKeys(){return[...super.callKeys,"options","function_call","functions","tools","tool_choice","promptIndex","response_format","seed"]}get lc_secrets(){return{openAIApiKey:"OPENAI_API_KEY",azureOpenAIApiKey:"AZURE_OPENAI_API_KEY",organization:"OPENAI_ORGANIZATION"}}get lc_aliases(){return{modelName:"model",openAIApiKey:"openai_api_key",azureOpenAIApiVersion:"azure_openai_api_version",azureOpenAIApiKey:"azure_openai_api_key",azureOpenAIApiInstanceName:"azure_openai_api_instance_name",azureOpenAIApiDeploymentName:"azure_openai_api_deployment_name"}}constructor(t,e){var r,a,n,i,l,s,o,d;if(super(t??{}),Object.defineProperty(this,"lc_serializable",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"temperature",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"topP",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"frequencyPenalty",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"presencePenalty",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"n",{enumerable:!0,configurable:!0,writable:!0,value:1}),Object.defineProperty(this,"logitBias",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"modelName",{enumerable:!0,configurable:!0,writable:!0,value:"gpt-3.5-turbo"}),Object.defineProperty(this,"modelKwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"stop",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"user",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"streaming",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"maxTokens",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"logprobs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"topLogprobs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"openAIApiKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiVersion",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiInstanceName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiDeploymentName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIBasePath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"organization",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"client",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"clientConfig",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.openAIApiKey=(t==null?void 0:t.openAIApiKey)??Ut("OPENAI_API_KEY"),this.azureOpenAIApiKey=(t==null?void 0:t.azureOpenAIApiKey)??Ut("AZURE_OPENAI_API_KEY"),!this.azureOpenAIApiKey&&!this.openAIApiKey)throw new Error("OpenAI or Azure OpenAI API key not found");if(this.azureOpenAIApiInstanceName=(t==null?void 0:t.azureOpenAIApiInstanceName)??Ut("AZURE_OPENAI_API_INSTANCE_NAME"),this.azureOpenAIApiDeploymentName=(t==null?void 0:t.azureOpenAIApiDeploymentName)??Ut("AZURE_OPENAI_API_DEPLOYMENT_NAME"),this.azureOpenAIApiVersion=(t==null?void 0:t.azureOpenAIApiVersion)??Ut("AZURE_OPENAI_API_VERSION"),this.azureOpenAIBasePath=(t==null?void 0:t.azureOpenAIBasePath)??Ut("AZURE_OPENAI_BASE_PATH"),this.organization=((r=t==null?void 0:t.configuration)==null?void 0:r.organization)??Ut("OPENAI_ORGANIZATION"),this.modelName=(t==null?void 0:t.modelName)??this.modelName,this.modelKwargs=(t==null?void 0:t.modelKwargs)??{},this.timeout=t==null?void 0:t.timeout,this.temperature=(t==null?void 0:t.temperature)??this.temperature,this.topP=(t==null?void 0:t.topP)??this.topP,this.frequencyPenalty=(t==null?void 0:t.frequencyPenalty)??this.frequencyPenalty,this.presencePenalty=(t==null?void 0:t.presencePenalty)??this.presencePenalty,this.maxTokens=t==null?void 0:t.maxTokens,this.logprobs=t==null?void 0:t.logprobs,this.topLogprobs=t==null?void 0:t.topLogprobs,this.n=(t==null?void 0:t.n)??this.n,this.logitBias=t==null?void 0:t.logitBias,this.stop=t==null?void 0:t.stop,this.user=t==null?void 0:t.user,this.streaming=(t==null?void 0:t.streaming)??!1,this.azureOpenAIApiKey){if(!this.azureOpenAIApiInstanceName&&!this.azureOpenAIBasePath)throw new Error("Azure OpenAI API instance name not found");if(!this.azureOpenAIApiDeploymentName)throw new Error("Azure OpenAI API deployment name not found");if(!this.azureOpenAIApiVersion)throw new Error("Azure OpenAI API version not found");this.openAIApiKey=this.openAIApiKey??""}this.clientConfig={apiKey:this.openAIApiKey,organization:this.organization,baseURL:(e==null?void 0:e.basePath)??((a=t==null?void 0:t.configuration)==null?void 0:a.basePath),dangerouslyAllowBrowser:!0,defaultHeaders:((n=e==null?void 0:e.baseOptions)==null?void 0:n.headers)??((l=(i=t==null?void 0:t.configuration)==null?void 0:i.baseOptions)==null?void 0:l.headers),defaultQuery:((s=e==null?void 0:e.baseOptions)==null?void 0:s.params)??((d=(o=t==null?void 0:t.configuration)==null?void 0:o.baseOptions)==null?void 0:d.params),...e,...t==null?void 0:t.configuration}}invocationParams(t){function e(a){return a!==void 0&&a.every(n=>Array.isArray(n.lc_namespace))}return{model:this.modelName,temperature:this.temperature,top_p:this.topP,frequency_penalty:this.frequencyPenalty,presence_penalty:this.presencePenalty,max_tokens:this.maxTokens===-1?void 0:this.maxTokens,logprobs:this.logprobs,top_logprobs:this.topLogprobs,n:this.n,logit_bias:this.logitBias,stop:(t==null?void 0:t.stop)??this.stop,user:this.user,stream:this.streaming,functions:t==null?void 0:t.functions,function_call:t==null?void 0:t.function_call,tools:e(t==null?void 0:t.tools)?t==null?void 0:t.tools.map(aY):t==null?void 0:t.tools,tool_choice:t==null?void 0:t.tool_choice,response_format:t==null?void 0:t.response_format,seed:t==null?void 0:t.seed,...this.modelKwargs}}_identifyingParams(){return{model_name:this.modelName,...this.invocationParams(),...this.clientConfig}}async*_streamResponseChunks(t,e,r){var s;const a=_b(t),n={...this.invocationParams(e),messages:a,stream:!0};let i;const l=await this.completionWithRetry(n,e);for await(const o of l){const d=o==null?void 0:o.choices[0];if(!d)continue;const{delta:u}=d;if(!u)continue;const c=dY(u,i);i=u.role??i;const p={prompt:e.promptIndex??0,completion:d.index??0};if(typeof c.content!="string"){console.log("[WARNING]: Received non-string content from OpenAI. This is currently not supported.");continue}const A=new sl({message:c,text:c.content,generationInfo:p});yield A,r==null||r.handleLLMNewToken(A.text??"",p,void 0,void 0,void 0,{chunk:A})}if((s=e.signal)!=null&&s.aborted)throw new Error("AbortError")}identifyingParams(){return this._identifyingParams()}async _generate(t,e,r){var l,s;const a={},n=this.invocationParams(e),i=_b(t);if(n.stream){const o=this._streamResponseChunks(t,e,r),d={};for await(const h of o){const C=((l=h.generationInfo)==null?void 0:l.completion)??0;d[C]===void 0?d[C]=h:d[C]=d[C].concat(h)}const u=Object.entries(d).sort(([h],[C])=>parseInt(h,10)-parseInt(C,10)).map(([h,C])=>C),{functions:c,function_call:p}=this.invocationParams(e),A=await this.getEstimatedTokenCountFromPrompt(t,c,p),m=await this.getNumTokensFromGenerations(u);return a.promptTokens=A,a.completionTokens=m,a.totalTokens=A+m,{generations:u,llmOutput:{estimatedTokenUsage:a}}}else{const o=await this.completionWithRetry({...n,stream:!1,messages:i},{signal:e==null?void 0:e.signal,...e==null?void 0:e.options}),{completion_tokens:d,prompt_tokens:u,total_tokens:c}=(o==null?void 0:o.usage)??{};d&&(a.completionTokens=(a.completionTokens??0)+d),u&&(a.promptTokens=(a.promptTokens??0)+u),c&&(a.totalTokens=(a.totalTokens??0)+c);const p=[];for(const A of(o==null?void 0:o.choices)??[]){const h={text:((s=A.message)==null?void 0:s.content)??"",message:oY(A.message??{role:"assistant"})};h.generationInfo={...A.finish_reason?{finish_reason:A.finish_reason}:{},...A.logprobs?{logprobs:A.logprobs}:{}},p.push(h)}return{generations:p,llmOutput:{tokenUsage:a}}}}async getEstimatedTokenCountFromPrompt(t,e,r){let a=(await this.getNumTokensFromMessages(t)).totalCount;if(e&&r!=="auto"){const n=lY(e);a+=await this.getNumTokens(n),a+=9}return e&&t.find(n=>n._getType()==="system")&&(a-=4),r==="none"?a+=1:typeof r=="object"&&(a+=await this.getNumTokens(r.name)+4),a}async getNumTokensFromGenerations(t){return(await Promise.all(t.map(async r=>{var a;return(a=r.message.additional_kwargs)!=null&&a.function_call?(await this.getNumTokensFromMessages([r.message])).countPerMessage[0]:await this.getNumTokens(r.message.content)}))).reduce((r,a)=>r+a,0)}async getNumTokensFromMessages(t){let e=0,r=0,a=0;this.modelName==="gpt-3.5-turbo-0301"?(r=4,a=-1):(r=3,a=1);const n=await Promise.all(t.map(async i=>{var c,p,A,m,h;const l=await this.getNumTokens(i.content),s=await this.getNumTokens(V9(i)),o=i.name!==void 0?a+await this.getNumTokens(i.name):0;let d=l+r+s+o;const u=i;return u._getType()==="function"&&(d-=2),(c=u.additional_kwargs)!=null&&c.function_call&&(d+=3),(p=u==null?void 0:u.additional_kwargs.function_call)!=null&&p.name&&(d+=await this.getNumTokens((A=u.additional_kwargs.function_call)==null?void 0:A.name)),(m=u.additional_kwargs.function_call)!=null&&m.arguments&&(d+=await this.getNumTokens(JSON.stringify(JSON.parse((h=u.additional_kwargs.function_call)==null?void 0:h.arguments)))),e+=d,d}));return e+=3,{totalCount:e,countPerMessage:n}}async completionWithRetry(t,e){const r=this._getClientOptions(e);return this.caller.call(async()=>{try{return await this.client.chat.completions.create(t,r)}catch(a){throw X9(a)}})}_getClientOptions(t){if(!this.client){const r={azureOpenAIApiDeploymentName:this.azureOpenAIApiDeploymentName,azureOpenAIApiInstanceName:this.azureOpenAIApiInstanceName,azureOpenAIApiKey:this.azureOpenAIApiKey,azureOpenAIBasePath:this.azureOpenAIBasePath,baseURL:this.clientConfig.baseURL},a=Z9(r),n={...this.clientConfig,baseURL:a,timeout:this.timeout,maxRetries:0};n.baseURL||delete n.baseURL,this.client=new qt(n)}const e={...this.clientConfig,...t};return this.azureOpenAIApiKey&&(e.headers={"api-key":this.azureOpenAIApiKey,...e.headers},e.query={"api-version":this.azureOpenAIApiVersion,...e.query}),e}_llmType(){return"openai"}_combineLLMOutput(...t){return t.reduce((e,r)=>(r&&r.tokenUsage&&(e.tokenUsage.completionTokens+=r.tokenUsage.completionTokens??0,e.tokenUsage.promptTokens+=r.tokenUsage.promptTokens??0,e.tokenUsage.totalTokens+=r.tokenUsage.totalTokens??0),e),{tokenUsage:{completionTokens:0,promptTokens:0,totalTokens:0}})}withStructuredOutput({schema:t,name:e,method:r,includeRaw:a}){let n,i;if(r==="jsonMode")n=this.bind({response_format:{type:"json_object"}}),i=new sH;else{const d=e??"extract";if(pY(t)){const u=S9(t);n=this.bind({tools:[{type:"function",function:{name:e,description:u.description,parameters:u}}],tool_choice:{type:"function",function:{name:d}}}),i=new Ub({returnSingle:!0,keyName:d})}else n=this.bind({tools:[{type:"function",function:{name:e,description:t.description,parameters:t}}],tool_choice:{type:"function",function:{name:e}}}),i=new Ub({returnSingle:!0,keyName:d})}if(!a)return n.pipe(i);const l=OA.assign({parsed:(d,u)=>i.invoke(d.raw,u)}),s=OA.assign({parsed:()=>null}),o=l.withFallbacks({fallbacks:[s]});return Bi.from([{raw:n},o])}};function pY(t){return typeof(t==null?void 0:t.parse)=="function"}ta();uu();var cY=(t,e)=>t.reduce((r,a,n)=>{const i=Math.floor(n/e),l=r[i]||[];return r[i]=l.concat([a]),r},[]);s1();var Y9=class{constructor(t){Object.defineProperty(this,"caller",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.caller=new su(t??{})}},mY=class extends Y9{constructor(t,e){var o,d,u;const r={maxConcurrency:2,...t};super(r),Object.defineProperty(this,"modelName",{enumerable:!0,configurable:!0,writable:!0,value:"text-embedding-ada-002"}),Object.defineProperty(this,"batchSize",{enumerable:!0,configurable:!0,writable:!0,value:512}),Object.defineProperty(this,"stripNewLines",{enumerable:!0,configurable:!0,writable:!0,value:!0}),Object.defineProperty(this,"dimensions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"timeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiVersion",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiInstanceName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIApiDeploymentName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"azureOpenAIBasePath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"organization",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"client",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"clientConfig",{enumerable:!0,configurable:!0,writable:!0,value:void 0});let a=(r==null?void 0:r.openAIApiKey)??Ut("OPENAI_API_KEY");const n=(r==null?void 0:r.azureOpenAIApiKey)??Ut("AZURE_OPENAI_API_KEY");if(!n&&!a)throw new Error("OpenAI or Azure OpenAI API key not found");const i=(r==null?void 0:r.azureOpenAIApiInstanceName)??Ut("AZURE_OPENAI_API_INSTANCE_NAME"),l=((r==null?void 0:r.azureOpenAIApiEmbeddingsDeploymentName)||(r==null?void 0:r.azureOpenAIApiDeploymentName))??(Ut("AZURE_OPENAI_API_EMBEDDINGS_DEPLOYMENT_NAME")||Ut("AZURE_OPENAI_API_DEPLOYMENT_NAME")),s=(r==null?void 0:r.azureOpenAIApiVersion)??Ut("AZURE_OPENAI_API_VERSION");if(this.azureOpenAIBasePath=(r==null?void 0:r.azureOpenAIBasePath)??Ut("AZURE_OPENAI_BASE_PATH"),this.organization=((o=r==null?void 0:r.configuration)==null?void 0:o.organization)??Ut("OPENAI_ORGANIZATION"),this.modelName=(r==null?void 0:r.modelName)??this.modelName,this.batchSize=(r==null?void 0:r.batchSize)??(n?1:this.batchSize),this.stripNewLines=(r==null?void 0:r.stripNewLines)??this.stripNewLines,this.timeout=r==null?void 0:r.timeout,this.dimensions=r==null?void 0:r.dimensions,this.azureOpenAIApiVersion=s,this.azureOpenAIApiKey=n,this.azureOpenAIApiInstanceName=i,this.azureOpenAIApiDeploymentName=l,this.azureOpenAIApiKey){if(!this.azureOpenAIApiInstanceName&&!this.azureOpenAIBasePath)throw new Error("Azure OpenAI API instance name not found");if(!this.azureOpenAIApiDeploymentName)throw new Error("Azure OpenAI API deployment name not found");if(!this.azureOpenAIApiVersion)throw new Error("Azure OpenAI API version not found");a=a??""}this.clientConfig={apiKey:a,organization:this.organization,baseURL:e==null?void 0:e.basePath,dangerouslyAllowBrowser:!0,defaultHeaders:(d=e==null?void 0:e.baseOptions)==null?void 0:d.headers,defaultQuery:(u=e==null?void 0:e.baseOptions)==null?void 0:u.params,...e,...t==null?void 0:t.configuration}}async embedDocuments(t){const e=cY(this.stripNewLines?t.map(i=>i.replace(/\n/g," ")):t,this.batchSize),r=e.map(i=>{const l={model:this.modelName,input:i};return this.dimensions&&(l.dimensions=this.dimensions),this.embeddingWithRetry(l)}),a=await Promise.all(r),n=[];for(let i=0;i<a.length;i+=1){const l=e[i],{data:s}=a[i];for(let o=0;o<l.length;o+=1)n.push(s[o].embedding)}return n}async embedQuery(t){const e={model:this.modelName,input:this.stripNewLines?t.replace(/\n/g," "):t};this.dimensions&&(e.dimensions=this.dimensions);const{data:r}=await this.embeddingWithRetry(e);return r[0].embedding}async embeddingWithRetry(t){if(!this.client){const r={azureOpenAIApiDeploymentName:this.azureOpenAIApiDeploymentName,azureOpenAIApiInstanceName:this.azureOpenAIApiInstanceName,azureOpenAIApiKey:this.azureOpenAIApiKey,azureOpenAIBasePath:this.azureOpenAIBasePath,baseURL:this.clientConfig.baseURL},a=Z9(r),n={...this.clientConfig,baseURL:a,timeout:this.timeout,maxRetries:0};n.baseURL||delete n.baseURL,this.client=new qt(n)}const e={};return this.azureOpenAIApiKey&&(e.headers={"api-key":this.azureOpenAIApiKey,...e.headers},e.query={"api-version":this.azureOpenAIApiVersion,...e.query}),this.caller.call(async()=>{try{return await this.client.embeddings.create(t,e)}catch(r){throw X9(r)}})}},gY=class extends Y9{constructor(t){super({maxConcurrency:1,...t}),Object.defineProperty(this,"model",{enumerable:!0,configurable:!0,writable:!0,value:"llama2"}),Object.defineProperty(this,"baseUrl",{enumerable:!0,configurable:!0,writable:!0,value:"http://localhost:11434"}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"keepAlive",{enumerable:!0,configurable:!0,writable:!0,value:"5m"}),Object.defineProperty(this,"requestOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),t!=null&&t.model&&(this.model=t.model),t!=null&&t.baseUrl&&(this.baseUrl=t.baseUrl),t!=null&&t.headers&&(this.headers=t.headers),t!=null&&t.keepAlive&&(this.keepAlive=t.keepAlive),t!=null&&t.requestOptions&&(this.requestOptions=this._convertOptions(t.requestOptions))}_convertOptions(t){const e={},r={embeddingOnly:"embedding_only",f16KV:"f16_kv",frequencyPenalty:"frequency_penalty",keepAlive:"keep_alive",logitsAll:"logits_all",lowVram:"low_vram",mainGpu:"main_gpu",mirostat:"mirostat",mirostatEta:"mirostat_eta",mirostatTau:"mirostat_tau",numBatch:"num_batch",numCtx:"num_ctx",numGpu:"num_gpu",numGqa:"num_gqa",numKeep:"num_keep",numPredict:"num_predict",numThread:"num_thread",penalizeNewline:"penalize_newline",presencePenalty:"presence_penalty",repeatLastN:"repeat_last_n",repeatPenalty:"repeat_penalty",ropeFrequencyBase:"rope_frequency_base",ropeFrequencyScale:"rope_frequency_scale",temperature:"temperature",stop:"stop",tfsZ:"tfs_z",topK:"top_k",topP:"top_p",typicalP:"typical_p",useMLock:"use_mlock",useMMap:"use_mmap",vocabOnly:"vocab_only"};for(const[a,n]of Object.entries(t)){const i=r[a];i&&(e[i]=n)}return e}async _request(t){const{model:e,baseUrl:r,keepAlive:a,requestOptions:n}=this;let i=r;i.startsWith("http://localhost:")&&(i=i.replace("http://localhost:","http://127.0.0.1:"));const l=await fetch(`${i}/api/embeddings`,{method:"POST",headers:{"Content-Type":"application/json",...this.headers},body:JSON.stringify({prompt:t,model:e,keep_alive:a,options:n})});if(!l.ok)throw new Error(`Request to Ollama server failed: ${l.status} ${l.statusText}`);return(await l.json()).embedding}async _embed(t){return await Promise.all(t.map(r=>this.caller.call(()=>this._request(r))))}async embedDocuments(t){return this._embed(t)}async embedQuery(t){return(await this.embedDocuments([t]))[0]}},ol=(t=>(t[t.DEBUG=1]="DEBUG",t[t.INFO=2]="INFO",t[t.ERROR=3]="ERROR",t[t.DISABLED=4]="DISABLED",t))(ol||{}),N9=class qo{static setLogLevel(e){qo.logLevel=e}static debug(...e){qo.logLevel<=1&&console.debug("[PAPA]",...e)}static info(...e){qo.logLevel<=2&&console.info("[PAPA]",...e)}static error(...e){qo.logLevel<=3&&console.error("[PAPA]",...e)}};N9.logLevel=4;var AY=N9,zt=AY;function hY(t,e){const r=[];let a=[];return e.forEach(n=>{a.push(n),a.length>=t&&(r.push(a),a=[])}),a.length>0&&r.push(a),r}async function*BY(t,e,r,a="full",n=100){const i=Date.now();let l=0,s=0,o=0;const d=hY(n,t);for(const u of d){const c=await e.exists(u.map(m=>m.metadata.hash)),p=[],A=[];for(let m=0;m<u.length;m++){const h=u[m];if(c[m]){s++;continue}p.push(h.metadata.hash),A.push(h)}A.length>0&&(await r.addDocuments(A),l+=A.length),await e.update(u.map(m=>({id:m.metadata.hash,filepath:m.metadata.filepath,indexed_at:Date.now()}))),yield{numAdded:l,numSkipped:s,numDeleted:o}}if(a==="byFile"){const u=await e.getIdsToDelete({indexStartTime:i,sources:[...new Set(t.map(c=>c.metadata.filepath))]});await Promise.all([r.delete({ids:u}),e.deleteIds(u)]),o+=u.length,zt.info(`Indexed by File: Added ${l} documents, skipped ${s} documents, deleted ${o} documents`),yield{numAdded:l,numSkipped:s,numDeleted:o}}else if(a==="full"){const u=await e.getIdsToDelete({indexStartTime:i});await Promise.all([r.delete({ids:u}),e.deleteIds(u)]),o+=u.length,zt.info(`Indexed all: Added ${l} documents, skipped ${s} documents, deleted ${o} documents`),yield{numAdded:l,numSkipped:s,numDeleted:o}}return{numAdded:l,numSkipped:s,numDeleted:o}}async function CY(t,e,r){if(t.sources){const a=await e.getIdsToDelete({sources:t.sources});await Promise.all([r.delete({ids:a}),e.deleteIds(a)]),zt.info(`Deleted ${a.length} documents based on sources: ${t.sources}`)}else if(t.docs){const a=t.docs.map(n=>n.metadata.hash);await Promise.all([r.delete({ids:a}),e.deleteIds(a)]),zt.info(`Deleted ${a.length} documents based on docs`)}else throw new Error("unindex must be called with either sources or docs")}vQ();var wY=t=>{const e=new wB({apiKey:t,apiUrl:"https://api.smith.langchain.com"});return new Xf({projectName:"Papa-ts",client:e})},L9=t=>t.openAIApiKey!==void 0,bY=t=>t.baseUrl!==void 0,KY=t=>t.openAIApiKey!==void 0,fY=t=>t.baseUrl!==void 0,wa={de:{initialAssistantMessage:"Hallo, ich bin dein Assistent. Wie kann ich dir helfen?",createTitle:`Erstelle einen sehr kurzen Titel als Zussamenfassung über die folgende Konversation (durch XML-Tags begrenzt), sodass er direkt als Dateinamen verwendet werden kann. Der Title darf also ausschließlich nur aus Buchstaben und Leerzeichen bestehen.
<conversation>
{chatHistory}
</conversation>
Titel:`,initialReduce:`Fasse meine Notes (durch XML-Tags begrenzt) zusammen, sodass die Frage "{query}" im nachhinein noch ausführlich beantwortet werden könnte.
Fasse nur die Notes zusammen die zur beantwortung der Frage beitragen könnten und überspringe die anderen ohne diese weiter zu erwähnen.
Achte darauf, für jede zusammengefassten Note den Wikilink (format: [[<Note Path><# Header1><## Header2>...]]) zur Note als Referenz anzugeben.
Bitte behalte die markdown formatiertung der Notes bei.
<notes>
{content}
</notes>
Zusammenfassung:`,reduce:`Fasse meine Notes (durch XML-Tags begrenzt) zusammen, sodass die Frage "{query}" im nachhinein noch ausführlich beantwortet werden könnte.
Achte darauf, die markdown und wikilink formatierung in den Notes beizubehalten.
<notes>
{content}
</notes>
Zusammenfassung:`,rag:`Als mein Assistent, bitte antworte basierend auf meiner Frage und der chathistory, wobei du ausschließlich auf mein vorhandenes Wissen (durch XML-Tags begrenzt) aus Obsidian zurückgreifst.
Achte darauf, die Markdown-Formatierung zu verwenden und deiner Antwort, die im Wissen hinterlegten Wikilinks (wikilink format: [[<Note Path>]]) als Referenz hinzu zufügen.
<knowledge>
{context}
</knowledge>
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Antwort:`,conversation:`Antworte als mein Assistent auf meine Frage basierend auf der chathistory (durch XML-Tags begrenzt).
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Antwort:`},en:{initialAssistantMessage:"Hello, I am your assistant. How can I help you?",createTitle:`Create a very short title as a summary of the following conversation (enclosed by XML tags), so that it can be used directly as a filename. The title may only consist of letters and spaces.
<conversation>
{chatHistory}
</conversation>
Title:`,initialReduce:`Summarize my notes (enclosed by XML tags) so that the question "{query}" could still be answered in detail afterwards.
Only summarize the notes that could contribute to answering the question and skip the others without mentioning them further.
Make sure to include the wikilink (format: [[<Note Path><# Header1><## Header2>...]]) to the note as a reference for each summarized note.
Please keep the markdown formatting of the notes.
<notes>
{content}
</notes>
Summary:`,reduce:`Summarize my notes (enclosed by XML tags) so that the question "{query}" could still be answered in detail afterwards.
Make sure to keep the markdown and wikilink formatting (format: [[<Note>]]) in the notes.
<notes>
{content}
</notes>
Summary:`,rag:`As my assistant, please respond to my query, using only my existing knowledge (enclosed by XML tags) from Obsidian.
Make sure to use Markdown formatting and add the wikilinks (format: [[<Note>]]) from the knowledge as a reference to your answer.
<knowledge>
{context}
</knowledge>
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Response:`,conversation:`Respond to my query as my assistant based on the chathistory.
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Response:`},fr:{initialAssistantMessage:"Bonjour, je suis votre assistant. Comment puis-je vous aider?",createTitle:`Créez un titre très court comme résumé de la conversation suivante (encadrée par des balises XML), de sorte qu'il puisse être utilisé directement comme nom de fichier. Le titre ne peut contenir que des lettres et des espaces.
<conversation>
{chatHistory}
</conversation>
Titre:`,initialReduce:`Résumez mes notes (encadrées par des balises XML) de manière à ce que la question "{query}" puisse encore être répondue en détail par la suite.
Résumez uniquement les notes qui pourraient contribuer à répondre à la question et ignorez les autres sans les mentionner davantage.
Assurez-vous d'inclure le wikilink (format: [[<Note Path><# Header1><## Header2>...]]) à la note comme référence pour chaque note résumée.
<notes>
{content}
</notes>
Résumé:`,reduce:`Résumez mes notes (encadrées par des balises XML) de manière à ce que la question "{query}" puisse encore être répondue en détail par la suite.
Veillez à conserver la mise en forme markdown et les wikilinks (format: [[<Note>]]) dans les notes.
<notes>
{content}
</notes>
Résumé:`,rag:`En tant qu'assistant, veuillez répondre à ma question en utilisant uniquement mes connaissances existantes (encadrées par des balises XML) provenant d'Obsidian.
Assurez-vous d'utiliser la mise en forme Markdown et d'ajouter les wikilinks (format: [[<Note>]]) des connaissances comme référence à votre réponse.
<knowledge>
{context}
</knowledge>
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Réponse:`,conversation:`Répondez à ma question en tant qu'assistant basé sur l'historique du chat.
<chathistory>
{chatHistory}
</chathistory>
<query>
{query}
</query>
Réponse:`}},QY=Object.keys(wa);async function wl(t,e){return L9(t)?await t.lcModel.getNumTokens(e):(Yf.encode(e)||[]).length}function WY(t,e,r){return Bi.from([{query:n=>n.userQuery,chatHistory:n=>n.chatHistory,context:Bi.from([n=>n.userQuery,t.withConfig({runName:"Retrieving"}).pipe(FY(e,r)).withConfig({runName:"PPDocs"}).pipe(yY(e,r))]).withConfig({runName:"Retrieving Notes"})},RY(e,r),e.lcModel,new g1]).withConfig({runName:"RAG Chat Pipe"})}function vY(t,e){return Bi.from([{query:a=>a.userQuery,chatHistory:a=>a.chatHistory},La.fromTemplate(wa[e.lang].conversation),t.lcModel,new g1]).withConfig({runName:"Normal Chat Pipe"})}function FY(t,e){return async r=>{const a=(await La.fromTemplate(wa[e.lang].reduce).formatPromptValue({query:e.userQuery,content:""})).toString(),n=t.contextWindow-await wl(t,a);zt.debug("Retrieved Docs",r);const i={};for(const o of r)i[o.metadata.filepath]||(i[o.metadata.filepath]=[]),i[o.metadata.filepath].push(o);const l=[];for(const o in i){i[o].sort((A,m)=>A.metadata.order-m.metadata.order);let d=[],u=[""];for(const A of i[o]){let m="";for(let h=0;h<A.metadata.header.length;h++)A.metadata.header[h]!==u[h]&&(m+=A.metadata.header[h]+`
`);u=A.metadata.header,d.push(m+A.pageContent)}const c=await T9(d,A=>wl(t,A),n),p=c.length>1;c.forEach((A,m)=>{let h="";h+=`<note>
`,h+="Wikilink: [["+o.replace(".md","")+"]]"+(p?" Part "+(m+1):"")+`
`,h+=A.join(`
`),h+=`
</note>`,l.push(h)})}const s=await wl(t,l.join(`
`))>n;return zt.debug("Postprocessed Docs",l),{notes:l,needsReduce:s}}}function yY(t,e){return async(r,a)=>{if(!r.needsReduce)return r.notes.join(`
`);const n=a==null?void 0:a.config;let i=r.notes,l=0;const s=(await La.fromTemplate(wa[e.lang].reduce).formatPromptValue({query:e.userQuery,content:""})).toString(),o=t.contextWindow-await wl(t,s);do{n&&(n.runName=`Reduce ${l+1}`);const d=await T9(i,c=>wl(t,c),o),u=Bi.from([{content:new OA,query:()=>e.userQuery},l===0?La.fromTemplate(wa[e.lang].initialReduce):La.fromTemplate(wa[e.lang].reduce),t.lcModel,new g1]);i=await Promise.all(d.map(c=>u.invoke(c.join(`
`)))),zt.debug("Reduced Docs",i),l+=1}while(await wl(t,i.join(`
`))>o);return i.join(`
`)}}async function T9(t,e,r){const a=[];let n=[];for(const i of t)if(n.push(i),await e(n.join(`
`))>r){if(n.length===1)throw new Error("User query is too long or a single document was longer than the context length (should not happen as we split documents by length in post processing).");a.push(n.slice(0,-1)),n=n.slice(-1)}return a.push(n),a}function RY(t,e){return async({query:r,chatHistory:a,context:n})=>{const i=(await La.fromTemplate(wa[e.lang].rag).formatPromptValue({query:r,context:n,chatHistory:a})).toString();return t.contextWindow>await wl(t,i)?i:"Please echo 'The chathistory is too long, please create a new chat or summarize it.'"}}var EY=class extends ml{constructor(t){super(t),this.indexName=t,this.version(1).stores({records:"id,filepath,indexed_at"}),this.records.clear()}async update(t){await this.transaction("rw",this.records,async()=>{await this.records.bulkPut(t)})}async exists(t){const e=await this.records.where("id").anyOf(t).toArray();return t.map(r=>e.some(a=>a.id===r))}async getIdsToDelete(t){let e=[];return t.indexStartTime&&t.sources&&t.sources.length>0?e=await this.records.where("indexed_at").below(t.indexStartTime).and(r=>t.sources.includes(r.filepath)).toArray():t.indexStartTime?e=await this.records.where("indexed_at").below(t.indexStartTime).toArray():t.sources&&(e=await this.records.where("filepath").anyOf(t.sources).toArray()),e.map(r=>r.id)}async deleteIds(t){await this.records.bulkDelete(t)}async restore(t){zt.debug("Restoring recordManager from backup"),await this.transaction("rw",this.records,async()=>{await this.records.bulkPut(t)}),zt.info("Restored recordManager from backup"),zt.debug({records:await this.records.toArray()})}async getData(){return await this.records.toArray()}},GY=class{constructor(t){Object.defineProperty(this,"pageContent",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.pageContent=t.pageContent?t.pageContent.toString():this.pageContent,this.metadata=t.metadata??{}}};Ma();uu();Ma();zs();var SY=class extends Ot{constructor(t){super(t),Object.defineProperty(this,"callbacks",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tags",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metadata",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"verbose",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.callbacks=t==null?void 0:t.callbacks,this.tags=(t==null?void 0:t.tags)??[],this.metadata=(t==null?void 0:t.metadata)??{},this.verbose=(t==null?void 0:t.verbose)??!1}_getRelevantDocuments(t,e){throw new Error("Not implemented!")}async invoke(t,e){return this.getRelevantDocuments(t,lr(e))}async getRelevantDocuments(t,e){const r=lr(N7(e)),a=await Pr.configure(r.callbacks,this.callbacks,r.tags,this.tags,r.metadata,this.metadata,{verbose:this.verbose}),n=await(a==null?void 0:a.handleRetrieverStart(this.toJSON(),t,void 0,void 0,void 0,void 0,r.runName));try{const i=await this._getRelevantDocuments(t,n);return await(n==null?void 0:n.handleRetrieverEnd(i)),i}catch(i){throw await(n==null?void 0:n.handleRetrieverError(i)),i}}};lu();var lg=class extends SY{static lc_name(){return"VectorStoreRetriever"}get lc_namespace(){return["langchain_core","vectorstores"]}_vectorstoreType(){return this.vectorStore._vectorstoreType()}constructor(t){super(t),Object.defineProperty(this,"vectorStore",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"k",{enumerable:!0,configurable:!0,writable:!0,value:4}),Object.defineProperty(this,"searchType",{enumerable:!0,configurable:!0,writable:!0,value:"similarity"}),Object.defineProperty(this,"searchKwargs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"filter",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.vectorStore=t.vectorStore,this.k=t.k??this.k,this.searchType=t.searchType??this.searchType,this.filter=t.filter,t.searchType==="mmr"&&(this.searchKwargs=t.searchKwargs)}async _getRelevantDocuments(t,e){if(this.searchType==="mmr"){if(typeof this.vectorStore.maxMarginalRelevanceSearch!="function")throw new Error(`The vector store backing this retriever, ${this._vectorstoreType()} does not support max marginal relevance search.`);return this.vectorStore.maxMarginalRelevanceSearch(t,{k:this.k,filter:this.filter,...this.searchKwargs},e==null?void 0:e.getChild("vectorstore"))}return this.vectorStore.similaritySearch(t,this.k,this.filter,e==null?void 0:e.getChild("vectorstore"))}async addDocuments(t,e){return this.vectorStore.addDocuments(t,e)}},ZY=class extends Fl{constructor(t,e){super(e),Object.defineProperty(this,"lc_namespace",{enumerable:!0,configurable:!0,writable:!0,value:["langchain","vectorstores",this._vectorstoreType()]}),Object.defineProperty(this,"embeddings",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.embeddings=t}async delete(t){throw new Error("Not implemented.")}async similaritySearch(t,e=4,r=void 0,a=void 0){return(await this.similaritySearchVectorWithScore(await this.embeddings.embedQuery(t),e,r)).map(i=>i[0])}async similaritySearchWithScore(t,e=4,r=void 0,a=void 0){return this.similaritySearchVectorWithScore(await this.embeddings.embedQuery(t),e,r)}static fromTexts(t,e,r,a){throw new Error("the Langchain vectorstore implementation you are using forgot to override this, please report a bug")}static fromDocuments(t,e,r){throw new Error("the Langchain vectorstore implementation you are using forgot to override this, please report a bug")}asRetriever(t,e,r,a,n,i){if(typeof t=="number")return new lg({vectorStore:this,k:t,filter:e,tags:[...a??[],this._vectorstoreType()],metadata:n,verbose:i,callbacks:r});{const l={vectorStore:this,k:t==null?void 0:t.k,filter:t==null?void 0:t.filter,tags:[...(t==null?void 0:t.tags)??[],this._vectorstoreType()],metadata:t==null?void 0:t.metadata,verbose:t==null?void 0:t.verbose,callbacks:t==null?void 0:t.callbacks,searchType:t==null?void 0:t.searchType};return(t==null?void 0:t.searchType)==="mmr"?new lg({...l,searchKwargs:t.searchKwargs}):new lg({...l})}}},XY={id:"string",filepath:"string",order:"number",header:"string[]",content:"string"},Ib=class extends ZY{constructor(t,e){super(t,e),this.embeddings=t,this.similarity=e.similarityThreshold??.75}_vectorstoreType(){return"OramaStore"}async create(t,e){this.vectorSize=e??(await this.embeddings.embedQuery("test")).length,this.indexName=t,this.db=await LE({schema:{...XY,embedding:`vector[${this.vectorSize}]`},id:t})}async restore(t){zt.debug("Restoring vectorstore from backup");const e=Object.keys(t.docs).map(r=>t.docs[r]);await this.create(t.indexName,t.vectorSize),await fw(this.db,e),zt.info("Restored vectorstore from backup"),zt.debug(this.db.data.docs.docs)}async delete(t){await OE(this.db,t.ids)}async addVectors(t,e){const r=e.map((n,i)=>({id:n.metadata.hash,filepath:n.metadata.filepath,content:n.metadata.content,header:n.metadata.header,order:n.metadata.order,embedding:t[i]}));return await fw(this.db,r)}async addDocuments(t){await this.addVectors(await this.embeddings.embedDocuments(t.map(e=>e.pageContent)),t)}async similaritySearchVectorWithScore(t,e){return(await dG(this.db,{mode:"vector",vector:{value:t,property:"embedding"},limit:e,similarity:this.similarity})).hits.map(a=>[new GY({metadata:{filepath:a.document.filepath,order:a.document.order,header:a.document.header},pageContent:a.document.content}),a.score])}async getData(){return{indexName:this.indexName,vectorSize:this.vectorSize,docs:this.db.data.docs.docs}}setSimilarityThreshold(t){this.similarity=t}},k9=class{constructor(){this.stopRunFlag=!1}async init(t){await this.setGenModel(t.genModel),await this.setVectorStore(t.embedModel),t.langsmithApiKey&&this.setTracer(t.langsmithApiKey),this.recordManager=new EY("RecordManager"),zt.setLogLevel(t.logLvl??2)}async setVectorStore(t){if(KY(t))this.vectorStore=new Ib(new mY({...t,modelName:t.model,batchSize:2048,maxRetries:0}),{similarityThreshold:t.similarityThreshold});else if(fY(t))this.vectorStore=new Ib(new gY({...t,maxRetries:0}),{similarityThreshold:t.similarityThreshold});else throw new Error("Invalid embedModel");await this.vectorStore.create(t.model),this.retriever=this.vectorStore.asRetriever({k:t.k??100})}setSimilarityThreshold(t){this.vectorStore.setSimilarityThreshold(t)}setNumOfDocsToRetrieve(t){this.retriever=this.vectorStore.asRetriever({k:t})}async setGenModel(t){if(this.genModel=t,this.genModel.contextWindow=(t.contextWindow??2048)-100,L9(t))this.genModel.lcModel=new uY({...t,modelName:t.model,streaming:!0});else if(bY(t))this.genModel.lcModel=new nH(t);else throw new Error("Invalid genModel")}embedDocuments(t,e="full"){return zt.info("Embedding documents in mode",e),BY(t,this.recordManager,this.vectorStore,e,10)}async deleteDocuments(t){await CY(t,this.recordManager,this.vectorStore)}async createTitleFromChatHistory(t,e){return Bi.from([La.fromTemplate(wa[t].createTitle),this.genModel.lcModel,new g1]).invoke({chatHistory:e})}run(t){return zt.info("Running RAG... Input:",t),t.isRAG?this.streamProcessor(WY(this.retriever,this.genModel,t).streamLog(t,this.tracer?{callbacks:[this.tracer]}:void 0)):this.streamProcessor(vY(this.genModel,t).streamLog(t,this.tracer?{callbacks:[this.tracer]}:void 0))}stopRun(){zt.info("Stopping run..."),this.stopRunFlag=!0}async*streamProcessor(t){var s,o,d,u;let e={},r=!1,a=!1,n=!1,i="",l={status:"startup"};for await(const c of t){if(this.stopRunFlag){this.stopRunFlag=!1,yield{status:"stopped",content:i};return}e=x0(e,c.ops).newDocument,!r&&e.logs.Retrieving?(r=!0,l={status:"retrieving"}):!a&&((o=(s=e.logs.Retrieving)==null?void 0:s.final_output)!=null&&o.documents)?(l={status:"retrieving",content:e.logs.Retrieving.final_output.documents.length},a=!0):!n&&((u=(d=e.logs.PPDocs)==null?void 0:d.final_output)!=null&&u.needsReduce)?(n=!0,l={status:"reducing",content:e.logs.PPDocs.final_output.notes.length}):e.streamed_output.join("")!==""&&(i=e.streamed_output.join(""),l={status:"generating",content:i}),yield l}}async load(t){const{VectorStore:e,RecordManager:r}=cy(t);await Promise.all([this.vectorStore.restore(e),this.recordManager.restore(r)])}async getData(){return ty({VectorStore:await this.vectorStore.getData(),RecordManager:await this.recordManager.getData()})}setTracer(t){this.tracer=wY(t)}static setLogLevel(t){zt.setLogLevel(t)}};function HY(t){return Xh.createHash("sha1").update(t,"utf-8").digest("hex")}async function kp(t,e){let r=[];for(const a of e){const n=t.metadataCache.getFileCache(a);if(!n)continue;const i=512,l=new Pc({chunkSize:i*4,chunkOverlap:0,separators:[`
`,". ","? ","! "," ",""]}),s=await t.vault.cachedRead(a);let o=0,d=1,u=[],c=0,p=!1;for(const A of n.sections||[]){const m=s.slice(A.position.start.offset,A.position.end.offset),h=async(C,w=!1)=>{const b=a.path+(w?" metadata":u.join("")+" ID"+d);r.push({metadata:{id:b,hash:HY(b+m),filepath:a.path,order:w?0:d,header:[...u],content:w?`Metadaten:
`+m:m},pageContent:C}),w||d++};if(A.type==="yaml"&&!p){const C="Note Path: "+a.path+`
Metadaten:
`+m;h(C,!0),p=!0;continue}else if(A.type==="heading"){const C=n.headings[o],w=s.slice(C.position.start.offset,C.position.end.offset);C.level>c?(u.push(w),c=C.level):C.level<c?(u.pop(),u.pop(),u.push(w),c=C.level):(u.pop(),u.push(w)),o++}else{if(A.type==="thematicBreak")continue;if(A.type==="paragraph"){const C=await l.splitText(m);for(let w=0;w<C.length;w++){let b="";C[w+1]&&(C[w+1].charAt(0)==="."||C[w+1].charAt(0)==="?"||C[w+1].charAt(0)==="!")&&(b=C[w+1].charAt(0),C[w+1]=C[w+1].slice(1).trim());const f=C[w]+b,K="Note Path: "+a.path+`
`+u.join(`
`)+`
`+f;h(K)}}else if(A.type==="code"){if(m.length>i*4)continue;const C="Note Path: "+a.path+`
`+u.join(`
`)+`
`+m;h(C)}else{if(m.length>i*8)continue;const C="Note Path: "+a.path+`
`+u.join(`
`)+`
`+m;h(C)}}}}return zt.info("Loaded "+r.length+" documents from Obsidian"),r}/*! Bundled license information:
@langchain/core/dist/utils/fast-json-patch/src/helpers.js:
(*!
* https://github.com/Starcounter-Jack/JSON-Patch
* (c) 2017-2022 Joachim Wester
* MIT licensed
*)
@langchain/core/dist/utils/fast-json-patch/src/duplex.js:
(*!
* https://github.com/Starcounter-Jack/JSON-Patch
* (c) 2013-2021 Joachim Wester
* MIT license
*)
web-streams-polyfill/dist/ponyfill.mjs:
(**
* @license
* web-streams-polyfill v4.0.0-beta.3
* Copyright 2021 Mattias Buelens, Diwank Singh Tomer and other contributors.
* This code is released under the MIT license.
* SPDX-License-Identifier: MIT
*)
formdata-node/lib/esm/blobHelpers.js:
(*! Based on fetch-blob. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> & David Frank *)
formdata-node/lib/esm/Blob.js:
(*! Based on fetch-blob. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> & David Frank *)
humanize-ms/index.js:
(*!
* humanize-ms - index.js
* Copyright(c) 2014 dead_horse <dead_horse@qq.com>
* MIT Licensed
*)
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
*)
node-domexception/index.js:
(*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
@langchain/core/dist/utils/js-sha1/hash.js:
(*
* [js-sha1]{@link https://github.com/emn178/js-sha1}
*
* @version 0.6.0
* @author Chen, Yi-Cyuan [emn178@gmail.com]
* @copyright Chen, Yi-Cyuan 2014-2017
* @license MIT
*)
*/function le(){}const pC=t=>t;function Jd(t,e){for(const r in e)t[r]=e[r];return t}function U9(t){return t()}function Db(){return Object.create(null)}function We(t){t.forEach(U9)}function Yr(t){return typeof t=="function"}function st(t,e){return t!=t?e==e:t!==e||t&&typeof t=="object"||typeof t=="function"}function VY(t){return Object.keys(t).length===0}function cC(t,...e){if(t==null){for(const a of e)a(void 0);return le}const r=t.subscribe(...e);return r.unsubscribe?()=>r.unsubscribe():r}function ie(t){let e;return cC(t,r=>e=r)(),e}function me(t,e,r){t.$$.on_destroy.push(cC(e,r))}function hu(t,e,r,a){if(t){const n=_9(t,e,r,a);return t[0](n)}}function _9(t,e,r,a){return t[1]&&a?Jd(r.ctx.slice(),t[1](a(e))):r.ctx}function Bu(t,e,r,a){if(t[2]&&a){const n=t[2](a(r));if(e.dirty===void 0)return n;if(typeof n=="object"){const i=[],l=Math.max(e.dirty.length,n.length);for(let s=0;s<l;s+=1)i[s]=e.dirty[s]|n[s];return i}return e.dirty|n}return e.dirty}function Cu(t,e,r,a,n,i){if(n){const l=_9(e,r,a,i);t.p(l,n)}}function wu(t){if(t.ctx.length>32){const e=[],r=t.ctx.length/32;for(let a=0;a<r;a++)e[a]=-1;return e}return-1}function Ye(t,e,r){return t.set(r),e}function Ge(t){return t&&Yr(t.destroy)?t.destroy:le}const I9=typeof window<"u";let mC=I9?()=>window.performance.now():()=>Date.now(),gC=I9?t=>requestAnimationFrame(t):le;const ys=new Set;function D9(t){ys.forEach(e=>{e.c(t)||(ys.delete(e),e.f())}),ys.size!==0&&gC(D9)}function AC(t){let e;return ys.size===0&&gC(D9),{promise:new Promise(r=>{ys.add(e={c:t,f:r})}),abort(){ys.delete(e)}}}function E(t,e){t.appendChild(e)}function M9(t){if(!t)return document;const e=t.getRootNode?t.getRootNode():t.ownerDocument;return e&&e.host?e:t.ownerDocument}function YY(t){const e=X("style");return e.textContent="/* empty */",NY(M9(t),e),e.sheet}function NY(t,e){return E(t.head||t,e),e.sheet}function N(t,e,r){t.insertBefore(e,r||null)}function Y(t){t.parentNode&&t.parentNode.removeChild(t)}function ea(t,e){for(let r=0;r<t.length;r+=1)t[r]&&t[r].d(e)}function X(t){return document.createElement(t)}function ot(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}function te(t){return document.createTextNode(t)}function M(){return te(" ")}function Tt(){return te("")}function de(t,e,r,a){return t.addEventListener(e,r,a),()=>t.removeEventListener(e,r,a)}function Sl(t){return function(e){return e.preventDefault(),t.call(this,e)}}function F(t,e,r){r==null?t.removeAttribute(e):t.getAttribute(e)!==r&&t.setAttribute(e,r)}function N0(t){return t===""?null:+t}function LY(t){return Array.from(t.childNodes)}function ne(t,e){e=""+e,t.data!==e&&(t.data=e)}function Wt(t,e){t.value=e??""}function yl(t,e,r,a){r==null?t.style.removeProperty(e):t.style.setProperty(e,r,a?"important":"")}function Ia(t,e,r){for(let a=0;a<t.options.length;a+=1){const n=t.options[a];if(n.__value===e){n.selected=!0;return}}(!r||e!==void 0)&&(t.selectedIndex=-1)}function Od(t){const e=t.querySelector(":checked");return e&&e.__value}function Mb(t,e,r){t.classList.toggle(e,!!r)}function TY(t,e,{bubbles:r=!1,cancelable:a=!1}={}){return new CustomEvent(t,{detail:e,bubbles:r,cancelable:a})}const L0=new Map;let T0=0;function kY(t){let e=5381,r=t.length;for(;r--;)e=(e<<5)-e^t.charCodeAt(r);return e>>>0}function UY(t,e){const r={stylesheet:YY(e),rules:{}};return L0.set(t,r),r}function x9(t,e,r,a,n,i,l,s=0){const o=16.666/a;let d=`{
`;for(let C=0;C<=1;C+=o){const w=e+(r-e)*i(C);d+=C*100+`%{${l(w,1-w)}}
`}const u=d+`100% {${l(r,1-r)}}
}`,c=`__svelte_${kY(u)}_${s}`,p=M9(t),{stylesheet:A,rules:m}=L0.get(p)||UY(p,t);m[c]||(m[c]=!0,A.insertRule(`@keyframes ${c} ${u}`,A.cssRules.length));const h=t.style.animation||"";return t.style.animation=`${h?`${h}, `:""}${c} ${a}ms linear ${n}ms 1 both`,T0+=1,c}function Ah(t,e){const r=(t.style.animation||"").split(", "),a=r.filter(e?i=>i.indexOf(e)<0:i=>i.indexOf("__svelte")===-1),n=r.length-a.length;n&&(t.style.animation=a.join(", "),T0-=n,T0||_Y())}function _Y(){gC(()=>{T0||(L0.forEach(t=>{const{ownerNode:e}=t.stylesheet;e&&Y(e)}),L0.clear())})}let Pd;function md(t){Pd=t}function J9(){if(!Pd)throw new Error("Function called outside component initialization");return Pd}function bi(t){J9().$$.on_mount.push(t)}function hC(t){J9().$$.after_update.push(t)}const us=[],hr=[];let Rs=[];const hh=[],IY=Promise.resolve();let Bh=!1;function DY(){Bh||(Bh=!0,IY.then(O9))}function Dr(t){Rs.push(t)}function h1(t){hh.push(t)}const sg=new Set;let ts=0;function O9(){if(ts!==0)return;const t=Pd;do{try{for(;ts<us.length;){const e=us[ts];ts++,md(e),MY(e.$$)}}catch(e){throw us.length=0,ts=0,e}for(md(null),us.length=0,ts=0;hr.length;)hr.pop()();for(let e=0;e<Rs.length;e+=1){const r=Rs[e];sg.has(r)||(sg.add(r),r())}Rs.length=0}while(us.length);for(;hh.length;)hh.pop()();Bh=!1,sg.clear(),md(t)}function MY(t){if(t.fragment!==null){t.update(),We(t.before_update);const e=t.dirty;t.dirty=[-1],t.fragment&&t.fragment.p(t.ctx,e),t.after_update.forEach(Dr)}}function xY(t){const e=[],r=[];Rs.forEach(a=>t.indexOf(a)===-1?e.push(a):r.push(a)),r.forEach(a=>a()),Rs=e}let So;function P9(){return So||(So=Promise.resolve(),So.then(()=>{So=null})),So}function k0(t,e,r){t.dispatchEvent(TY(`${e?"intro":"outro"}${r}`))}const hc=new Set;let ai;function vt(){ai={r:0,c:[],p:ai}}function Ft(){ai.r||We(ai.c),ai=ai.p}function D(t,e){t&&t.i&&(hc.delete(t),t.i(e))}function J(t,e,r,a){if(t&&t.o){if(hc.has(t))return;hc.add(t),ai.c.push(()=>{hc.delete(t),a&&(r&&t.d(1),a())}),t.o(e)}else a&&a()}const z9={duration:0};function BC(t,e,r){const a={direction:"in"};let n=e(t,r,a),i=!1,l,s,o=0;function d(){l&&Ah(t,l)}function u(){const{delay:p=0,duration:A=300,easing:m=pC,tick:h=le,css:C}=n||z9;C&&(l=x9(t,0,1,A,p,m,C,o++)),h(0,1);const w=mC()+p,b=w+A;s&&s.abort(),i=!0,Dr(()=>k0(t,!0,"start")),s=AC(f=>{if(i){if(f>=b)return h(1,0),k0(t,!0,"end"),d(),i=!1;if(f>=w){const K=m((f-w)/A);h(K,1-K)}}return i})}let c=!1;return{start(){c||(c=!0,Ah(t),Yr(n)?(n=n(a),P9().then(u)):u())},invalidate(){c=!1},end(){i&&(d(),i=!1)}}}function CC(t,e,r){const a={direction:"out"};let n=e(t,r,a),i=!0,l;const s=ai;s.r+=1;let o;function d(){const{delay:u=0,duration:c=300,easing:p=pC,tick:A=le,css:m}=n||z9;m&&(l=x9(t,1,0,c,u,p,m));const h=mC()+u,C=h+c;Dr(()=>k0(t,!1,"start")),"inert"in t&&(o=t.inert,t.inert=!0),AC(w=>{if(i){if(w>=C)return A(0,1),k0(t,!1,"end"),--s.r||We(s.c),!1;if(w>=h){const b=p((w-h)/c);A(1-b,b)}}return i})}return Yr(n)?P9().then(()=>{n=n(a),d()}):d(),{end(u){u&&"inert"in t&&(t.inert=o),u&&n.tick&&n.tick(1,0),i&&(l&&Ah(t,l),i=!1)}}}function Xt(t){return(t==null?void 0:t.length)!==void 0?t:Array.from(t)}function JY(t,e){J(t,1,1,()=>{e.delete(t.key)})}function OY(t,e,r,a,n,i,l,s,o,d,u,c){let p=t.length,A=i.length,m=p;const h={};for(;m--;)h[t[m].key]=m;const C=[],w=new Map,b=new Map,f=[];for(m=A;m--;){const v=c(n,i,m),L=r(v);let y=l.get(L);y?a&&f.push(()=>y.p(v,e)):(y=d(L,v),y.c()),w.set(L,C[m]=y),L in h&&b.set(L,Math.abs(m-h[L]))}const K=new Set,W=new Set;function R(v){D(v,1),v.m(s,u),l.set(v.key,v),u=v.first,A--}for(;p&&A;){const v=C[A-1],L=t[p-1],y=v.key,G=L.key;v===L?(u=v.first,p--,A--):w.has(G)?!l.has(y)||K.has(y)?R(v):W.has(G)?p--:b.get(y)>b.get(G)?(W.add(y),R(v)):(K.add(G),p--):(o(L,l),p--)}for(;p--;){const v=t[p];w.has(v.key)||o(v,l)}for(;A;)R(C[A-1]);return We(f),C}function B1(t,e,r){const a=t.$$.props[e];a!==void 0&&(t.$$.bound[a]=r,r(t.$$.ctx[a]))}function pe(t){t&&t.c()}function se(t,e,r){const{fragment:a,after_update:n}=t.$$;a&&a.m(e,r),Dr(()=>{const i=t.$$.on_mount.map(U9).filter(Yr);t.$$.on_destroy?t.$$.on_destroy.push(...i):We(i),t.$$.on_mount=[]}),n.forEach(Dr)}function oe(t,e){const r=t.$$;r.fragment!==null&&(xY(r.after_update),We(r.on_destroy),r.fragment&&r.fragment.d(e),r.on_destroy=r.fragment=null,r.ctx=[])}function PY(t,e){t.$$.dirty[0]===-1&&(us.push(t),DY(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<<e%31}function ut(t,e,r,a,n,i,l=null,s=[-1]){const o=Pd;md(t);const d=t.$$={fragment:null,ctx:[],props:i,update:le,not_equal:n,bound:Db(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(e.context||(o?o.$$.context:[])),callbacks:Db(),dirty:s,skip_bound:!1,root:e.target||o.$$.root};l&&l(d.root);let u=!1;if(d.ctx=r?r(t,e.props||{},(c,p,...A)=>{const m=A.length?A[0]:p;return d.ctx&&n(d.ctx[c],d.ctx[c]=m)&&(!d.skip_bound&&d.bound[c]&&d.bound[c](m),u&&PY(t,c)),p}):[],d.update(),u=!0,We(d.before_update),d.fragment=a?a(d.ctx):!1,e.target){if(e.hydrate){const c=LY(e.target);d.fragment&&d.fragment.l(c),c.forEach(Y)}else d.fragment&&d.fragment.c();e.intro&&D(t.$$.fragment),se(t,e.target,e.anchor),O9()}md(o)}class pt{constructor(){Ze(this,"$$");Ze(this,"$$set")}$destroy(){oe(this,1),this.$destroy=le}$on(e,r){if(!Yr(r))return le;const a=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return a.push(r),()=>{const n=a.indexOf(r);n!==-1&&a.splice(n,1)}}$set(e){this.$$set&&!VY(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const zY="4",rs=[];function jY(t,e){return{subscribe:$t(t,e).subscribe}}function $t(t,e=le){let r;const a=new Set;function n(s){if(st(t,s)&&(t=s,r)){const o=!rs.length;for(const d of a)d[1](),rs.push(d,t);if(o){for(let d=0;d<rs.length;d+=2)rs[d][0](rs[d+1]);rs.length=0}}}function i(s){n(s(t))}function l(s,o=le){const d=[s,o];return a.add(d),a.size===1&&(r=e(n,i)||le),s(t),()=>{a.delete(d),a.size===0&&r&&(r(),r=null)}}return{set:n,update:i,subscribe:l}}function js(t,e,r){const a=!Array.isArray(t),n=a?[t]:t;if(!n.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const i=e.length<2;return jY(r,(l,s)=>{let o=!1;const d=[];let u=0,c=le;const p=()=>{if(u)return;c();const m=e(a?d[0]:d,l,s);i?l(m):c=Yr(m)?m:le},A=n.map((m,h)=>cC(m,C=>{d[h]=C,u&=~(1<<h),o&&p()},()=>{u|=1<<h}));return o=!0,p(),function(){We(A),c(),o=!1}})}var qY=function(e){return $Y(e)&&!eN(e)};function $Y(t){return!!t&&typeof t=="object"}function eN(t){var e=Object.prototype.toString.call(t);return e==="[object RegExp]"||e==="[object Date]"||aN(t)}var tN=typeof Symbol=="function"&&Symbol.for,rN=tN?Symbol.for("react.element"):60103;function aN(t){return t.$$typeof===rN}function nN(t){return Array.isArray(t)?[]:{}}function zd(t,e){return e.clone!==!1&&e.isMergeableObject(t)?Ts(nN(t),t,e):t}function iN(t,e,r){return t.concat(e).map(function(a){return zd(a,r)})}function lN(t,e){if(!e.customMerge)return Ts;var r=e.customMerge(t);return typeof r=="function"?r:Ts}function sN(t){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[]}function xb(t){return Object.keys(t).concat(sN(t))}function j9(t,e){try{return e in t}catch{return!1}}function oN(t,e){return j9(t,e)&&!(Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))}function dN(t,e,r){var a={};return r.isMergeableObject(t)&&xb(t).forEach(function(n){a[n]=zd(t[n],r)}),xb(e).forEach(function(n){oN(t,n)||(j9(t,n)&&r.isMergeableObject(e[n])?a[n]=lN(n,r)(t[n],e[n],r):a[n]=zd(e[n],r))}),a}function Ts(t,e,r){r=r||{},r.arrayMerge=r.arrayMerge||iN,r.isMergeableObject=r.isMergeableObject||qY,r.cloneUnlessOtherwiseSpecified=zd;var a=Array.isArray(e),n=Array.isArray(t),i=a===n;return i?a?r.arrayMerge(t,e,r):dN(t,e,r):zd(e,r)}Ts.all=function(e,r){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce(function(a,n){return Ts(a,n,r)},{})};var uN=Ts,pN=uN;const cN=J0(pN);var Ch=function(t,e){return Ch=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,a){r.__proto__=a}||function(r,a){for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(r[n]=a[n])},Ch(t,e)};function C1(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ch(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var $e=function(){return $e=Object.assign||function(e){for(var r,a=1,n=arguments.length;a<n;a++){r=arguments[a];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},$e.apply(this,arguments)};function mN(t,e){var r={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&e.indexOf(a)<0&&(r[a]=t[a]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(t);n<a.length;n++)e.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(t,a[n])&&(r[a[n]]=t[a[n]]);return r}function og(t,e,r){if(r||arguments.length===2)for(var a=0,n=e.length,i;a<n;a++)(i||!(a in e))&&(i||(i=Array.prototype.slice.call(e,0,a)),i[a]=e[a]);return t.concat(i||Array.prototype.slice.call(e))}var Oe;(function(t){t[t.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",t[t.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",t[t.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",t[t.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",t[t.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",t[t.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",t[t.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",t[t.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",t[t.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",t[t.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",t[t.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",t[t.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",t[t.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",t[t.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",t[t.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",t[t.INVALID_TAG=23]="INVALID_TAG",t[t.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",t[t.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",t[t.UNCLOSED_TAG=27]="UNCLOSED_TAG"})(Oe||(Oe={}));var ft;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(ft||(ft={}));var ks;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(ks||(ks={}));function Jb(t){return t.type===ft.literal}function gN(t){return t.type===ft.argument}function q9(t){return t.type===ft.number}function $9(t){return t.type===ft.date}function ev(t){return t.type===ft.time}function tv(t){return t.type===ft.select}function rv(t){return t.type===ft.plural}function AN(t){return t.type===ft.pound}function av(t){return t.type===ft.tag}function nv(t){return!!(t&&typeof t=="object"&&t.type===ks.number)}function wh(t){return!!(t&&typeof t=="object"&&t.type===ks.dateTime)}var iv=/[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/,hN=/(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;function BN(t){var e={};return t.replace(hN,function(r){var a=r.length;switch(r[0]){case"G":e.era=a===4?"long":a===5?"narrow":"short";break;case"y":e.year=a===2?"2-digit":"numeric";break;case"Y":case"u":case"U":case"r":throw new RangeError("`Y/u/U/r` (year) patterns are not supported, use `y` instead");case"q":case"Q":throw new RangeError("`q/Q` (quarter) patterns are not supported");case"M":case"L":e.month=["numeric","2-digit","short","long","narrow"][a-1];break;case"w":case"W":throw new RangeError("`w/W` (week) patterns are not supported");case"d":e.day=["numeric","2-digit"][a-1];break;case"D":case"F":case"g":throw new RangeError("`D/F/g` (day) patterns are not supported, use `d` instead");case"E":e.weekday=a===4?"long":a===5?"narrow":"short";break;case"e":if(a<4)throw new RangeError("`e..eee` (weekday) patterns are not supported");e.weekday=["short","long","narrow","short"][a-4];break;case"c":if(a<4)throw new RangeError("`c..ccc` (weekday) patterns are not supported");e.weekday=["short","long","narrow","short"][a-4];break;case"a":e.hour12=!0;break;case"b":case"B":throw new RangeError("`b/B` (period) patterns are not supported, use `a` instead");case"h":e.hourCycle="h12",e.hour=["numeric","2-digit"][a-1];break;case"H":e.hourCycle="h23",e.hour=["numeric","2-digit"][a-1];break;case"K":e.hourCycle="h11",e.hour=["numeric","2-digit"][a-1];break;case"k":e.hourCycle="h24",e.hour=["numeric","2-digit"][a-1];break;case"j":case"J":case"C":throw new RangeError("`j/J/C` (hour) patterns are not supported, use `h/H/K/k` instead");case"m":e.minute=["numeric","2-digit"][a-1];break;case"s":e.second=["numeric","2-digit"][a-1];break;case"S":case"A":throw new RangeError("`S/A` (second) patterns are not supported, use `s` instead");case"z":e.timeZoneName=a<4?"short":"long";break;case"Z":case"O":case"v":case"V":case"X":case"x":throw new RangeError("`Z/O/v/V/X/x` (timeZone) patterns are not supported, use `z` instead")}return""}),e}var CN=/[\t-\r \x85\u200E\u200F\u2028\u2029]/i;function wN(t){if(t.length===0)throw new Error("Number skeleton cannot be empty");for(var e=t.split(CN).filter(function(p){return p.length>0}),r=[],a=0,n=e;a<n.length;a++){var i=n[a],l=i.split("/");if(l.length===0)throw new Error("Invalid number skeleton");for(var s=l[0],o=l.slice(1),d=0,u=o;d<u.length;d++){var c=u[d];if(c.length===0)throw new Error("Invalid number skeleton")}r.push({stem:s,options:o})}return r}function bN(t){return t.replace(/^(.*?)-/,"")}var Ob=/^\.(?:(0+)(\*)?|(#+)|(0+)(#+))$/g,lv=/^(@+)?(\+|#+)?[rs]?$/g,KN=/(\*)(0+)|(#+)(0+)|(0+)/g,sv=/^(0+)$/;function Pb(t){var e={};return t[t.length-1]==="r"?e.roundingPriority="morePrecision":t[t.length-1]==="s"&&(e.roundingPriority="lessPrecision"),t.replace(lv,function(r,a,n){return typeof n!="string"?(e.minimumSignificantDigits=a.length,e.maximumSignificantDigits=a.length):n==="+"?e.minimumSignificantDigits=a.length:a[0]==="#"?e.maximumSignificantDigits=a.length:(e.minimumSignificantDigits=a.length,e.maximumSignificantDigits=a.length+(typeof n=="string"?n.length:0)),""}),e}function ov(t){switch(t){case"sign-auto":return{signDisplay:"auto"};case"sign-accounting":case"()":return{currencySign:"accounting"};case"sign-always":case"+!":return{signDisplay:"always"};case"sign-accounting-always":case"()!":return{signDisplay:"always",currencySign:"accounting"};case"sign-except-zero":case"+?":return{signDisplay:"exceptZero"};case"sign-accounting-except-zero":case"()?":return{signDisplay:"exceptZero",currencySign:"accounting"};case"sign-never":case"+_":return{signDisplay:"never"}}}function fN(t){var e;if(t[0]==="E"&&t[1]==="E"?(e={notation:"engineering"},t=t.slice(2)):t[0]==="E"&&(e={notation:"scientific"},t=t.slice(1)),e){var r=t.slice(0,2);if(r==="+!"?(e.signDisplay="always",t=t.slice(2)):r==="+?"&&(e.signDisplay="exceptZero",t=t.slice(2)),!sv.test(t))throw new Error("Malformed concise eng/scientific notation");e.minimumIntegerDigits=t.length}return e}function zb(t){var e={},r=ov(t);return r||e}function QN(t){for(var e={},r=0,a=t;r<a.length;r++){var n=a[r];switch(n.stem){case"percent":case"%":e.style="percent";continue;case"%x100":e.style="percent",e.scale=100;continue;case"currency":e.style="currency",e.currency=n.options[0];continue;case"group-off":case",_":e.useGrouping=!1;continue;case"precision-integer":case".":e.maximumFractionDigits=0;continue;case"measure-unit":case"unit":e.style="unit",e.unit=bN(n.options[0]);continue;case"compact-short":case"K":e.notation="compact",e.compactDisplay="short";continue;case"compact-long":case"KK":e.notation="compact",e.compactDisplay="long";continue;case"scientific":e=$e($e($e({},e),{notation:"scientific"}),n.options.reduce(function(o,d){return $e($e({},o),zb(d))},{}));continue;case"engineering":e=$e($e($e({},e),{notation:"engineering"}),n.options.reduce(function(o,d){return $e($e({},o),zb(d))},{}));continue;case"notation-simple":e.notation="standard";continue;case"unit-width-narrow":e.currencyDisplay="narrowSymbol",e.unitDisplay="narrow";continue;case"unit-width-short":e.currencyDisplay="code",e.unitDisplay="short";continue;case"unit-width-full-name":e.currencyDisplay="name",e.unitDisplay="long";continue;case"unit-width-iso-code":e.currencyDisplay="symbol";continue;case"scale":e.scale=parseFloat(n.options[0]);continue;case"rounding-mode-floor":e.roundingMode="floor";continue;case"rounding-mode-ceiling":e.roundingMode="ceil";continue;case"rounding-mode-down":e.roundingMode="trunc";continue;case"rounding-mode-up":e.roundingMode="expand";continue;case"rounding-mode-half-even":e.roundingMode="halfEven";continue;case"rounding-mode-half-down":e.roundingMode="halfTrunc";continue;case"rounding-mode-half-up":e.roundingMode="halfExpand";continue;case"integer-width":if(n.options.length>1)throw new RangeError("integer-width stems only accept a single optional option");n.options[0].replace(KN,function(o,d,u,c,p,A){if(d)e.minimumIntegerDigits=u.length;else{if(c&&p)throw new Error("We currently do not support maximum integer digits");if(A)throw new Error("We currently do not support exact integer digits")}return""});continue}if(sv.test(n.stem)){e.minimumIntegerDigits=n.stem.length;continue}if(Ob.test(n.stem)){if(n.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");n.stem.replace(Ob,function(o,d,u,c,p,A){return u==="*"?e.minimumFractionDigits=d.length:c&&c[0]==="#"?e.maximumFractionDigits=c.length:p&&A?(e.minimumFractionDigits=p.length,e.maximumFractionDigits=p.length+A.length):(e.minimumFractionDigits=d.length,e.maximumFractionDigits=d.length),""});var i=n.options[0];i==="w"?e=$e($e({},e),{trailingZeroDisplay:"stripIfInteger"}):i&&(e=$e($e({},e),Pb(i)));continue}if(lv.test(n.stem)){e=$e($e({},e),Pb(n.stem));continue}var l=ov(n.stem);l&&(e=$e($e({},e),l));var s=fN(n.stem);s&&(e=$e($e({},e),s))}return e}var Up={"001":["H","h"],AC:["H","h","hb","hB"],AD:["H","hB"],AE:["h","hB","hb","H"],AF:["H","hb","hB","h"],AG:["h","hb","H","hB"],AI:["H","h","hb","hB"],AL:["h","H","hB"],AM:["H","hB"],AO:["H","hB"],AR:["H","h","hB","hb"],AS:["h","H"],AT:["H","hB"],AU:["h","hb","H","hB"],AW:["H","hB"],AX:["H"],AZ:["H","hB","h"],BA:["H","hB","h"],BB:["h","hb","H","hB"],BD:["h","hB","H"],BE:["H","hB"],BF:["H","hB"],BG:["H","hB","h"],BH:["h","hB","hb","H"],BI:["H","h"],BJ:["H","hB"],BL:["H","hB"],BM:["h","hb","H","hB"],BN:["hb","hB","h","H"],BO:["H","hB","h","hb"],BQ:["H"],BR:["H","hB"],BS:["h","hb","H","hB"],BT:["h","H"],BW:["H","h","hb","hB"],BY:["H","h"],BZ:["H","h","hb","hB"],CA:["h","hb","H","hB"],CC:["H","h","hb","hB"],CD:["hB","H"],CF:["H","h","hB"],CG:["H","hB"],CH:["H","hB","h"],CI:["H","hB"],CK:["H","h","hb","hB"],CL:["H","h","hB","hb"],CM:["H","h","hB"],CN:["H","hB","hb","h"],CO:["h","H","hB","hb"],CP:["H"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],CV:["H","hB"],CW:["H","hB"],CX:["H","h","hb","hB"],CY:["h","H","hb","hB"],CZ:["H"],DE:["H","hB"],DG:["H","h","hb","hB"],DJ:["h","H"],DK:["H"],DM:["h","hb","H","hB"],DO:["h","H","hB","hb"],DZ:["h","hB","hb","H"],EA:["H","h","hB","hb"],EC:["H","hB","h","hb"],EE:["H","hB"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],ER:["h","H"],ES:["H","hB","h","hb"],ET:["hB","hb","h","H"],FI:["H"],FJ:["h","hb","H","hB"],FK:["H","h","hb","hB"],FM:["h","hb","H","hB"],FO:["H","h"],FR:["H","hB"],GA:["H","hB"],GB:["H","h","hb","hB"],GD:["h","hb","H","hB"],GE:["H","hB","h"],GF:["H","hB"],GG:["H","h","hb","hB"],GH:["h","H"],GI:["H","h","hb","hB"],GL:["H","h"],GM:["h","hb","H","hB"],GN:["H","hB"],GP:["H","hB"],GQ:["H","hB","h","hb"],GR:["h","H","hb","hB"],GT:["H","h","hB","hb"],GU:["h","hb","H","hB"],GW:["H","hB"],GY:["h","hb","H","hB"],HK:["h","hB","hb","H"],HN:["H","h","hB","hb"],HR:["H","hB"],HU:["H","h"],IC:["H","h","hB","hb"],ID:["H"],IE:["H","h","hb","hB"],IL:["H","hB"],IM:["H","h","hb","hB"],IN:["h","H"],IO:["H","h","hb","hB"],IQ:["h","hB","hb","H"],IR:["hB","H"],IS:["H"],IT:["H","hB"],JE:["H","h","hb","hB"],JM:["h","hb","H","hB"],JO:["h","hB","hb","H"],JP:["H","K","h"],KE:["hB","hb","H","h"],KG:["H","h","hB","hb"],KH:["hB","h","H","hb"],KI:["h","hb","H","hB"],KM:["H","h","hB","hb"],KN:["h","hb","H","hB"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],KW:["h","hB","hb","H"],KY:["h","hb","H","hB"],KZ:["H","hB"],LA:["H","hb","hB","h"],LB:["h","hB","hb","H"],LC:["h","hb","H","hB"],LI:["H","hB","h"],LK:["H","h","hB","hb"],LR:["h","hb","H","hB"],LS:["h","H"],LT:["H","h","hb","hB"],LU:["H","h","hB"],LV:["H","hB","hb","h"],LY:["h","hB","hb","H"],MA:["H","h","hB","hb"],MC:["H","hB"],MD:["H","hB"],ME:["H","hB","h"],MF:["H","hB"],MG:["H","h"],MH:["h","hb","H","hB"],MK:["H","h","hb","hB"],ML:["H"],MM:["hB","hb","H","h"],MN:["H","h","hb","hB"],MO:["h","hB","hb","H"],MP:["h","hb","H","hB"],MQ:["H","hB"],MR:["h","hB","hb","H"],MS:["H","h","hb","hB"],MT:["H","h"],MU:["H","h"],MV:["H","h"],MW:["h","hb","H","hB"],MX:["H","h","hB","hb"],MY:["hb","hB","h","H"],MZ:["H","hB"],NA:["h","H","hB","hb"],NC:["H","hB"],NE:["H"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NI:["H","h","hB","hb"],NL:["H","hB"],NO:["H","h"],NP:["H","h","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],NZ:["h","hb","H","hB"],OM:["h","hB","hb","H"],PA:["h","H","hB","hb"],PE:["H","hB","h","hb"],PF:["H","h","hB"],PG:["h","H"],PH:["h","hB","hb","H"],PK:["h","hB","H"],PL:["H","h"],PM:["H","hB"],PN:["H","h","hb","hB"],PR:["h","H","hB","hb"],PS:["h","hB","hb","H"],PT:["H","hB"],PW:["h","H"],PY:["H","h","hB","hb"],QA:["h","hB","hb","H"],RE:["H","hB"],RO:["H","hB"],RS:["H","hB","h"],RU:["H"],RW:["H","h"],SA:["h","hB","hb","H"],SB:["h","hb","H","hB"],SC:["H","h","hB"],SD:["h","hB","hb","H"],SE:["H"],SG:["h","hb","H","hB"],SH:["H","h","hb","hB"],SI:["H","hB"],SJ:["H"],SK:["H"],SL:["h","hb","H","hB"],SM:["H","h","hB"],SN:["H","h","hB"],SO:["h","H"],SR:["H","hB"],SS:["h","hb","H","hB"],ST:["H","hB"],SV:["H","h","hB","hb"],SX:["H","h","hb","hB"],SY:["h","hB","hb","H"],SZ:["h","hb","H","hB"],TA:["H","h","hb","hB"],TC:["h","hb","H","hB"],TD:["h","H","hB"],TF:["H","h","hB"],TG:["H","hB"],TH:["H","h"],TJ:["H","h"],TL:["H","hB","hb","h"],TM:["H","h"],TN:["h","hB","hb","H"],TO:["h","H"],TR:["H","hB"],TT:["h","hb","H","hB"],TW:["hB","hb","h","H"],TZ:["hB","hb","H","h"],UA:["H","hB","h"],UG:["hB","hb","H","h"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],UY:["H","h","hB","hb"],UZ:["H","hB","h"],VA:["H","h","hB"],VC:["h","hb","H","hB"],VE:["h","H","hB","hb"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],VN:["H","h"],VU:["h","H"],WF:["H","hB"],WS:["h","H"],XK:["H","hB","h"],YE:["h","hB","hb","H"],YT:["H","hB"],ZA:["H","h","hb","hB"],ZM:["h","hb","H","hB"],ZW:["H","h"],"af-ZA":["H","h","hB","hb"],"ar-001":["h","hB","hb","H"],"ca-ES":["H","h","hB"],"en-001":["h","hb","H","hB"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"gu-IN":["hB","hb","h","H"],"hi-IN":["hB","h","H"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],"ta-IN":["hB","h","hb","H"],"te-IN":["hB","h","H"],"zu-ZA":["H","hB","hb","h"]};function WN(t,e){for(var r="",a=0;a<t.length;a++){var n=t.charAt(a);if(n==="j"){for(var i=0;a+1<t.length&&t.charAt(a+1)===n;)i++,a++;var l=1+(i&1),s=i<2?1:3+(i>>1),o="a",d=vN(e);for((d=="H"||d=="k")&&(s=0);s-- >0;)r+=o;for(;l-- >0;)r=d+r}else n==="J"?r+="H":r+=n}return r}function vN(t){var e=t.hourCycle;if(e===void 0&&t.hourCycles&&t.hourCycles.length&&(e=t.hourCycles[0]),e)switch(e){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var r=t.language,a;r!=="root"&&(a=t.maximize().region);var n=Up[a||""]||Up[r||""]||Up["".concat(r,"-001")]||Up["001"];return n[0]}var dg,FN=new RegExp("^".concat(iv.source,"*")),yN=new RegExp("".concat(iv.source,"*$"));function Pe(t,e){return{start:t,end:e}}var RN=!!String.prototype.startsWith&&"_a".startsWith("a",1),EN=!!String.fromCodePoint,GN=!!Object.fromEntries,SN=!!String.prototype.codePointAt,ZN=!!String.prototype.trimStart,XN=!!String.prototype.trimEnd,HN=!!Number.isSafeInteger,VN=HN?Number.isSafeInteger:function(t){return typeof t=="number"&&isFinite(t)&&Math.floor(t)===t&&Math.abs(t)<=9007199254740991},bh=!0;try{var YN=uv("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");bh=((dg=YN.exec("a"))===null||dg===void 0?void 0:dg[0])==="a"}catch{bh=!1}var jb=RN?function(e,r,a){return e.startsWith(r,a)}:function(e,r,a){return e.slice(a,a+r.length)===r},Kh=EN?String.fromCodePoint:function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];for(var a="",n=e.length,i=0,l;n>i;){if(l=e[i++],l>1114111)throw RangeError(l+" is not a valid code point");a+=l<65536?String.fromCharCode(l):String.fromCharCode(((l-=65536)>>10)+55296,l%1024+56320)}return a},qb=GN?Object.fromEntries:function(e){for(var r={},a=0,n=e;a<n.length;a++){var i=n[a],l=i[0],s=i[1];r[l]=s}return r},dv=SN?function(e,r){return e.codePointAt(r)}:function(e,r){var a=e.length;if(!(r<0||r>=a)){var n=e.charCodeAt(r),i;return n<55296||n>56319||r+1===a||(i=e.charCodeAt(r+1))<56320||i>57343?n:(n-55296<<10)+(i-56320)+65536}},NN=ZN?function(e){return e.trimStart()}:function(e){return e.replace(FN,"")},LN=XN?function(e){return e.trimEnd()}:function(e){return e.replace(yN,"")};function uv(t,e){return new RegExp(t,e)}var fh;if(bh){var $b=uv("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");fh=function(e,r){var a;$b.lastIndex=r;var n=$b.exec(e);return(a=n[1])!==null&&a!==void 0?a:""}}else fh=function(e,r){for(var a=[];;){var n=dv(e,r);if(n===void 0||pv(n)||_N(n))break;a.push(n),r+=n>=65536?2:1}return Kh.apply(void 0,a)};var TN=function(){function t(e,r){r===void 0&&(r={}),this.message=e,this.position={offset:0,line:1,column:1},this.ignoreTag=!!r.ignoreTag,this.locale=r.locale,this.requiresOtherClause=!!r.requiresOtherClause,this.shouldParseSkeletons=!!r.shouldParseSkeletons}return t.prototype.parse=function(){if(this.offset()!==0)throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},t.prototype.parseMessage=function(e,r,a){for(var n=[];!this.isEOF();){var i=this.char();if(i===123){var l=this.parseArgument(e,a);if(l.err)return l;n.push(l.val)}else{if(i===125&&e>0)break;if(i===35&&(r==="plural"||r==="selectordinal")){var s=this.clonePosition();this.bump(),n.push({type:ft.pound,location:Pe(s,this.clonePosition())})}else if(i===60&&!this.ignoreTag&&this.peek()===47){if(a)break;return this.error(Oe.UNMATCHED_CLOSING_TAG,Pe(this.clonePosition(),this.clonePosition()))}else if(i===60&&!this.ignoreTag&&Qh(this.peek()||0)){var l=this.parseTag(e,r);if(l.err)return l;n.push(l.val)}else{var l=this.parseLiteral(e,r);if(l.err)return l;n.push(l.val)}}}return{val:n,err:null}},t.prototype.parseTag=function(e,r){var a=this.clonePosition();this.bump();var n=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:ft.literal,value:"<".concat(n,"/>"),location:Pe(a,this.clonePosition())},err:null};if(this.bumpIf(">")){var i=this.parseMessage(e+1,r,!0);if(i.err)return i;var l=i.val,s=this.clonePosition();if(this.bumpIf("</")){if(this.isEOF()||!Qh(this.char()))return this.error(Oe.INVALID_TAG,Pe(s,this.clonePosition()));var o=this.clonePosition(),d=this.parseTagName();return n!==d?this.error(Oe.UNMATCHED_CLOSING_TAG,Pe(o,this.clonePosition())):(this.bumpSpace(),this.bumpIf(">")?{val:{type:ft.tag,value:n,children:l,location:Pe(a,this.clonePosition())},err:null}:this.error(Oe.INVALID_TAG,Pe(s,this.clonePosition())))}else return this.error(Oe.UNCLOSED_TAG,Pe(a,this.clonePosition()))}else return this.error(Oe.INVALID_TAG,Pe(a,this.clonePosition()))},t.prototype.parseTagName=function(){var e=this.offset();for(this.bump();!this.isEOF()&&UN(this.char());)this.bump();return this.message.slice(e,this.offset())},t.prototype.parseLiteral=function(e,r){for(var a=this.clonePosition(),n="";;){var i=this.tryParseQuote(r);if(i){n+=i;continue}var l=this.tryParseUnquoted(e,r);if(l){n+=l;continue}var s=this.tryParseLeftAngleBracket();if(s){n+=s;continue}break}var o=Pe(a,this.clonePosition());return{val:{type:ft.literal,value:n,location:o},err:null}},t.prototype.tryParseLeftAngleBracket=function(){return!this.isEOF()&&this.char()===60&&(this.ignoreTag||!kN(this.peek()||0))?(this.bump(),"<"):null},t.prototype.tryParseQuote=function(e){if(this.isEOF()||this.char()!==39)return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if(e==="plural"||e==="selectordinal")break;return null;default:return null}this.bump();var r=[this.char()];for(this.bump();!this.isEOF();){var a=this.char();if(a===39)if(this.peek()===39)r.push(39),this.bump();else{this.bump();break}else r.push(a);this.bump()}return Kh.apply(void 0,r)},t.prototype.tryParseUnquoted=function(e,r){if(this.isEOF())return null;var a=this.char();return a===60||a===123||a===35&&(r==="plural"||r==="selectordinal")||a===125&&e>0?null:(this.bump(),Kh(a))},t.prototype.parseArgument=function(e,r){var a=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(Oe.EXPECT_ARGUMENT_CLOSING_BRACE,Pe(a,this.clonePosition()));if(this.char()===125)return this.bump(),this.error(Oe.EMPTY_ARGUMENT,Pe(a,this.clonePosition()));var n=this.parseIdentifierIfPossible().value;if(!n)return this.error(Oe.MALFORMED_ARGUMENT,Pe(a,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(Oe.EXPECT_ARGUMENT_CLOSING_BRACE,Pe(a,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:ft.argument,value:n,location:Pe(a,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(Oe.EXPECT_ARGUMENT_CLOSING_BRACE,Pe(a,this.clonePosition())):this.parseArgumentOptions(e,r,n,a);default:return this.error(Oe.MALFORMED_ARGUMENT,Pe(a,this.clonePosition()))}},t.prototype.parseIdentifierIfPossible=function(){var e=this.clonePosition(),r=this.offset(),a=fh(this.message,r),n=r+a.length;this.bumpTo(n);var i=this.clonePosition(),l=Pe(e,i);return{value:a,location:l}},t.prototype.parseArgumentOptions=function(e,r,a,n){var i,l=this.clonePosition(),s=this.parseIdentifierIfPossible().value,o=this.clonePosition();switch(s){case"":return this.error(Oe.EXPECT_ARGUMENT_TYPE,Pe(l,o));case"number":case"date":case"time":{this.bumpSpace();var d=null;if(this.bumpIf(",")){this.bumpSpace();var u=this.clonePosition(),c=this.parseSimpleArgStyleIfPossible();if(c.err)return c;var p=LN(c.val);if(p.length===0)return this.error(Oe.EXPECT_ARGUMENT_STYLE,Pe(this.clonePosition(),this.clonePosition()));var A=Pe(u,this.clonePosition());d={style:p,styleLocation:A}}var m=this.tryParseArgumentClose(n);if(m.err)return m;var h=Pe(n,this.clonePosition());if(d&&jb(d==null?void 0:d.style,"::",0)){var C=NN(d.style.slice(2));if(s==="number"){var c=this.parseNumberSkeletonFromString(C,d.styleLocation);return c.err?c:{val:{type:ft.number,value:a,location:h,style:c.val},err:null}}else{if(C.length===0)return this.error(Oe.EXPECT_DATE_TIME_SKELETON,h);var w=C;this.locale&&(w=WN(C,this.locale));var p={type:ks.dateTime,pattern:w,location:d.styleLocation,parsedOptions:this.shouldParseSkeletons?BN(w):{}},b=s==="date"?ft.date:ft.time;return{val:{type:b,value:a,location:h,style:p},err:null}}}return{val:{type:s==="number"?ft.number:s==="date"?ft.date:ft.time,value:a,location:h,style:(i=d==null?void 0:d.style)!==null&&i!==void 0?i:null},err:null}}case"plural":case"selectordinal":case"select":{var f=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(Oe.EXPECT_SELECT_ARGUMENT_OPTIONS,Pe(f,$e({},f)));this.bumpSpace();var K=this.parseIdentifierIfPossible(),W=0;if(s!=="select"&&K.value==="offset"){if(!this.bumpIf(":"))return this.error(Oe.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,Pe(this.clonePosition(),this.clonePosition()));this.bumpSpace();var c=this.tryParseDecimalInteger(Oe.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,Oe.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);if(c.err)return c;this.bumpSpace(),K=this.parseIdentifierIfPossible(),W=c.val}var R=this.tryParsePluralOrSelectOptions(e,s,r,K);if(R.err)return R;var m=this.tryParseArgumentClose(n);if(m.err)return m;var v=Pe(n,this.clonePosition());return s==="select"?{val:{type:ft.select,value:a,options:qb(R.val),location:v},err:null}:{val:{type:ft.plural,value:a,options:qb(R.val),offset:W,pluralType:s==="plural"?"cardinal":"ordinal",location:v},err:null}}default:return this.error(Oe.INVALID_ARGUMENT_TYPE,Pe(l,o))}},t.prototype.tryParseArgumentClose=function(e){return this.isEOF()||this.char()!==125?this.error(Oe.EXPECT_ARGUMENT_CLOSING_BRACE,Pe(e,this.clonePosition())):(this.bump(),{val:!0,err:null})},t.prototype.parseSimpleArgStyleIfPossible=function(){for(var e=0,r=this.clonePosition();!this.isEOF();){var a=this.char();switch(a){case 39:{this.bump();var n=this.clonePosition();if(!this.bumpUntil("'"))return this.error(Oe.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,Pe(n,this.clonePosition()));this.bump();break}case 123:{e+=1,this.bump();break}case 125:{if(e>0)e-=1;else return{val:this.message.slice(r.offset,this.offset()),err:null};break}default:this.bump();break}}return{val:this.message.slice(r.offset,this.offset()),err:null}},t.prototype.parseNumberSkeletonFromString=function(e,r){var a=[];try{a=wN(e)}catch{return this.error(Oe.INVALID_NUMBER_SKELETON,r)}return{val:{type:ks.number,tokens:a,location:r,parsedOptions:this.shouldParseSkeletons?QN(a):{}},err:null}},t.prototype.tryParsePluralOrSelectOptions=function(e,r,a,n){for(var i,l=!1,s=[],o=new Set,d=n.value,u=n.location;;){if(d.length===0){var c=this.clonePosition();if(r!=="select"&&this.bumpIf("=")){var p=this.tryParseDecimalInteger(Oe.EXPECT_PLURAL_ARGUMENT_SELECTOR,Oe.INVALID_PLURAL_ARGUMENT_SELECTOR);if(p.err)return p;u=Pe(c,this.clonePosition()),d=this.message.slice(c.offset,this.offset())}else break}if(o.has(d))return this.error(r==="select"?Oe.DUPLICATE_SELECT_ARGUMENT_SELECTOR:Oe.DUPLICATE_PLURAL_ARGUMENT_SELECTOR,u);d==="other"&&(l=!0),this.bumpSpace();var A=this.clonePosition();if(!this.bumpIf("{"))return this.error(r==="select"?Oe.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT:Oe.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT,Pe(this.clonePosition(),this.clonePosition()));var m=this.parseMessage(e+1,r,a);if(m.err)return m;var h=this.tryParseArgumentClose(A);if(h.err)return h;s.push([d,{value:m.val,location:Pe(A,this.clonePosition())}]),o.add(d),this.bumpSpace(),i=this.parseIdentifierIfPossible(),d=i.value,u=i.location}return s.length===0?this.error(r==="select"?Oe.EXPECT_SELECT_ARGUMENT_SELECTOR:Oe.EXPECT_PLURAL_ARGUMENT_SELECTOR,Pe(this.clonePosition(),this.clonePosition())):this.requiresOtherClause&&!l?this.error(Oe.MISSING_OTHER_CLAUSE,Pe(this.clonePosition(),this.clonePosition())):{val:s,err:null}},t.prototype.tryParseDecimalInteger=function(e,r){var a=1,n=this.clonePosition();this.bumpIf("+")||this.bumpIf("-")&&(a=-1);for(var i=!1,l=0;!this.isEOF();){var s=this.char();if(s>=48&&s<=57)i=!0,l=l*10+(s-48),this.bump();else break}var o=Pe(n,this.clonePosition());return i?(l*=a,VN(l)?{val:l,err:null}:this.error(r,o)):this.error(e,o)},t.prototype.offset=function(){return this.position.offset},t.prototype.isEOF=function(){return this.offset()===this.message.length},t.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},t.prototype.char=function(){var e=this.position.offset;if(e>=this.message.length)throw Error("out of bound");var r=dv(this.message,e);if(r===void 0)throw Error("Offset ".concat(e," is at invalid UTF-16 code unit boundary"));return r},t.prototype.error=function(e,r){return{val:null,err:{kind:e,message:this.message,location:r}}},t.prototype.bump=function(){if(!this.isEOF()){var e=this.char();e===10?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=e<65536?1:2)}},t.prototype.bumpIf=function(e){if(jb(this.message,e,this.offset())){for(var r=0;r<e.length;r++)this.bump();return!0}return!1},t.prototype.bumpUntil=function(e){var r=this.offset(),a=this.message.indexOf(e,r);return a>=0?(this.bumpTo(a),!0):(this.bumpTo(this.message.length),!1)},t.prototype.bumpTo=function(e){if(this.offset()>e)throw Error("targetOffset ".concat(e," must be greater than or equal to the current offset ").concat(this.offset()));for(e=Math.min(e,this.message.length);;){var r=this.offset();if(r===e)break;if(r>e)throw Error("targetOffset ".concat(e," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},t.prototype.bumpSpace=function(){for(;!this.isEOF()&&pv(this.char());)this.bump()},t.prototype.peek=function(){if(this.isEOF())return null;var e=this.char(),r=this.offset(),a=this.message.charCodeAt(r+(e>=65536?2:1));return a??null},t}();function Qh(t){return t>=97&&t<=122||t>=65&&t<=90}function kN(t){return Qh(t)||t===47}function UN(t){return t===45||t===46||t>=48&&t<=57||t===95||t>=97&&t<=122||t>=65&&t<=90||t==183||t>=192&&t<=214||t>=216&&t<=246||t>=248&&t<=893||t>=895&&t<=8191||t>=8204&&t<=8205||t>=8255&&t<=8256||t>=8304&&t<=8591||t>=11264&&t<=12271||t>=12289&&t<=55295||t>=63744&&t<=64975||t>=65008&&t<=65533||t>=65536&&t<=983039}function pv(t){return t>=9&&t<=13||t===32||t===133||t>=8206&&t<=8207||t===8232||t===8233}function _N(t){return t>=33&&t<=35||t===36||t>=37&&t<=39||t===40||t===41||t===42||t===43||t===44||t===45||t>=46&&t<=47||t>=58&&t<=59||t>=60&&t<=62||t>=63&&t<=64||t===91||t===92||t===93||t===94||t===96||t===123||t===124||t===125||t===126||t===161||t>=162&&t<=165||t===166||t===167||t===169||t===171||t===172||t===174||t===176||t===177||t===182||t===187||t===191||t===215||t===247||t>=8208&&t<=8213||t>=8214&&t<=8215||t===8216||t===8217||t===8218||t>=8219&&t<=8220||t===8221||t===8222||t===8223||t>=8224&&t<=8231||t>=8240&&t<=8248||t===8249||t===8250||t>=8251&&t<=8254||t>=8257&&t<=8259||t===8260||t===8261||t===8262||t>=8263&&t<=8273||t===8274||t===8275||t>=8277&&t<=8286||t>=8592&&t<=8596||t>=8597&&t<=8601||t>=8602&&t<=8603||t>=8604&&t<=8607||t===8608||t>=8609&&t<=8610||t===8611||t>=8612&&t<=8613||t===8614||t>=8615&&t<=8621||t===8622||t>=8623&&t<=8653||t>=8654&&t<=8655||t>=8656&&t<=8657||t===8658||t===8659||t===8660||t>=8661&&t<=8691||t>=8692&&t<=8959||t>=8960&&t<=8967||t===8968||t===8969||t===8970||t===8971||t>=8972&&t<=8991||t>=8992&&t<=8993||t>=8994&&t<=9e3||t===9001||t===9002||t>=9003&&t<=9083||t===9084||t>=9085&&t<=9114||t>=9115&&t<=9139||t>=9140&&t<=9179||t>=9180&&t<=9185||t>=9186&&t<=9254||t>=9255&&t<=9279||t>=9280&&t<=9290||t>=9291&&t<=9311||t>=9472&&t<=9654||t===9655||t>=9656&&t<=9664||t===9665||t>=9666&&t<=9719||t>=9720&&t<=9727||t>=9728&&t<=9838||t===9839||t>=9840&&t<=10087||t===10088||t===10089||t===10090||t===10091||t===10092||t===10093||t===10094||t===10095||t===10096||t===10097||t===10098||t===10099||t===10100||t===10101||t>=10132&&t<=10175||t>=10176&&t<=10180||t===10181||t===10182||t>=10183&&t<=10213||t===10214||t===10215||t===10216||t===10217||t===10218||t===10219||t===10220||t===10221||t===10222||t===10223||t>=10224&&t<=10239||t>=10240&&t<=10495||t>=10496&&t<=10626||t===10627||t===10628||t===10629||t===10630||t===10631||t===10632||t===10633||t===10634||t===10635||t===10636||t===10637||t===10638||t===10639||t===10640||t===10641||t===10642||t===10643||t===10644||t===10645||t===10646||t===10647||t===10648||t>=10649&&t<=10711||t===10712||t===10713||t===10714||t===10715||t>=10716&&t<=10747||t===10748||t===10749||t>=10750&&t<=11007||t>=11008&&t<=11055||t>=11056&&t<=11076||t>=11077&&t<=11078||t>=11079&&t<=11084||t>=11085&&t<=11123||t>=11124&&t<=11125||t>=11126&&t<=11157||t===11158||t>=11159&&t<=11263||t>=11776&&t<=11777||t===11778||t===11779||t===11780||t===11781||t>=11782&&t<=11784||t===11785||t===11786||t===11787||t===11788||t===11789||t>=11790&&t<=11798||t===11799||t>=11800&&t<=11801||t===11802||t===11803||t===11804||t===11805||t>=11806&&t<=11807||t===11808||t===11809||t===11810||t===11811||t===11812||t===11813||t===11814||t===11815||t===11816||t===11817||t>=11818&&t<=11822||t===11823||t>=11824&&t<=11833||t>=11834&&t<=11835||t>=11836&&t<=11839||t===11840||t===11841||t===11842||t>=11843&&t<=11855||t>=11856&&t<=11857||t===11858||t>=11859&&t<=11903||t>=12289&&t<=12291||t===12296||t===12297||t===12298||t===12299||t===12300||t===12301||t===12302||t===12303||t===12304||t===12305||t>=12306&&t<=12307||t===12308||t===12309||t===12310||t===12311||t===12312||t===12313||t===12314||t===12315||t===12316||t===12317||t>=12318&&t<=12319||t===12320||t===12336||t===64830||t===64831||t>=65093&&t<=65094}function Wh(t){t.forEach(function(e){if(delete e.location,tv(e)||rv(e))for(var r in e.options)delete e.options[r].location,Wh(e.options[r].value);else q9(e)&&nv(e.style)||($9(e)||ev(e))&&wh(e.style)?delete e.style.location:av(e)&&Wh(e.children)})}function IN(t,e){e===void 0&&(e={}),e=$e({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var r=new TN(t,e).parse();if(r.err){var a=SyntaxError(Oe[r.err.kind]);throw a.location=r.err.location,a.originalMessage=r.err.message,a}return e!=null&&e.captureLocation||Wh(r.val),r.val}function ug(t,e){var r=e&&e.cache?e.cache:PN,a=e&&e.serializer?e.serializer:ON,n=e&&e.strategy?e.strategy:MN;return n(t,{cache:r,serializer:a})}function DN(t){return t==null||typeof t=="number"||typeof t=="boolean"}function cv(t,e,r,a){var n=DN(a)?a:r(a),i=e.get(n);return typeof i>"u"&&(i=t.call(this,a),e.set(n,i)),i}function mv(t,e,r){var a=Array.prototype.slice.call(arguments,3),n=r(a),i=e.get(n);return typeof i>"u"&&(i=t.apply(this,a),e.set(n,i)),i}function wC(t,e,r,a,n){return r.bind(e,t,a,n)}function MN(t,e){var r=t.length===1?cv:mv;return wC(t,this,r,e.cache.create(),e.serializer)}function xN(t,e){return wC(t,this,mv,e.cache.create(),e.serializer)}function JN(t,e){return wC(t,this,cv,e.cache.create(),e.serializer)}var ON=function(){return JSON.stringify(arguments)};function bC(){this.cache=Object.create(null)}bC.prototype.get=function(t){return this.cache[t]};bC.prototype.set=function(t,e){this.cache[t]=e};var PN={create:function(){return new bC}},pg={variadic:xN,monadic:JN},Us;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Us||(Us={}));var w1=function(t){C1(e,t);function e(r,a,n){var i=t.call(this,r)||this;return i.code=a,i.originalMessage=n,i}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error),eK=function(t){C1(e,t);function e(r,a,n,i){return t.call(this,'Invalid values for "'.concat(r,'": "').concat(a,'". Options are "').concat(Object.keys(n).join('", "'),'"'),Us.INVALID_VALUE,i)||this}return e}(w1),zN=function(t){C1(e,t);function e(r,a,n){return t.call(this,'Value for "'.concat(r,'" must be of type ').concat(a),Us.INVALID_VALUE,n)||this}return e}(w1),jN=function(t){C1(e,t);function e(r,a){return t.call(this,'The intl string context variable "'.concat(r,'" was not provided to the string "').concat(a,'"'),Us.MISSING_VALUE,a)||this}return e}(w1),vr;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(vr||(vr={}));function qN(t){return t.length<2?t:t.reduce(function(e,r){var a=e[e.length-1];return!a||a.type!==vr.literal||r.type!==vr.literal?e.push(r):a.value+=r.value,e},[])}function $N(t){return typeof t=="function"}function Bc(t,e,r,a,n,i,l){if(t.length===1&&Jb(t[0]))return[{type:vr.literal,value:t[0].value}];for(var s=[],o=0,d=t;o<d.length;o++){var u=d[o];if(Jb(u)){s.push({type:vr.literal,value:u.value});continue}if(AN(u)){typeof i=="number"&&s.push({type:vr.literal,value:r.getNumberFormat(e).format(i)});continue}var c=u.value;if(!(n&&c in n))throw new jN(c,l);var p=n[c];if(gN(u)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),s.push({type:typeof p=="string"?vr.literal:vr.object,value:p});continue}if($9(u)){var A=typeof u.style=="string"?a.date[u.style]:wh(u.style)?u.style.parsedOptions:void 0;s.push({type:vr.literal,value:r.getDateTimeFormat(e,A).format(p)});continue}if(ev(u)){var A=typeof u.style=="string"?a.time[u.style]:wh(u.style)?u.style.parsedOptions:a.time.medium;s.push({type:vr.literal,value:r.getDateTimeFormat(e,A).format(p)});continue}if(q9(u)){var A=typeof u.style=="string"?a.number[u.style]:nv(u.style)?u.style.parsedOptions:void 0;A&&A.scale&&(p=p*(A.scale||1)),s.push({type:vr.literal,value:r.getNumberFormat(e,A).format(p)});continue}if(av(u)){var m=u.children,h=u.value,C=n[h];if(!$N(C))throw new zN(h,"function",l);var w=Bc(m,e,r,a,n,i),b=C(w.map(function(W){return W.value}));Array.isArray(b)||(b=[b]),s.push.apply(s,b.map(function(W){return{type:typeof W=="string"?vr.literal:vr.object,value:W}}))}if(tv(u)){var f=u.options[p]||u.options.other;if(!f)throw new eK(u.value,p,Object.keys(u.options),l);s.push.apply(s,Bc(f.value,e,r,a,n));continue}if(rv(u)){var f=u.options["=".concat(p)];if(!f){if(!Intl.PluralRules)throw new w1(`Intl.PluralRules is not available in this environment.
Try polyfilling it using "@formatjs/intl-pluralrules"
`,Us.MISSING_INTL_API,l);var K=r.getPluralRules(e,{type:u.pluralType}).select(p-(u.offset||0));f=u.options[K]||u.options.other}if(!f)throw new eK(u.value,p,Object.keys(u.options),l);s.push.apply(s,Bc(f.value,e,r,a,n,p-(u.offset||0)));continue}}return qN(s)}function eL(t,e){return e?$e($e($e({},t||{}),e||{}),Object.keys(t).reduce(function(r,a){return r[a]=$e($e({},t[a]),e[a]||{}),r},{})):t}function tL(t,e){return e?Object.keys(t).reduce(function(r,a){return r[a]=eL(t[a],e[a]),r},$e({},t)):t}function cg(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,r){t[e]=r}}}}}function rL(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:ug(function(){for(var e,r=[],a=0;a<arguments.length;a++)r[a]=arguments[a];return new((e=Intl.NumberFormat).bind.apply(e,og([void 0],r,!1)))},{cache:cg(t.number),strategy:pg.variadic}),getDateTimeFormat:ug(function(){for(var e,r=[],a=0;a<arguments.length;a++)r[a]=arguments[a];return new((e=Intl.DateTimeFormat).bind.apply(e,og([void 0],r,!1)))},{cache:cg(t.dateTime),strategy:pg.variadic}),getPluralRules:ug(function(){for(var e,r=[],a=0;a<arguments.length;a++)r[a]=arguments[a];return new((e=Intl.PluralRules).bind.apply(e,og([void 0],r,!1)))},{cache:cg(t.pluralRules),strategy:pg.variadic})}}var gv=function(){function t(e,r,a,n){var i=this;if(r===void 0&&(r=t.defaultLocale),this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(o){var d=i.formatToParts(o);if(d.length===1)return d[0].value;var u=d.reduce(function(c,p){return!c.length||p.type!==vr.literal||typeof c[c.length-1]!="string"?c.push(p.value):c[c.length-1]+=p.value,c},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(o){return Bc(i.ast,i.locales,i.formatters,i.formats,o,void 0,i.message)},this.resolvedOptions=function(){var o;return{locale:((o=i.resolvedLocale)===null||o===void 0?void 0:o.toString())||Intl.NumberFormat.supportedLocalesOf(i.locales)[0]}},this.getAst=function(){return i.ast},this.locales=r,this.resolvedLocale=t.resolveLocale(r),typeof e=="string"){if(this.message=e,!t.__parse)throw new TypeError("IntlMessageFormat.__parse must be set to process `message` of type `string`");var l=n||{};l.formatters;var s=mN(l,["formatters"]);this.ast=t.__parse(e,$e($e({},s),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=tL(t.formats,a),this.formatters=n&&n.formatters||rL(this.formatterCache)}return Object.defineProperty(t,"defaultLocale",{get:function(){return t.memoizedDefaultLocale||(t.memoizedDefaultLocale=new Intl.NumberFormat().resolvedOptions().locale),t.memoizedDefaultLocale},enumerable:!1,configurable:!0}),t.memoizedDefaultLocale=null,t.resolveLocale=function(e){if(!(typeof Intl.Locale>"u")){var r=Intl.NumberFormat.supportedLocalesOf(e);return r.length>0?new Intl.Locale(r[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=IN,t.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},t}();function aL(t,e){if(e==null)return;if(e in t)return t[e];const r=e.split(".");let a=t;for(let n=0;n<r.length;n++)if(typeof a=="object"){if(n>0){const i=r.slice(n,r.length).join(".");if(i in a){a=a[i];break}}a=a[r[n]]}else a=void 0;return a}const ni={},nL=(t,e,r)=>r&&(e in ni||(ni[e]={}),t in ni[e]||(ni[e][t]=r),r),Av=(t,e)=>{if(e==null)return;if(e in ni&&t in ni[e])return ni[e][t];const r=Ku(e);for(let a=0;a<r.length;a++){const n=r[a],i=lL(n,t);if(i)return nL(t,e,i)}};let KC;const bu=$t({});function iL(t){return KC[t]||null}function hv(t){return t in KC}function lL(t,e){if(!hv(t))return null;const r=iL(t);return aL(r,e)}function sL(t){if(t==null)return;const e=Ku(t);for(let r=0;r<e.length;r++){const a=e[r];if(hv(a))return a}}function Zl(t,...e){delete ni[t],bu.update(r=>(r[t]=cN.all([r[t]||{},...e]),r))}js([bu],([t])=>Object.keys(t));bu.subscribe(t=>KC=t);const Cc={};function oL(t,e){Cc[t].delete(e),Cc[t].size===0&&delete Cc[t]}function Bv(t){return Cc[t]}function dL(t){return Ku(t).map(e=>{const r=Bv(e);return[e,r?[...r]:[]]}).filter(([,e])=>e.length>0)}function U0(t){return t==null?!1:Ku(t).some(e=>{var r;return(r=Bv(e))==null?void 0:r.size})}function uL(t,e){return Promise.all(e.map(a=>(oL(t,a),a().then(n=>n.default||n)))).then(a=>Zl(t,...a))}const Zo={};function Cv(t){if(!U0(t))return t in Zo?Zo[t]:Promise.resolve();const e=dL(t);return Zo[t]=Promise.all(e.map(([r,a])=>uL(r,a))).then(()=>{if(U0(t))return Cv(t);delete Zo[t]}),Zo[t]}var tK=Object.getOwnPropertySymbols,pL=Object.prototype.hasOwnProperty,cL=Object.prototype.propertyIsEnumerable,mL=(t,e)=>{var r={};for(var a in t)pL.call(t,a)&&e.indexOf(a)<0&&(r[a]=t[a]);if(t!=null&&tK)for(var a of tK(t))e.indexOf(a)<0&&cL.call(t,a)&&(r[a]=t[a]);return r};const gL={number:{scientific:{notation:"scientific"},engineering:{notation:"engineering"},compactLong:{notation:"compact",compactDisplay:"long"},compactShort:{notation:"compact",compactDisplay:"short"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}};function AL({locale:t,id:e}){console.warn(`[svelte-i18n] The message "${e}" was not found in "${Ku(t).join('", "')}".${U0(Ki())?`
Note: there are at least one loader still registered to this locale that wasn't executed.`:""}`)}const hL={fallbackLocale:null,loadingDelay:200,formats:gL,warnOnMissingMessages:!0,handleMissingMessage:void 0,ignoreTag:!0},$o=hL;function _s(){return $o}function BL(t){const e=t,{formats:r}=e,a=mL(e,["formats"]);let n=t.fallbackLocale;if(t.initialLocale)try{gv.resolveLocale(t.initialLocale)&&(n=t.initialLocale)}catch{console.warn(`[svelte-i18n] The initial locale "${t.initialLocale}" is not a valid locale.`)}return a.warnOnMissingMessages&&(delete a.warnOnMissingMessages,a.handleMissingMessage==null?a.handleMissingMessage=AL:console.warn('[svelte-i18n] The "warnOnMissingMessages" option is deprecated. Please use the "handleMissingMessage" option instead.')),Object.assign($o,a,{initialLocale:n}),r&&("number"in r&&Object.assign($o.formats.number,r.number),"date"in r&&Object.assign($o.formats.date,r.date),"time"in r&&Object.assign($o.formats.time,r.time)),qs.set(n)}const mg=$t(!1);var CL=Object.defineProperty,wL=Object.defineProperties,bL=Object.getOwnPropertyDescriptors,rK=Object.getOwnPropertySymbols,KL=Object.prototype.hasOwnProperty,fL=Object.prototype.propertyIsEnumerable,aK=(t,e,r)=>e in t?CL(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,QL=(t,e)=>{for(var r in e||(e={}))KL.call(e,r)&&aK(t,r,e[r]);if(rK)for(var r of rK(e))fL.call(e,r)&&aK(t,r,e[r]);return t},WL=(t,e)=>wL(t,bL(e));let vh;const _0=$t(null);function nK(t){return t.split("-").map((e,r,a)=>a.slice(0,r+1).join("-")).reverse()}function Ku(t,e=_s().fallbackLocale){const r=nK(t);return e?[...new Set([...r,...nK(e)])]:r}function Ki(){return vh??void 0}_0.subscribe(t=>{vh=t??void 0,typeof window<"u"&&t!=null&&document.documentElement.setAttribute("lang",t)});const vL=t=>{if(t&&sL(t)&&U0(t)){const{loadingDelay:e}=_s();let r;return typeof window<"u"&&Ki()!=null&&e?r=window.setTimeout(()=>mg.set(!0),e):mg.set(!0),Cv(t).then(()=>{_0.set(t)}).finally(()=>{clearTimeout(r),mg.set(!1)})}return _0.set(t)},qs=WL(QL({},_0),{set:vL}),b1=t=>{const e=Object.create(null);return a=>{const n=JSON.stringify(a);return n in e?e[n]:e[n]=t(a)}};var FL=Object.defineProperty,I0=Object.getOwnPropertySymbols,wv=Object.prototype.hasOwnProperty,bv=Object.prototype.propertyIsEnumerable,iK=(t,e,r)=>e in t?FL(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,fC=(t,e)=>{for(var r in e||(e={}))wv.call(e,r)&&iK(t,r,e[r]);if(I0)for(var r of I0(e))bv.call(e,r)&&iK(t,r,e[r]);return t},$s=(t,e)=>{var r={};for(var a in t)wv.call(t,a)&&e.indexOf(a)<0&&(r[a]=t[a]);if(t!=null&&I0)for(var a of I0(t))e.indexOf(a)<0&&bv.call(t,a)&&(r[a]=t[a]);return r};const jd=(t,e)=>{const{formats:r}=_s();if(t in r&&e in r[t])return r[t][e];throw new Error(`[svelte-i18n] Unknown "${e}" ${t} format.`)},yL=b1(t=>{var e=t,{locale:r,format:a}=e,n=$s(e,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format numbers');return a&&(n=jd("number",a)),new Intl.NumberFormat(r,n)}),RL=b1(t=>{var e=t,{locale:r,format:a}=e,n=$s(e,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format dates');return a?n=jd("date",a):Object.keys(n).length===0&&(n=jd("date","short")),new Intl.DateTimeFormat(r,n)}),EL=b1(t=>{var e=t,{locale:r,format:a}=e,n=$s(e,["locale","format"]);if(r==null)throw new Error('[svelte-i18n] A "locale" must be set to format time values');return a?n=jd("time",a):Object.keys(n).length===0&&(n=jd("time","short")),new Intl.DateTimeFormat(r,n)}),GL=(t={})=>{var e=t,{locale:r=Ki()}=e,a=$s(e,["locale"]);return yL(fC({locale:r},a))},SL=(t={})=>{var e=t,{locale:r=Ki()}=e,a=$s(e,["locale"]);return RL(fC({locale:r},a))},ZL=(t={})=>{var e=t,{locale:r=Ki()}=e,a=$s(e,["locale"]);return EL(fC({locale:r},a))},XL=b1((t,e=Ki())=>new gv(t,e,_s().formats,{ignoreTag:_s().ignoreTag})),HL=(t,e={})=>{var r,a,n,i;let l=e;typeof t=="object"&&(l=t,t=l.id);const{values:s,locale:o=Ki(),default:d}=l;if(o==null)throw new Error("[svelte-i18n] Cannot format a message without first setting the initial locale.");let u=Av(t,o);if(!u)u=(i=(n=(a=(r=_s()).handleMissingMessage)==null?void 0:a.call(r,{locale:o,id:t,defaultValue:d}))!=null?n:d)!=null?i:t;else if(typeof u!="string")return console.warn(`[svelte-i18n] Message with id "${t}" must be of type "string", found: "${typeof u}". Gettin its value through the "$format" method is deprecated; use the "json" method instead.`),u;if(!s)return u;let c=u;try{c=XL(u,o).format(s)}catch(p){p instanceof Error&&console.warn(`[svelte-i18n] Message "${t}" has syntax error:`,p.message)}return c},VL=(t,e)=>ZL(e).format(t),YL=(t,e)=>SL(e).format(t),NL=(t,e)=>GL(e).format(t),LL=(t,e=Ki())=>Av(t,e),Bt=js([qs,bu],()=>HL);js([qs],()=>VL);js([qs],()=>YL);js([qs],()=>NL);js([qs,bu],()=>LL);const TL="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let fu=(t=21)=>{let e="",r=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=TL[r[t]&63];return e};const dt=$t(),qd=$t(!1),Is=$t(),Va=$t(""),Qu=$t(!0),dl=$t(),Kv=$t("startup"),$d=$t(""),Ve=$t("uninitialized"),gn=$t(0),fv=$t(0),wc=$t(!1),lK=t=>t.map(e=>e.role==="User"?`${e.role}: ${e.content}`:e.role==="Assistant"?`${e.role}: ${e.content}`:`${e.content}`).join(`
`);function kL(){const{subscribe:t,set:e,update:r}=$t();return{subscribe:t,set:e,update:r,reset:()=>{e([{role:"Assistant",content:ie(ae).initialAssistantMessageContent,id:fu()}]),ie(dt).chatView.save()}}}const Mt=kL();function UL(){const{subscribe:t,set:e,update:r}=$t();return{subscribe:t,set:e,update:r,warningOff:a=>{r(n=>(n[a]=!0,n)),ie(dt).saveSettings()}}}const ae=UL();function hs(t,e){const r=t.replace(/[.+^${}()|[\]\\]/g,"\\$&");return new RegExp(`\\b${r.replace(/\*/g,".*").replace(/\?/g,".")}`,"i").test(e)}class _L extends Qe.SuggestModal{constructor(r){super(r);Ze(this,"ff");this.ff=this.app.vault.getMarkdownFiles()}getSuggestions(r){const a=this.inputEl.value,n=ie(ae).excludeFF,i=[];return this.ff.forEach(l=>{if(l.path!=="/"){for(const s of n)if(hs(s,l.path))return;hs(r,l.path)&&i.push(l)}}),i.sort((l,s)=>l.path.localeCompare(s.path)),a?[a,...i]:i}renderSuggestion(r,a){typeof r=="string"&&a.createEl("div",{text:r}),a.createEl("div",{text:r.path})}onChooseSuggestion(r){const a=ie(ae);let n;typeof r=="string"?n=r:n=r.path,a.excludeFF.includes(n)||(ae.update(i=>(i.excludeFF=[...i.excludeFF,n],Ve.set("settings-change"),i)),ie(dt).saveSettings())}}var ii;(function(t){t[t.DEBUG=1]="DEBUG",t[t.INFO=2]="INFO",t[t.ERROR=3]="ERROR",t[t.DISABLED=4]="DISABLED"})(ii||(ii={}));const al=class al{static setLogLevel(e){al.logLevel=e}static debug(...e){al.logLevel<=ii.DEBUG&&console.debug("[S2B]",...e)}static info(...e){al.logLevel<=ii.INFO&&console.info("[S2B]",...e)}static error(...e){al.logLevel<=ii.ERROR&&console.error("[S2B]",...e)}};Ze(al,"logLevel",ii.DEBUG);let dr=al;const Fh={"gpt-3.5-turbo":{contextWindow:16385},"gpt-4":{contextWindow:8192},"gpt-4-32k":{contextWindow:32768},"gpt-4-turbo":{contextWindow:128e3},"gpt-4o":{contextWindow:128e3}},yh={llama2:{contextWindow:4096},"llama2-uncensored":{contextWindow:4096},mistral:{contextWindow:8e3},"mistral-openorca":{contextWindow:8e3},gemma:{contextWindow:8e3},mixtral:{contextWindow:32e3},"dolphin-mixtral":{contextWindow:32e3},phi:{contextWindow:2048}},IL=Object.keys(Fh),Es=Object.keys(yh),DL=["text-embedding-3-large","text-embedding-3-small","text-embedding-ada-002"],li=["nomic-embed-text","mxbai-embed-large"];async function si(){const t=ie(ae);try{new URL(t.ollamaGenModel.baseUrl);const e=await Qe.requestUrl(t.ollamaGenModel.baseUrl+"/api/tags");return e.status===200?!0:(dr.debug(`IsOllamaRunning, Unexpected status code: ${e.status}`),!1)}catch(e){return dr.debug("Ollama is not running",e),!1}}async function ML(){const t=ie(ae);try{const e=await fetch(t.ollamaGenModel.baseUrl+"/api/tags");return e.status===200?!0:(dr.debug(`Unexpected status code: ${e.status}`),!1)}catch(e){return dr.debug("Ollama is not running or origins not correctly set",e),!1}}async function jr(){const t=ie(ae);try{return(await Qe.requestUrl({url:t.ollamaGenModel.baseUrl+"/api/tags",method:"GET",headers:{"Content-Type":"application/json"}})).json.models.map(a=>a.name).map(a=>a.replace(":latest",""))}catch(e){return dr.debug("Ollama is not running",e),[]}}async function Qv(t){const e=ie(dt),r=ie(ae),a=await jr();if(ae.update(n=>(n.ollamaGenModel.model=t,n.ollamaGenModel.contextWindow=yh[t]?yh[t].contextWindow:2048,n)),e.saveSettings(),!a.includes(t)){Ve.set("error"),dl.set("ollama-gen-model-not-installed");return}e.s2b.setGenModel(r.openAIGenModel)}async function Wv(t){const e=ie(dt),r=await jr();if(ae.update(a=>(a.ollamaEmbedModel.model=t,a)),e.saveSettings(),!r.includes(t)){Ve.set("error"),dl.set("ollama-embed-model-not-installed");return}Ve.set("settings-change")}const Rh=async t=>{const e=ie(ae),r=ie(dt);t.trim(),t.endsWith("/")&&(t=t.slice(0,-1)),e.ollamaGenModel.baseUrl=t,e.ollamaEmbedModel.baseUrl=t,await r.saveSettings(),Ve.set("settings-change")};async function xL(t){const e=ie(ae),r=ie(Bt);try{const a=await Qe.requestUrl({url:e.ollamaGenModel.baseUrl+"/api/delete",method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})});return a.status===404?(new Qe.Notice(r("notice.no_models",{values:{model:t}}),4e3),!1):a.status===200?(new Qe.Notice(r("notice.models_deleted",{values:{model:t}}),4e3),!0):!1}catch(a){dr.debug("Ollama is not running",a)}}async function*JL(t){const e=ie(Bt);dr.info("Pulling model from Ollama",t);try{const r=await fetch(`${ie(ae).ollamaEmbedModel.baseUrl}/api/pull`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({name:t})});if(!r.ok)throw new Error("Network response was not ok");const a=r.body.getReader(),n=new TextDecoder;let i="";for(wc.subscribe(l=>{l&&(a.cancel(),new Qe.Notice(e("notice.model_pull_canceled"),1e3))});;){const{done:l,value:s}=await a.read();if(l)break;const o=n.decode(s,{stream:!0});i+=o;const d=i.split(`
`);i=d.pop();for(const u of d)if(u.trim())try{yield JSON.parse(u)}catch(c){return c}}}catch(r){return r}}async function D0(t){try{return(await Qe.requestUrl({method:"GET",url:"https://api.openai.com/v1/models",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`}})).status===200}catch{return!1}}class OL{constructor(e,r){Ze(this,"papa");Ze(this,"app");Ze(this,"needsToSaveVectorStoreData",!1);Ze(this,"pluginDir");this.app=e,this.pluginDir=r}async init(){const e=ie(ae),r=ie(Bt);if(ie(Ve)==="running")return new Qe.Notice(r("notice.still_running"),4e3);if(ie(Ve)==="indexing"||ie(Ve)==="loading")return new Qe.Notice(r("notice.still_indexing"),4e3);if(e.isIncognitoMode&&!await si())return Ve.set("error"),dl.set("ollama-not-running"),new Qe.Notice(r("notice.ollama_not_running"),4e3);if(e.isIncognitoMode){const l=await jr();if(!l.includes(e.ollamaGenModel.model))return Ve.set("error"),dl.set("ollama-gen-model-not-installed"),new Qe.Notice(r("notice.ollama_gen_model"),4e3);if(!l.includes(e.ollamaEmbedModel.model))return Ve.set("error"),dl.set("ollama-embed-model-not-installed"),new Qe.Notice(r("notice.ollama_embed_model"),4e3)}else if(!e.isIncognitoMode&&!await D0(e.openAIGenModel.openAIApiKey))return Ve.set("error"),new Qe.Notice(r("notice.openai_key"),4e3);if(ie(Ve)!=="indexing-pause"){Ve.set("loading"),dr.info("Initializing second brain",`
Gen Model: `,e.isIncognitoMode?e.ollamaGenModel:e.openAIGenModel,`
Embed Model: `,e.isIncognitoMode?e.ollamaEmbedModel:e.openAIEmbedModel);try{this.papa=new k9,await this.papa.init({genModel:e.isIncognitoMode?e.ollamaGenModel:e.openAIGenModel,embedModel:e.isIncognitoMode?e.ollamaEmbedModel:e.openAIEmbedModel,langsmithApiKey:e.debugginLangchainKey||void 0,logLvl:e.isVerbose?ii.DEBUG:ii.DISABLED})}catch(l){return dr.error(l),Ve.set("error"),new Qe.Notice(r("notice.failed",{values:{error:l}}),4e3)}if(await this.app.vault.adapter.exists(this.getVectorStoreFile())){const l=await this.app.vault.adapter.readBinary(this.getVectorStoreFile());await this.papa.load(l)}}const a=this.app.vault.getMarkdownFiles(),n=await kp(this.app,a.filter(l=>{for(const s of e.excludeFF)if(hs(s,l.path))return!1;return!0}));Ve.set("indexing");let i=!1;try{let l=Date.now();const s=[];let o=0;for await(const d of this.papa.embedDocuments(n)){i=!this.needsToSaveVectorStoreData&&d.numAdded>0||d.numDeleted>0;const u=(d.numAdded+d.numSkipped)/n.length*100;gn.set(Math.max(u,ie(gn)));const c=Date.now();s.push(c-l);const p=n.length*(1-ie(gn)/100),A=s.reduce((m,h)=>m+h,0)/s.length/(d.numAdded+d.numSkipped-o)/1e3;if(o=d.numAdded+d.numSkipped,s.length>5&&(s.shift(),fv.set(Math.ceil(A*p))),l=c,ie(Ve)==="indexing-pause")break}}catch(l){dr.error(l),Ve.set("error"),dl.set("failed-indexing"),new Qe.Notice(r("notice.failed_indexing"),4e3)}this.needsToSaveVectorStoreData=i,this.saveVectorStoreData(),ie(gn)===100&&(new Qe.Notice(r("notice.done"),2e3),gn.set(0),Ve.set("idle"))}async cancelIndexing(){Ve.set("uninitialized"),gn.set(0)}canRunPapa(){const e=ie(Bt);return ie(Ve)==="running"?new Qe.Notice(e("notice.still_running"),4e3)&&!1:ie(Ve)==="indexing"||ie(Ve)==="indexing-pause"||ie(Ve)==="loading"?new Qe.Notice(e("notice.still_indexing"),4e3)&&!1:ie(Ve)==="error"?new Qe.Notice(e("notice.error"),4e3)&&!1:ie(Ve)!=="idle"?new Qe.Notice(e("notice.not_initialized"),4e3)&&!1:!0}async runPapa(){Ve.set("running");try{const e=ie(Mt),r=e[e.length-1].content,a=this.papa.run({isRAG:ie(ae).isUsingRag,userQuery:r,chatHistory:lK(e.slice(0,e.length-1)),lang:ie(ae).assistantLanguage});for await(const n of a)Kv.set(n.status),$d.set(n.content)}catch(e){const r=ie(Bt)("notice.run_failed",{values:{error:e}});$d.set(r),new Qe.Notice(r,4e3)}Ve.set("idle")}async createFilenameForChat(){let e=await this.papa.createTitleFromChatHistory(ie(ae).assistantLanguage,lK(ie(Mt)));return e=e.replace(/[\\/:*?"<>|#]/g,""),e}getVectorStoreFile(){const e=ie(ae);return Qe.normalizePath(this.pluginDir+"/vectorstores/"+(e.isIncognitoMode?e.ollamaEmbedModel.model:e.openAIEmbedModel.model)+".bin")}async saveVectorStoreData(){this.needsToSaveVectorStoreData&&this.papa&&(dr.debug("Saving vector store data"),this.needsToSaveVectorStoreData=!1,await this.app.vault.adapter.exists(this.pluginDir+"/vectorstores")||await this.app.vault.adapter.mkdir(this.pluginDir+"/vectorstores"),await this.app.vault.adapter.writeBinary(this.getVectorStoreFile(),await this.papa.getData()),dr.info("Saved vector store data"))}async onFileChange(e){if(!this.papa)return;for(const a of ie(ae).excludeFF)if(hs(a,e.path))return;const r=await kp(this.app,[e]);this.papa.embedDocuments(r,"byFile"),this.needsToSaveVectorStoreData=!0}async onFileDelete(e){if(!this.papa)return;for(const a of ie(ae).excludeFF)if(hs(a,e.path))return;const r=await kp(this.app,[e]);this.papa.deleteDocuments({docs:r}),this.needsToSaveVectorStoreData=!0}async onFileRename(e,r){if(!this.papa)return;for(const n of ie(ae).excludeFF)if(hs(n,e.path))return;await this.papa.deleteDocuments({sources:[r]});const a=await kp(this.app,[e]);this.papa.embedDocuments(a,"byFile"),this.needsToSaveVectorStoreData=!0}setSimilarityThreshold(e){this.papa&&this.papa.setSimilarityThreshold(e)}stopRun(){this.papa&&this.papa.stopRun(),Ve.set("idle")}setNumOfDocsToRetrieve(e){this.papa&&this.papa.setNumOfDocsToRetrieve(e)}setGenModel(e){this.papa&&this.papa.setGenModel(e)}setTracer(e){this.papa&&this.papa.setTracer(e)}}typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(zY);const PL=/\u00A0/g;let Eh=[];const _r=(t,e)=>{const r=ie(dt);t.innerHTML="",Qe.MarkdownRenderer.render(r.app,e,t,"Chat view.md",r);const a=t.querySelector(".copy-code-button");a&&(a.className="clickable-icon",xt(a,"copy"))},xt=(t,e)=>{Qe.setIcon(t,e)},vv=async t=>{const e=ie(dt);if(t.type==="auxclick"||t.button===2)return;const r=t.target,a=r.tagName==="A"?r:r.closest("a");if(a){if(a.hasClass("file-link")){t.preventDefault();const n=a.getAttribute("href"),i=zL(n),l=typeof n=="string"&&e.chatView.app.metadataCache.getFirstLinkpathDest(i.root,e.chatView.file.path);if(!l)return;e.app.openWithDefaultApp(l.path);return}if(a.hasClass("internal-link")){t.preventDefault();const n=a.getAttr("href"),i=t.button===1||t.ctrlKey||t.metaKey;e.app.workspace.openLinkText(n,"Chat view.md",i);return}if(a.hasClass("tag")){t.preventDefault(),e.app.internalPlugins.getPluginById("global-search").instance.openGlobalSearch(`tag:${a.getAttr("href")}`);return}a.hasClass("external-link")&&(t.preventDefault(),window.open(a.getAttr("href"),"_blank"))}};function zL(t){const r=t.replace(PL," ").normalize("NFC").split(/\|(.*)/),a=r[0].split(/#(.*)/);return{root:a[0],subpath:a[1]?"#"+a[1]:"",alias:r[1]||""}}const Fv=t=>{const e=ie(dt),r=t.target;r.tagName==="A"&&r.hasClass("internal-link")&&e.chatView.app.workspace.trigger("hover-link",{event:t,hoverParent:e.chatView,targetEl:r,linktext:r.getAttr("href"),sourcePath:e.chatView.file.path})},jL=t=>{navigator.clipboard.writeText(t),new Qe.Notice(ie(Bt)("notice.copied_to_clipboard",{values:{text:t}}),4e3)},Gh=(t,e)=>{Mt.set([...ie(Mt),{role:t,content:e,id:fu()}]),ie(dt).chatView.save()},sK=async t=>{if(!ie(dt).s2b.canRunPapa())return;const e=ie(Mt),r=t?e.indexOf(t):e.length;Mt.set(e.slice(0,r)),ie(dt).chatView.save(),await ie(dt).s2b.runPapa(),Gh("Assistant",ie($d))};function qL(t,e){const r=ie(Mt);qd.set(!0);const a=r.indexOf(t);return Eh=r.slice(a),Mt.set(r.slice(0,a+1)),Va.set(t.content),e.focus(),t.id}function $L(){const t=ie(Mt);t.pop(),qd.set(!1),Va.set(""),Eh[0].id=fu(),Mt.set(t.concat(Eh)),ie(dt).chatView.requestSave()}function eT(t,e){Is.set(!0),Va.set(t),e.focus(),setTimeout(()=>e.select(),0)}function tT(t){const e=ie(dt);Is.set(!1),Va.set(""),t.innerText="",_r(t,ie(ae).initialAssistantMessageContent),e.chatView.requestSave()}function rT(t){const e=ie(dt);Is.set(!1),Va.set(""),t.innerText="";const r=eu.initialAssistantMessageContent;_r(t,r),Mt.set([{role:"Assistant",content:r,id:fu()}]),ie(ae).initialAssistantMessageContent=eu.initialAssistantMessageContent,e.chatView.requestSave(),e.saveSettings()}function aT(t){let e,r,a,n;return{c(){e=X("button"),r=te(t[2]),F(e,"class",t[3])},m(i,l){N(i,e,l),E(e,r),a||(n=de(e,"click",function(){Yr(t[0])&&t[0].apply(this,arguments)}),a=!0)},p(i,l){t=i,l&4&&ne(r,t[2]),l&8&&F(e,"class",t[3])},d(i){i&&Y(e),a=!1,n()}}}function nT(t){let e,r,a,n,i;return{c(){e=X("button"),F(e,"class",r="clickable-icon "+t[3])},m(l,s){N(l,e,s),n||(i=[Ge(a=xt.call(null,e,t[1])),de(e,"click",function(){Yr(t[0])&&t[0].apply(this,arguments)})],n=!0)},p(l,s){t=l,s&8&&r!==(r="clickable-icon "+t[3])&&F(e,"class",r),a&&Yr(a.update)&&s&2&&a.update.call(null,t[1])},d(l){l&&Y(e),n=!1,We(i)}}}function iT(t){let e;function r(i,l){return i[1]!==""?nT:aT}let a=r(t),n=a(t);return{c(){n.c(),e=Tt()},m(i,l){n.m(i,l),N(i,e,l)},p(i,[l]){a===(a=r(i))&&n?n.p(i,l):(n.d(1),n=a(i),n&&(n.c(),n.m(e.parentNode,e)))},i:le,o:le,d(i){i&&Y(e),n.d(i)}}}function lT(t,e,r){let{changeFunc:a}=e,{iconId:n=""}=e,{buttonText:i=""}=e,{styles:l=""}=e;return t.$$set=s=>{"changeFunc"in s&&r(0,a=s.changeFunc),"iconId"in s&&r(1,n=s.iconId),"buttonText"in s&&r(2,i=s.buttonText),"styles"in s&&r(3,l=s.styles)},[a,n,i,l]}class Ds extends pt{constructor(e){super(),ut(this,e,lT,iT,st,{changeFunc:0,iconId:1,buttonText:2,styles:3})}}function oK(t){let e,r,a,n,i=t[1]("modal.dont_show")+"",l,s,o;return{c(){e=X("form"),r=X("input"),a=M(),n=X("label"),l=te(i),F(r,"type","checkbox"),F(r,"name","dontShowAgain"),F(n,"for","dontShowAgain"),F(e,"class","mr-auto flex items-center self-center")},m(d,u){N(d,e,u),E(e,r),E(e,a),E(e,n),E(n,l),s||(o=de(r,"click",t[2]),s=!0)},p(d,u){u&2&&i!==(i=d[1]("modal.dont_show")+"")&&ne(l,i)},d(d){d&&Y(e),s=!1,o()}}}function sT(t){let e,r=t[0].title+"",a,n,i,l=t[0].content+"",s,o,d,u,c,p,A,m,h=t[0].hideModalOption!==""&&oK(t);return c=new Ds({props:{buttonText:t[1]("modal.cancel"),changeFunc:t[3]}}),A=new Ds({props:{buttonText:t[1]("modal.confirm"),styles:"mod-warning",changeFunc:t[4]}}),{c(){e=X("div"),a=te(r),n=M(),i=X("div"),s=te(l),o=M(),d=X("div"),h&&h.c(),u=M(),pe(c.$$.fragment),p=M(),pe(A.$$.fragment),F(e,"class","modal-title"),F(i,"class","modal-content"),F(d,"class","modal-button-container")},m(C,w){N(C,e,w),E(e,a),N(C,n,w),N(C,i,w),E(i,s),N(C,o,w),N(C,d,w),h&&h.m(d,null),E(d,u),se(c,d,null),E(d,p),se(A,d,null),m=!0},p(C,[w]){(!m||w&1)&&r!==(r=C[0].title+"")&&ne(a,r),(!m||w&1)&&l!==(l=C[0].content+"")&&ne(s,l),C[0].hideModalOption!==""?h?h.p(C,w):(h=oK(C),h.c(),h.m(d,u)):h&&(h.d(1),h=null);const b={};w&2&&(b.buttonText=C[1]("modal.cancel")),w&1&&(b.changeFunc=C[3]),c.$set(b);const f={};w&2&&(f.buttonText=C[1]("modal.confirm")),w&1&&(f.changeFunc=C[4]),A.$set(f)},i(C){m||(D(c.$$.fragment,C),D(A.$$.fragment,C),m=!0)},o(C){J(c.$$.fragment,C),J(A.$$.fragment,C),m=!1},d(C){C&&(Y(e),Y(n),Y(i),Y(o),Y(d)),h&&h.d(),oe(c),oe(A)}}}function oT(t,e,r){let a;me(t,Bt,o=>r(1,a=o));let{modal:n}=e;const i=()=>ae.warningOff(n.hideModalOption),l=()=>{n.close(),n.onSubmit("Cancel")},s=()=>{n.close(),n.onSubmit("Yes")};return t.$$set=o=>{"modal"in o&&r(0,n=o.modal)},[n,a,i,l,s]}let dT=class extends pt{constructor(e){super(),ut(this,e,oT,sT,st,{modal:0})}};class QC extends Qe.Modal{constructor(r,a,n,i,l=""){super(r);Ze(this,"result");Ze(this,"title");Ze(this,"content");Ze(this,"hideModalOption");Ze(this,"component");Ze(this,"onSubmit");this.title=a,this.content=n,this.onSubmit=i,this.hideModalOption=l}activate(){if(this.hideModalOption!==""&&ie(ae)[this.hideModalOption]){this.onSubmit("Yes");return}this.open()}onOpen(){this.modalEl.parentElement.addClass("mod-confirmation"),this.component=new dT({target:this.contentEl,props:{modal:this}})}onClose(){const{contentEl:r}=this;r.empty()}}function uT(t){let e;return{c(){e=X("progress"),yl(e,"--dynamic-color",t[1]?"var(--background-secondary-alt)":"var(--background-primary-alt)"),F(e,"class","custom-progress border-1 my-2 h-2 w-full rounded-lg border border-solid border-[--background-modifier-border] svelte-6nm1pt"),e.value=t[0],F(e,"max","100")},m(r,a){N(r,e,a)},p(r,[a]){a&2&&yl(e,"--dynamic-color",r[1]?"var(--background-secondary-alt)":"var(--background-primary-alt)"),a&1&&(e.value=r[0])},i:le,o:le,d(r){r&&Y(e)}}}function pT(t,e,r){let a;me(t,Qu,i=>r(1,a=i));let{progress:n=0}=e;return t.$$set=i=>{"progress"in i&&r(0,n=i.progress)},[n,a]}class yv extends pt{constructor(e){super(),ut(this,e,pT,uT,st,{progress:0})}}function cT(t){let e,r,a;return{c(){e=X("input"),F(e,"type","number"),F(e,"spellcheck","false"),F(e,"placeholder",t[2])},m(n,i){N(n,e,i),Wt(e,t[0]),r||(a=[de(e,"input",t[11]),de(e,"blur",t[12]),de(e,"focus",t[13]),de(e,"change",t[14])],r=!0)},p(n,i){i&4&&F(e,"placeholder",n[2]),i&1&&N0(e.value)!==n[0]&&Wt(e,n[0])},d(n){n&&Y(e),r=!1,We(a)}}}function mT(t){let e,r,a;return{c(){e=X("input"),F(e,"class",t[3]),F(e,"type","text"),F(e,"spellcheck","false"),F(e,"placeholder",t[2])},m(n,i){N(n,e,i),Wt(e,t[0]),r||(a=[de(e,"focus",t[7]),de(e,"blur",t[8]),de(e,"input",t[9]),de(e,"change",t[10])],r=!0)},p(n,i){i&8&&F(e,"class",n[3]),i&4&&F(e,"placeholder",n[2]),i&1&&e.value!==n[0]&&Wt(e,n[0])},d(n){n&&Y(e),r=!1,We(a)}}}function gT(t){let e;function r(i,l){if(i[1]==="text")return mT;if(i[1]==="number")return cT}let a=r(t),n=a&&a(t);return{c(){n&&n.c(),e=Tt()},m(i,l){n&&n.m(i,l),N(i,e,l)},p(i,[l]){a===(a=r(i))&&n?n.p(i,l):(n&&n.d(1),n=a&&a(i),n&&(n.c(),n.m(e.parentNode,e)))},i:le,o:le,d(i){i&&Y(e),n&&n.d(i)}}}function AT(t,e,r){let{inputType:a="text"}=e,{placeholder:n=""}=e,{styles:i=""}=e,{changeFunc:l}=e,{focusFunc:s=()=>{}}=e,{blurFunc:o=()=>{}}=e,{value:d=""}=e;const u=()=>s(),c=()=>o();function p(){d=this.value,r(0,d)}const A=()=>l(d);function m(){d=N0(this.value),r(0,d)}const h=()=>o(),C=()=>s(),w=()=>l(d);return t.$$set=b=>{"inputType"in b&&r(1,a=b.inputType),"placeholder"in b&&r(2,n=b.placeholder),"styles"in b&&r(3,i=b.styles),"changeFunc"in b&&r(4,l=b.changeFunc),"focusFunc"in b&&r(5,s=b.focusFunc),"blurFunc"in b&&r(6,o=b.blurFunc),"value"in b&&r(0,d=b.value)},[d,a,n,i,l,s,o,u,c,p,A,m,h,C,w]}class Xl extends pt{constructor(e){super(),ut(this,e,AT,gT,st,{inputType:1,placeholder:2,styles:3,changeFunc:4,focusFunc:5,blurFunc:6,value:0})}}function dK(t,e,r){const a=t.slice();return a[1]=e[r],a[3]=r,a}function uK(t){let e;return{c(){e=te(t[1])},m(r,a){N(r,e,a)},d(r){r&&Y(e)}}}function pK(t){let e,r=t[3]===t[0]&&uK(t);return{c(){r&&r.c(),e=Tt()},m(a,n){r&&r.m(a,n),N(a,e,n)},p(a,n){a[3]===a[0]?r||(r=uK(a),r.c(),r.m(e.parentNode,e)):r&&(r.d(1),r=null)},d(a){a&&Y(e),r&&r.d(a)}}}function hT(t){let e,r=Xt(["",".","..","..."]),a=[];for(let n=0;n<4;n+=1)a[n]=pK(dK(t,r,n));return{c(){for(let n=0;n<4;n+=1)a[n].c();e=Tt()},m(n,i){for(let l=0;l<4;l+=1)a[l]&&a[l].m(n,i);N(n,e,i)},p(n,[i]){if(i&1){r=Xt(["",".","..","..."]);let l;for(l=0;l<4;l+=1){const s=dK(n,r,l);a[l]?a[l].p(s,i):(a[l]=pK(s),a[l].c(),a[l].m(e.parentNode,e))}for(;l<4;l+=1)a[l].d(1)}},i:le,o:le,d(n){n&&Y(e),ea(a,n)}}}function BT(t,e,r){let a=0;return setInterval(()=>{r(0,a=(a+1)%4)},300),[a]}class eo extends pt{constructor(e){super(),ut(this,e,BT,hT,st,{})}}function CT(t){let e,r,a,n,i,l,s,o,d,u,c=mK(t[4])+"",p,A,m,h,C,w,b,f,K;return s=new eo({}),m=new yv({props:{progress:t[5]}}),{c(){e=X("div"),r=X("div"),a=X("div"),n=X("div"),i=te(t[6]),l=M(),pe(s.$$.fragment),o=M(),d=te(t[5]),u=te("% / "),p=te(c),A=M(),pe(m.$$.fragment),h=M(),C=X("button"),F(a,"class","flex w-full justify-between"),F(r,"class","flex w-full flex-col"),F(C,"aria-label",w=t[9]("pullModel.cancel")),F(C,"class","mb-1 h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]"),F(e,"class","flex w-full items-center gap-2")},m(W,R){N(W,e,R),E(e,r),E(r,a),E(a,n),E(n,i),E(n,l),se(s,n,null),E(a,o),E(a,d),E(a,u),E(a,p),E(r,A),se(m,r,null),E(e,h),E(e,C),b=!0,f||(K=[Ge(xt.call(null,C,"x")),de(C,"click",t[14])],f=!0)},p(W,R){(!b||R&64)&&ne(i,W[6]),(!b||R&32)&&ne(d,W[5]),(!b||R&16)&&c!==(c=mK(W[4])+"")&&ne(p,c);const v={};R&32&&(v.progress=W[5]),m.$set(v),(!b||R&512&&w!==(w=W[9]("pullModel.cancel")))&&F(C,"aria-label",w)},i(W){b||(D(s.$$.fragment,W),D(m.$$.fragment,W),b=!0)},o(W){J(s.$$.fragment,W),J(m.$$.fragment,W),b=!1},d(W){W&&Y(e),oe(s),oe(m),f=!1,We(K)}}}function wT(t){let e,r,a,n,i,l,s,o,d,u,c,p,A=t[9]("general.install")+"",m,h,C,w;return u=new Xl({props:{styles:"w-4/6",value:t[0],changeFunc:t[12]}}),{c(){e=X("div"),r=X("div"),a=X("div"),n=te(t[1]),i=M(),l=X("div"),s=te(t[2]),o=M(),d=X("div"),pe(u.$$.fragment),c=M(),p=X("button"),m=te(A),F(a,"class","setting-item-name"),F(l,"class","setting-item-description"),F(d,"class","flex flex-row justify-end gap-2"),F(e,"class","mb-1 flex items-center justify-between")},m(b,f){N(b,e,f),E(e,r),E(r,a),E(a,n),E(r,i),E(r,l),E(l,s),E(e,o),E(e,d),se(u,d,null),E(d,c),E(d,p),E(p,m),h=!0,C||(w=de(p,"click",t[13]),C=!0)},p(b,f){(!h||f&2)&&ne(n,b[1]),(!h||f&4)&&ne(s,b[2]);const K={};f&1&&(K.value=b[0]),f&1&&(K.changeFunc=b[12]),u.$set(K),(!h||f&512)&&A!==(A=b[9]("general.install")+"")&&ne(m,A)},i(b){h||(D(u.$$.fragment,b),h=!0)},o(b){J(u.$$.fragment,b),h=!1},d(b){b&&Y(e),oe(u),C=!1,w()}}}function cK(t){let e;return{c(){e=X("p"),e.textContent="There was an error pulling the recommended model"},m(r,a){N(r,e,a)},d(r){r&&Y(e)}}}function bT(t){let e,r,a,n,i;const l=[wT,CT],s=[];function o(u,c){return u[3]?1:0}e=o(t),r=s[e]=l[e](t);let d=t[7]&&cK();return{c(){r.c(),a=M(),d&&d.c(),n=Tt()},m(u,c){s[e].m(u,c),N(u,a,c),d&&d.m(u,c),N(u,n,c),i=!0},p(u,[c]){let p=e;e=o(u),e===p?s[e].p(u,c):(vt(),J(s[p],1,1,()=>{s[p]=null}),Ft(),r=s[e],r?r.p(u,c):(r=s[e]=l[e](u),r.c()),D(r,1),r.m(a.parentNode,a)),u[7]?d||(d=cK(),d.c(),d.m(n.parentNode,n)):d&&(d.d(1),d=null)},i(u){i||(D(r),i=!0)},o(u){J(r),i=!1},d(u){u&&(Y(a),Y(n)),s[e].d(u),d&&d.d(u)}}}function mK(t,e=2){if(t===0)return"0 Bytes";const r=1024,a=e<0?0:e,n=["Bytes","Kb","Mb","Gb"],i=Math.floor(Math.log(t)/Math.log(r));return parseFloat((t/Math.pow(r,i)).toFixed(a))+" "+n[i]}function KT(t,e,r){let a,n;me(t,wc,b=>r(8,a=b)),me(t,Bt,b=>r(9,n=b));let{onSuccessfulPull:i=()=>{}}=e,{text:l=""}=e,{desc:s=""}=e,{pullModel:o=""}=e,d=!1,u=0,c=0,p="",A=!1;async function m(){r(3,d=!0);try{r(5,c=0),r(4,u=0);for await(const b of JL(o))r(6,p=b.status),b.total&&r(4,u=b.total),b.completed&&r(5,c=Math.floor(b.completed/u*100));c===100&&i(),r(3,d=!1)}catch(b){r(7,A=!0),new Qe.Notice(n("notice.error_pulling_model",{values:{error:b.message}}))}Ye(wc,a=!1,a)}const h=b=>r(0,o=b),C=()=>m(),w=()=>{Ye(wc,a=!0,a)};return t.$$set=b=>{"onSuccessfulPull"in b&&r(11,i=b.onSuccessfulPull),"text"in b&&r(1,l=b.text),"desc"in b&&r(2,s=b.desc),"pullModel"in b&&r(0,o=b.pullModel)},[o,l,s,d,u,c,p,A,a,n,m,i,h,C,w]}class K1 extends pt{constructor(e){super(),ut(this,e,KT,bT,st,{onSuccessfulPull:11,text:1,desc:2,pullModel:0})}}function fT(t){let e,r,a,n,i,l,s,o,d,u,c;const p=t[5].default,A=hu(p,t,t[4],null);return{c(){e=X("div"),r=X("div"),a=X("div"),n=te(t[0]),i=M(),l=X("div"),s=te(t[2]),o=M(),d=X("div"),A&&A.c(),F(a,"class","setting-item-name"),F(l,"class","setting-item-description"),F(r,"class","setting-item-info"),F(d,"class","setting-item-control"),F(e,"class",u="setting-item "+(t[1]?"setting-item-heading":"")+" "+(t[3]?"opacity-50 pointer-events-none":""))},m(m,h){N(m,e,h),E(e,r),E(r,a),E(a,n),E(r,i),E(r,l),E(l,s),E(e,o),E(e,d),A&&A.m(d,null),c=!0},p(m,[h]){(!c||h&1)&&ne(n,m[0]),(!c||h&4)&&ne(s,m[2]),A&&A.p&&(!c||h&16)&&Cu(A,p,m,m[4],c?Bu(p,m[4],h,null):wu(m[4]),null),(!c||h&10&&u!==(u="setting-item "+(m[1]?"setting-item-heading":"")+" "+(m[3]?"opacity-50 pointer-events-none":"")))&&F(e,"class",u)},i(m){c||(D(A,m),c=!0)},o(m){J(A,m),c=!1},d(m){m&&Y(e),A&&A.d(m)}}}function QT(t,e,r){let{$$slots:a={},$$scope:n}=e,{name:i}=e,{isHeading:l=!1}=e,{desc:s=""}=e,{isDisabled:o=!1}=e;return t.$$set=d=>{"name"in d&&r(0,i=d.name),"isHeading"in d&&r(1,l=d.isHeading),"desc"in d&&r(2,s=d.desc),"isDisabled"in d&&r(3,o=d.isDisabled),"$$scope"in d&&r(4,n=d.$$scope)},[i,l,s,o,n,a]}class sr extends pt{constructor(e){super(),ut(this,e,QT,fT,st,{name:0,isHeading:1,desc:2,isDisabled:3})}}function gK(t,e,r){const a=t.slice();return a[12]=e[r],a}function WT(t,e,r){const a=t.slice();return a[12]=e[r],a}function AK(t,e,r){const a=t.slice();return a[12]=e[r],a}function vT(t,e,r){const a=t.slice();return a[12]=e[r],a}function FT(t){let e,r,a,n;e=new K1({props:{text:t[3]("modal.pull_model_name"),desc:t[3]("modal.pull_model_desc"),onSuccessfulPull:t[5]}});let i=t[1]&&hK(t);return{c(){pe(e.$$.fragment),r=M(),i&&i.c(),a=Tt()},m(l,s){se(e,l,s),N(l,r,s),i&&i.m(l,s),N(l,a,s),n=!0},p(l,s){const o={};s&8&&(o.text=l[3]("modal.pull_model_name")),s&8&&(o.desc=l[3]("modal.pull_model_desc")),s&6&&(o.onSuccessfulPull=l[5]),e.$set(o),l[1]?i?(i.p(l,s),s&2&&D(i,1)):(i=hK(l),i.c(),D(i,1),i.m(a.parentNode,a)):i&&(vt(),J(i,1,1,()=>{i=null}),Ft())},i(l){n||(D(e.$$.fragment,l),D(i),n=!0)},o(l){J(e.$$.fragment,l),J(i),n=!1},d(l){l&&(Y(r),Y(a)),oe(e,l),i&&i.d(l)}}}function yT(t){let e,r,a;return r=new eo({}),{c(){e=te(`Loading
`),pe(r.$$.fragment)},m(n,i){N(n,e,i),se(r,n,i),a=!0},p:le,i(n){a||(D(r.$$.fragment,n),a=!0)},o(n){J(r.$$.fragment,n),a=!1},d(n){n&&Y(e),oe(r,n)}}}function RT(t){let e;return{c(){e=te("Ollama is Not Running")},m(r,a){N(r,e,a)},p:le,i:le,o:le,d(r){r&&Y(e)}}}function hK(t){let e,r,a,n;return e=new sr({props:{name:t[3]("settings.ollama.gen_model"),desc:t[3]("settings.ollama.model_descriptions."+t[4].ollamaGenModel.model,{default:""}),$$slots:{default:[GT]},$$scope:{ctx:t}}}),a=new sr({props:{name:t[3]("settings.ollama.embed_model"),desc:t[3]("settings.ollama.model_descriptions."+t[4].ollamaEmbedModel.model,{default:""}),$$slots:{default:[ZT]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment),r=M(),pe(a.$$.fragment)},m(i,l){se(e,i,l),N(i,r,l),se(a,i,l),n=!0},p(i,l){const s={};l&8&&(s.name=i[3]("settings.ollama.gen_model")),l&24&&(s.desc=i[3]("settings.ollama.model_descriptions."+i[4].ollamaGenModel.model,{default:""})),l&2097180&&(s.$$scope={dirty:l,ctx:i}),e.$set(s);const o={};l&8&&(o.name=i[3]("settings.ollama.embed_model")),l&24&&(o.desc=i[3]("settings.ollama.model_descriptions."+i[4].ollamaEmbedModel.model,{default:""})),l&2097180&&(o.$$scope={dirty:l,ctx:i}),a.$set(o)},i(i){n||(D(e.$$.fragment,i),D(a.$$.fragment,i),n=!0)},o(i){J(e.$$.fragment,i),J(a.$$.fragment,i),n=!1},d(i){i&&Y(r),oe(e,i),oe(a,i)}}}function ET(t){let e;return{c(){e=X("option"),e.textContent=`${t[12]}`,e.__value=t[12],Wt(e,e.__value)},m(r,a){N(r,e,a)},p:le,d(r){r&&Y(e)}}}function BK(t){let e,r=t[12]+"",a,n;return{c(){e=X("option"),a=te(r),e.__value=n=t[12],Wt(e,e.__value)},m(i,l){N(i,e,l),E(e,a)},p(i,l){l&4&&r!==(r=i[12]+"")&&ne(a,r),l&4&&n!==(n=i[12])&&(e.__value=n,Wt(e,e.__value))},d(i){i&&Y(e)}}}function GT(t){let e,r,a,n,i,l,s,o=Xt(Es),d=[];for(let p=0;p<o.length;p+=1)d[p]=ET(vT(t,o,p));let u=Xt(t[2].filter(t[6])),c=[];for(let p=0;p<u.length;p+=1)c[p]=BK(AK(t,u,p));return{c(){e=X("select"),r=X("optgroup");for(let p=0;p<d.length;p+=1)d[p].c();n=X("optgroup");for(let p=0;p<c.length;p+=1)c[p].c();F(r,"label",a=t[3]("settings.ollama.recommended")),F(n,"label",i=t[3]("settings.ollama.other")),F(e,"class","dropdown"),t[4].ollamaGenModel.model===void 0&&Dr(()=>t[7].call(e))},m(p,A){N(p,e,A),E(e,r);for(let m=0;m<d.length;m+=1)d[m]&&d[m].m(r,null);E(e,n);for(let m=0;m<c.length;m+=1)c[m]&&c[m].m(n,null);Ia(e,t[4].ollamaGenModel.model,!0),l||(s=[de(e,"change",t[7]),de(e,"change",t[8])],l=!0)},p(p,A){if(A&8&&a!==(a=p[3]("settings.ollama.recommended"))&&F(r,"label",a),A&4){u=Xt(p[2].filter(p[6]));let m;for(m=0;m<u.length;m+=1){const h=AK(p,u,m);c[m]?c[m].p(h,A):(c[m]=BK(h),c[m].c(),c[m].m(n,null))}for(;m<c.length;m+=1)c[m].d(1);c.length=u.length}A&8&&i!==(i=p[3]("settings.ollama.other"))&&F(n,"label",i),A&20&&Ia(e,p[4].ollamaGenModel.model)},d(p){p&&Y(e),ea(d,p),ea(c,p),l=!1,We(s)}}}function ST(t){let e;return{c(){e=X("option"),e.textContent=`${t[12]}`,e.__value=t[12],Wt(e,e.__value)},m(r,a){N(r,e,a)},p:le,d(r){r&&Y(e)}}}function CK(t){let e,r=t[12]+"",a,n;return{c(){e=X("option"),a=te(r),e.__value=n=t[12],Wt(e,e.__value)},m(i,l){N(i,e,l),E(e,a)},p(i,l){l&4&&r!==(r=i[12]+"")&&ne(a,r),l&4&&n!==(n=i[12])&&(e.__value=n,Wt(e,e.__value))},d(i){i&&Y(e)}}}function ZT(t){let e,r,a,n,i,l,s,o=Xt(li),d=[];for(let p=0;p<o.length;p+=1)d[p]=ST(WT(t,o,p));let u=Xt(t[2].filter(t[9])),c=[];for(let p=0;p<u.length;p+=1)c[p]=CK(gK(t,u,p));return{c(){e=X("select"),r=X("optgroup");for(let p=0;p<d.length;p+=1)d[p].c();n=X("optgroup");for(let p=0;p<c.length;p+=1)c[p].c();F(r,"label",a=t[3]("settings.ollama.recommended")),F(n,"label",i=t[3]("settings.ollama.other")),F(e,"class","dropdown"),t[4].ollamaEmbedModel.model===void 0&&Dr(()=>t[10].call(e))},m(p,A){N(p,e,A),E(e,r);for(let m=0;m<d.length;m+=1)d[m]&&d[m].m(r,null);E(e,n);for(let m=0;m<c.length;m+=1)c[m]&&c[m].m(n,null);Ia(e,t[4].ollamaEmbedModel.model,!0),l||(s=[de(e,"change",t[10]),de(e,"change",t[11])],l=!0)},p(p,A){if(A&8&&a!==(a=p[3]("settings.ollama.recommended"))&&F(r,"label",a),A&4){u=Xt(p[2].filter(p[9]));let m;for(m=0;m<u.length;m+=1){const h=gK(p,u,m);c[m]?c[m].p(h,A):(c[m]=CK(h),c[m].c(),c[m].m(n,null))}for(;m<c.length;m+=1)c[m].d(1);c.length=u.length}A&8&&i!==(i=p[3]("settings.ollama.other"))&&F(n,"label",i),A&20&&Ia(e,p[4].ollamaEmbedModel.model)},d(p){p&&Y(e),ea(d,p),ea(c,p),l=!1,We(s)}}}function XT(t){let e,r=t[3]("cmd.pull_model")+"",a,n,i,l,s,o;const d=[RT,yT,FT],u=[];function c(p,A){return p[0]?p[0]===void 0?1:2:0}return l=c(t),s=u[l]=d[l](t),{c(){e=X("div"),a=te(r),n=M(),i=X("div"),s.c(),F(e,"class","modal-title"),F(i,"class","modal-content")},m(p,A){N(p,e,A),E(e,a),N(p,n,A),N(p,i,A),u[l].m(i,null),o=!0},p(p,[A]){(!o||A&8)&&r!==(r=p[3]("cmd.pull_model")+"")&&ne(a,r);let m=l;l=c(p),l===m?u[l].p(p,A):(vt(),J(u[m],1,1,()=>{u[m]=null}),Ft(),s=u[l],s?s.p(p,A):(s=u[l]=d[l](p),s.c()),D(s,1),s.m(i,null))},i(p){o||(D(s),o=!0)},o(p){J(s),o=!1},d(p){p&&(Y(e),Y(n),Y(i)),u[l].d()}}}function HT(t,e,r){let a,n;me(t,Bt,h=>r(3,a=h)),me(t,ae,h=>r(4,n=h));let i,l=!1,s=[];bi(async()=>{r(2,s=await jr()),r(0,i=await si())});const o=async()=>{r(2,s=await jr()),r(1,l=!0)},d=h=>!Es.includes(h)&&!li.includes(h);function u(){n.ollamaGenModel.model=Od(this),ae.set(n),r(2,s)}const c=()=>Qv(n.ollamaGenModel.model),p=h=>!li.includes(h);function A(){n.ollamaEmbedModel.model=Od(this),ae.set(n),r(2,s)}return[i,l,s,a,n,o,d,u,c,p,A,()=>Wv(n.ollamaEmbedModel.model)]}let VT=class extends pt{constructor(e){super(),ut(this,e,HT,XT,st,{})}};class YT extends Qe.Modal{constructor(r){super(r);Ze(this,"component")}onOpen(){new VT({target:this.contentEl,props:{modal:this}})}onClose(){const{contentEl:r}=this;r.empty()}}const NT={delete:"Delete",install:"Install"},LT={chat:"Open S2B Chat"},TT={chat:"Open Chat",pull_model:"Pull Ollama Model",remove_model:"Remove Ollama Model"},kT={dont_show:"Don't show this again",cancel:"Cancel",confirm:"Confirm",pull_model_name:"Pull Ollama Model",pull_model_desc:"Install a model from the Ollama registry",remove:{name:"Remove Ollama Model",desc:"Remove an installed model from your system",success:"Model removed successfully",error:"Failed to remove model. Model might not be installed"}},UT={title:"Run via Third-Party Services",description:"Are you sure you want to run via third-parties? Your personal data will be shared with third-party services like OpenAI."},_T={still_running:"Smart Second Brain is still running. Pelase wait.",still_indexing:"Smart Second Brain is still indexing. Please wait.",ollama_not_running:"Please make sure Ollama is running before initializing Smart Second Brain.",ollama_gen_model:"Ollama model not installed. Please install the model before initializing Smart Second Brain.",ollama_embed_model:"Ollama model not installed. Please install the model before initializing Smart Second Brain.",openai_key:"Please make sure your OpenAI API Key is valid before initializing Smart Second Brain.",failed:"Failed to initialize Smart Second Brain (Error: {error}). Please retry.",failed_indexing:"Failed to index notes into your smart second brain. Please retry.",done:"Smart Second Brain initialized.",error:"An error occured. Please wait for the error to resolve.",not_initialized:"Smart Second Brain not initialized. Please initialize first.",plugin_data_cleared:"Plugin data cleared.",api_key_invalid:"API Key is invalid!",error_pulling_model:"Failed to pull model from Ollama (Error: {error}). Please retry.",copied_to_clipboard:`Copied to clipboard:
{text}`,no_notes_retrieved:"No notes retrieved. Maybe lower the similarity threshold.",run_failed:"Failed to run Smart Second Brain (Error: {error}). Please retry.",models_deleted:"The Model {model} has been deleted",no_models:"The model {model} was not found",model_pull_canceled:"Model pull cancelled"},IT={edit:"Edit query and regenerate answer",cancel_edit:"Cancel editing",copy:"Copy Text",regenerate:"Deletes all following Messages and regenerates the answer to the current query",change_assistant_prompt:"Change the initial assistant message",reset_assistant_prompt:"Reset the initial assistant message",retrieving:"Retrieving",reducing:"Reducing {num} Notes",stopped:"Stopped!",user:"You",assistant:"Assistant",save:"Save the Chat to a Note",delete:"Delete the Chat History",toggle_papa:"Chatting with your Notes",toggle_llm:"Chatting with plain LLM",stop:"Stop your Smart Second Brain",send:"Run your Smart Second Brain",retry_error:"An error occured. Retry initialization",reinitialize:"Reinitialize, Settings changed",input_placeholder:"Chat with your Smart Second Brain..."},DT={welcome_msg:"Welcome to your Smart Second Brain! Your personal AI assistant that helps you to find and process information in your notes.",setup:"Setup",test:"Test",privacy_mode_note:"Your assistant will run in privacy mode. That means it is not connected to the internet and is running fully locally by leveraging Ollama.",openai_mode_note:"Your assistant will use third-party services to run. That means you will have to share all your personal information with these services and your Smart Second Brain needs to be connected to the internet to leverage OpenAIs large language models like ChatGPT.",init:"Start your Smart Second Brain",init_label:"Click to Start",ollama:{deamon:{install:"Install Ollama in the terminal:",set_baseurl:"Set the Ollama Base URL",start:"Start Ollama by running this command in the terminal"},app:{download:"Download the App",download_link:"here",extract:"Extract the .zip and start Ollama",run:"Run the setup.exe",test_label:"Test if Ollama is running",set_origins:"In the terminal set Ollama origins to enable streaming responses:",restart:"Restart the Ollama service ",restart_label:"Click Ollamas menu bar icon and then quit",quit:"Quit the Ollama service ",quit_label:"Click Ollamas menu bar icon and then quit",start_origins:"Start Ollama by running this command in the powershell"},test_origins:"Test if the origins are set correctly",install_model:"Install an Ollama Embedding Model.",recommended:"Recommended: ",set_model:"Set your Embedding Model:"},openai:{create_account:"Create an OpenAI ",create_account_link:"Account",create_api_key:"Create an ",create_api_key_link:"API Key",api_key_warning:`> [!Warning] Activate API-Key
> For the API-Key to work you might have to upgrade to an OpenAI paid account. This means depositing at least $5 onto your OpenAI account. This might change in the future.`,paste_api_key:"Paste your key here:",test_api_key:"Test your API Key",api_key_valid:"API Key is valid!"}},MT={enable:"Run on your machine",disable:"Run via Third-Party Services"},xT={excludeff:"Exclude files and folders",excludeff_desc:"These files and folders won't be embedded and not be used for generating answers.",excludeff_add:"Add",excludeff_delete:"Delete from exclude list",advanced:"Advanced Settings",clear:"Clear Plugin Data",clear_desc:"This will delete all plugin data and the vector store data. All chat files inside your vault will not be affected.",clear_modal:{title:"Clear Plugin Data",description:"Are you sure you want to delete the plugin data? Note that only the plugin data and the vector store data will be removed. All chat files inside your vault will not be affected."},clear_label:"Clear",relaunch:"Relaunch",autostart:"Autostart",autostart_desc:"Automatically start the Smart Second Brain when Obsidian starts.",num_docs_retrieve:"Documents to retrieve",num_docs_retrieve_desc:"The maximum amount of documents to retrieve from your vault. Note that documents are not equivalent to notes.",debugging:"Debugging",langsmith_key:"Langsmith API Key",langsmith_key_desc:"Provide a Langsmith API Key if you want to trace and evaluate the internals of your Smart Second Brain.",verbose:"Developer Console logging",verbose_desc:"Enable verbose logging in the Developer Console.",openai:{desc:" ",api_key:"API Key",api_key_desc:"Provide your OpenAI API Key to use OpenAI's large language models.",gen_model:"Chat Model",embed_model:"Embedding Model",model_descriptions:{"gpt-3.5-turbo":"Latest GPT-3.5 Turbo model (16385 Token context window)","gpt-4":"Latest GPT-4 model (8192 Token context window)","gpt-4-32k":"GPT-4 model (32768 Token context window)","gpt-4-turbo":"Latest GPT-4 Turbo model (128000 Token context window)","gpt-4o":"Latest GPT-4 Omni model (128000 Token context window)","text-embedding-3-large":"Latest, most capable embedding model for both english and non-english tasks","text-embedding-3-small":"Increased performance over 2nd generation ada embedding model","text-embedding-ada-002":"Most capable 2rd generation embedding model."}},ollama:{desc:" ",gen_model:"Chat Model",base_url:"Ollama Base URL",base_url_desc:"Set the URL of your Ollama instance.",embed_model:"Embedding Model",recommended:"Recommended",other:"Other",model_descriptions:{llama2:"Llama 2 is a collection of foundation language models ranging from 7B to 70B parameters.","llama2-uncensored":"Uncensored Llama 2 model by George Sung and Jarrad Hope.",mistral:"The 7B model released by Mistral AI, updated to version 0.2.","mistral-openorca":"Mistral OpenOrca is a 7 billion parameter model, fine-tuned on top of the Mistral 7B model using the OpenOrca dataset.",gemma:"Gemma is a family of lightweight, state-of-the-art open models built by Google DeepMind.",mixtral:"A high-quality Mixture of Experts (MoE) model with open weights by Mistral AI.","dolphin-mixtral":"Dolphin Mixtral (32000 Tokens)",phi:"Phi-2: a 2.7B language model by Microsoft Research that demonstrates outstanding reasoning and language understanding capabilities.","nomic-embed-text":"A high-performing open embedding model with a large token context window.","mxbai-embed-large":"State-of-the-art large embedding model from mixedbread.ai."}}},JT={initialize:"Start your Smart Second Brain",indexing_vault:"Indexing vault",time_left_minutes:"About {minutes}min {seconds}s remaining...",time_left_seconds:"About {seconds}s remaining...",assistant_language:"Assistant language",pause_indexing:"Pause Indexing",resume_indexing:"Resume Indexing",cancel_indexing:"Cancel Indexing",retry_initialization:"Retry Initialization",mode_changed:`Reinitialize Smart Second Brain
with `,reinitialize:"Reinitialize Smart Second Brain",chat_via:"Chat via {model}",chatview:"Comfy Chatview",similarity_threshold:"Similarity",creativity:"Creativity",settings_changed:`Settings changed.
Reinitialize Smart Second Brain.`,open:"Open quick settings",close:"Close quick settings",error:{install_model:"Install {model} model first",other:`An error occured.
Please retry initialization...`}},OT={creativity:"Adjusts the level of originality in the model's outputs to suit your preference.",similarity:"How similar the retrieved documents should be to the user query."},PT={general:NT,ribbon:LT,cmd:TT,modal:kT,init_third_party_modal:UT,notice:_T,chat:IT,onboarding:DT,incognito_toggle:MT,settings:xT,quick_settings:JT,tooltip:OT},zT={delete:"Eliminar",install:"Instalar"},jT={chat:"Abrir Chat S2B"},qT={chat:"Abrir Chat",pull_model:"Obtener Modelo Ollama",remove_model:"Eliminar Modelo Ollama"},$T={dont_show:"No mostrar esto de nuevo",cancel:"Cancelar",confirm:"Confirmar",pull_model_name:"Obtener Modelo Ollama",pull_model_desc:"Instalar un modelo desde el registro de Ollama",remove:{name:"Eliminar Modelo Ollama",desc:"Eliminar un modelo instalado de tu sistema",success:"Modelo eliminado con éxito",error:"Error al eliminar el modelo. El modelo podría no estar instalado"}},ek={title:"Ejecutar mediante Servicios de Terceros",description:"¿Estás seguro de que quieres ejecutar mediante servicios de terceros? Tus datos personales serán compartidos con servicios de terceros como OpenAI."},tk={still_running:"Smart Second Brain sigue en ejecución. Por favor, espera.",still_indexing:"Smart Second Brain sigue indexando. Por favor, espera.",ollama_not_running:"Por favor, asegúrate de que Ollama está en ejecución antes de inicializar Smart Second Brain.",ollama_gen_model:"Modelo de Ollama no instalado. Por favor, instala el modelo antes de inicializar Smart Second Brain.",ollama_embed_model:"Modelo de Ollama no instalado. Por favor, instala el modelo antes de inicializar Smart Second Brain.",openai_key:"Por favor, asegúrate de que tu clave API de OpenAI es válida antes de inicializar Smart Second Brain.",failed:"Fallo al inicializar Smart Second Brain (Error: {error}). Por favor, reintenta.",failed_indexing:"Fallo al indexar notas en tu Smart Second Brain. Por favor, reintenta.",done:"Smart Second Brain inicializado.",error:"Ocurrió un error. Por favor, espera a que se resuelva el error.",not_initialized:"Smart Second Brain no inicializado. Por favor, inicializa primero.",plugin_data_cleared:"Datos del complemento eliminados.",api_key_invalid:"¡La clave API no es válida!",error_pulling_model:"Fallo al obtener el modelo de Ollama (Error: {error}). Por favor, reintenta.",copied_to_clipboard:`Copiado al portapapeles:
{text}`,no_notes_retrieved:"No se recuperaron notas. Quizás reduzca el umbral de similitud.",run_failed:"Fallo al ejecutar Smart Second Brain (Error: {error}). Por favor, reintenta.",models_deleted:"El modelo {model} ha sido eliminado",no_models:"El modelo {model} no fue encontrado",model_pull_canceled:"Cancelación de la obtención del modelo"},rk={edit:"Editar consulta y regenerar respuesta",cancel_edit:"Cancelar edición",copy:"Copiar texto",regenerate:"Elimina todos los mensajes siguientes y regenera la respuesta a la consulta actual",change_assistant_prompt:"Cambiar el mensaje inicial del asistente",reset_assistant_prompt:"Restablecer el mensaje inicial del asistente",retrieving:"Recuperando",reducing:"Reduciendo {num} notas",stopped:"¡Detenido!",user:"Tú",assistant:"Asistente",save:"Guardar el chat en una nota",delete:"Eliminar el historial de chat",toggle_papa:"Chatear con tus notas",toggle_llm:"Chatear con LLM simple",stop:"Detener tu Smart Second Brain",send:"Ejecutar tu Smart Second Brain",retry_error:"Ocurrió un error. Reintentar inicialización",reinitialize:"Reiniciar, ajustes cambiados",input_placeholder:"Chatea con tu Smart Second Brain..."},ak={welcome_msg:"¡Bienvenido a tu Smart Second Brain! Tu asistente personal de inteligencia artificial que te ayuda a encontrar y procesar información en tus notas.",setup:"Configuración",test:"Prueba",privacy_mode_note:"Tu asistente funcionará en modo privacidad. Eso significa que no está conectado a internet y funciona completamente de manera local utilizando Ollama.",openai_mode_note:"Tu asistente utilizará servicios de terceros para funcionar. Eso significa que tendrás que compartir toda tu información personal con estos servicios y tu Smart Second Brain necesita estar conectado a internet para aprovechar los modelos de lenguaje de gran escala de OpenAI, como ChatGPT.",init:"Inicia tu Smart Second Brain",init_label:"Haz clic para comenzar",ollama:{deamon:{install:"Instala Ollama en la terminal:",set_baseurl:"Establece la URL base de Ollama",start:"Inicia Ollama ejecutando este comando en la terminal"},app:{download:"Descargar la aplicación",download_link:"aquí",extract:"Extrae el .zip e inicia Ollama",run:"Ejecuta el setup.exe",test_label:"Prueba si Ollama está en funcionamiento",set_origins:"En la terminal, establece los orígenes de Ollama para habilitar respuestas en streaming:",restart:"Reinicia el servicio de Ollama",restart_label:"Haz clic en el icono de la barra de menús de Ollama y luego cierra",quit:"Cierra el servicio de Ollama",quit_label:"Haz clic en el icono de la barra de menús de Ollama y luego cierra",start_origins:"Inicia Ollama ejecutando este comando en el powershell"},test_origins:"Prueba si los orígenes están configurados correctamente",install_model:"Instala un Modelo de Embedding de Ollama.",recommended:"Recomendado:",set_model:"Configura tu Modelo de Embedding :"},openai:{create_account:"Crea una cuenta de OpenAI",create_account_link:"Cuenta",create_api_key:"Crea una",create_api_key_link:"Clave API",api_key_warning:`> [!Advertencia] Activa la Clave API
> Para que la Clave API funcione, es posible que tengas que actualizar a una cuenta de pago de OpenAI. Esto implica depositar al menos $5 en tu cuenta de OpenAI. Esto podría cambiar en el futuro.`,paste_api_key:"Pega tu clave aquí:",test_api_key:"Prueba tu Clave API",api_key_valid:"¡La Clave API es válida!"}},nk={enable:"Ejecutar en tu máquina",disable:"Ejecutar mediante Servicios de Terceros"},ik={excludeff:"Excluir archivos y carpetas",excludeff_desc:"Estos archivos y carpetas no se incrustarán y no se utilizarán para generar respuestas.",excludeff_add:"Agregar",excludeff_delete:"Eliminar de la lista de excluidos",advanced:"Configuración Avanzada",clear:"Limpiar Datos del Complemento",clear_desc:"Esto eliminará todos los datos del complemento y los datos del almacén de vectores. Todos los archivos de chat dentro de tu bóveda no se verán afectados.",clear_modal:{title:"Limpiar Datos del Complemento",description:"¿Estás seguro de que quieres eliminar los datos del complemento? Ten en cuenta que solo se eliminarán los datos del complemento y los datos del almacén de vectores. Todos los archivos de chat dentro de tu bóveda no se verán afectados."},clear_label:"Limpiar",relaunch:"Reiniciar",autostart:"Inicio Automático",autostart_desc:"Iniciar automáticamente el Smart Second Brain cuando Obsidian se inicia.",num_docs_retrieve:"Documentos a recuperar",num_docs_retrieve_desc:"La cantidad máxima de documentos a recuperar de tu bóveda. Ten en cuenta que los documentos no son equivalentes a las notas.",debugging:"Depuración",langsmith_key:"Clave API de Langsmith",langsmith_key_desc:"Proporciona una Clave API de Langsmith si deseas rastrear y evaluar los componentes internos de tu Smart Second Brain.",verbose:"Registro de la Consola del Desarrollador",verbose_desc:"Habilitar el registro detallado en la Consola del Desarrollador.",openai:{desc:" ",api_key:"Clave API",api_key_desc:"Proporciona tu Clave API de OpenAI para usar los modelos de lenguaje de gran escala de OpenAI.",gen_model:"Modelo de Chat",embed_model:"Modelo de Embedding ",model_descriptions:{"gpt-3.5-turbo":"Modelo GPT-3.5 Turbo más reciente (ventana de contexto de 16385 tokens)","gpt-4":"Modelo GPT-4 más reciente (ventana de contexto de 8192 tokens)","gpt-4-32k":"Modelo GPT-4 (ventana de contexto de 32768 tokens)","gpt-4-turbo":"Modelo GPT-4 Turbo más reciente (ventana de contexto de 128000 tokens)","gpt-4o":"Último modelo GPT-4 Omni (ventana de contexto de 128000 tokens)","text-embedding-3-large":"Modelo de Embedding más reciente y capaz para tareas tanto en inglés como en otros idiomas","text-embedding-3-small":"Rendimiento mejorado sobre el modelo de Embedding ada de 2da generación","text-embedding-ada-002":"Modelo de Embedding de 2da generación más capaz."}},ollama:{desc:" ",gen_model:"Modelo de Chat",base_url:"URL Base de Ollama",base_url_desc:"Establece la URL de tu instancia de Ollama.",embed_model:"Modelo de Embedding",recommended:"Recomendado",other:"Otro",model_descriptions:{llama2:"Llama 2 es una colección de modelos de lenguaje base que varían de 7B a 70B de parámetros.","llama2-uncensored":"Modelo Llama 2 sin censura por George Sung y Jarrad Hope.",mistral:"El modelo de 7B liberado por Mistral AI, actualizado a la versión 0.2.","mistral-openorca":"Mistral OpenOrca es un modelo de 7 mil millones de parámetros, ajustado sobre el modelo Mistral 7B utilizando el conjunto de datos OpenOrca.",gemma:"Gemma es una familia de modelos abiertos ligeros y de última generación construidos por Google DeepMind.",mixtral:"Un modelo de Mezcla de Expertos (MoE) de alta calidad con pesos abiertos por Mistral AI.","dolphin-mixtral":"Dolphin Mixtral (32000 Tokens)",phi:"Phi-2: un modelo de lenguaje de 2.7B de Microsoft Research que demuestra capacidades sobresalientes de razonamiento y comprensión del lenguaje.","nomic-embed-text":"Un modelo de Embedding abierto de alto rendimiento con una amplia ventana de contexto de tokens.","mxbai-embed-large":"Modelo grande de Embedding de última generación de mixedbread.ai."}}},lk={initialize:"Inicia tu Smart Second Brain",indexing_vault:"Indexando bóveda",time_left_minutes:"Quedan aproximadamente {minutes}min {seconds}s...",time_left_seconds:"Quedan aproximadamente {seconds}s...",assistant_language:"Idioma del asistente",pause_indexing:"Pausar indexación",resume_indexing:"Reanudar indexación",cancel_indexing:"Cancelar indexación",retry_initialization:"Reintentar inicialización",mode_changed:`Reiniciar Smart Second Brain
con `,reinitialize:"Reiniciar Smart Second Brain",chat_via:"Chatear mediante {model}",chatview:"Vista de chat cómoda",similarity_threshold:"Similitud",creativity:"Creatividad",settings_changed:`Configuración cambiada.
Reiniciar Smart Second Brain.`,open:"Abrir configuración rápida",close:"Cerrar configuración rápida",error:{install_model:"Primero instala el modelo {model}",other:`Ocurrió un error.
Por favor, reintenta la inicialización...`}},sk={creativity:"Ajusta el nivel de originalidad en las respuestas del modelo según tu preferencia.",similarity:"Qué tan similares deben ser los documentos recuperados a la consulta del usuario."},ok={general:zT,ribbon:jT,cmd:qT,modal:$T,init_third_party_modal:ek,notice:tk,chat:rk,onboarding:ak,incognito_toggle:nk,settings:ik,quick_settings:lk,tooltip:sk},dk={delete:"Sil",install:"Kur"},uk={chat:"S2B Sohbetini Aç"},pk={chat:"Sohbeti Aç",pull_model:"Ollama Modelini Çek",remove_model:"Ollama Modelini Kaldır"},ck={dont_show:"Bunu bir daha gösterme",cancel:"İptal",confirm:"Onayla",pull_model_name:"Ollama Modelini Çek",pull_model_desc:"Ollama kayıt defterinden bir model kur",remove:{name:"Ollama Modelini Kaldır",desc:"Kurulu bir modeli sisteminizden kaldırın",success:"Model başarıyla kaldırıldı",error:"Model kaldırılamadı. Model kurulu olmayabilir"}},mk={title:"Üçüncü Parti Hizmetler Üzerinden Çalıştır",description:"Üçüncü parti hizmetler üzerinden çalıştırmak istediğinizden emin misiniz? Kişisel verileriniz OpenAI gibi üçüncü parti hizmetlerle paylaşılacaktır."},gk={still_running:"Smart Second Brain hala çalışıyor. Lütfen bekleyin.",still_indexing:"Smart Second Brain hala dizinliyor. Lütfen bekleyin.",ollama_not_running:"Smart Second Brain'i başlatmadan önce Ollama'nın çalıştığından emin olun.",ollama_gen_model:"Ollama modeli kurulu değil. Smart Second Brain'i başlatmadan önce lütfen modeli kurun.",ollama_embed_model:"Ollama modeli kurulu değil. Smart Second Brain'i başlatmadan önce lütfen modeli kurun.",openai_key:"Smart Second Brain'i başlatmadan önce OpenAI API Anahtarınızın geçerli olduğundan emin olun.",failed:"Smart Second Brain başlatılamadı (Hata: {error}). Lütfen tekrar deneyin.",failed_indexing:"Notlarınız smart second brain'e dizinlenemedi. Lütfen tekrar deneyin.",done:"Smart Second Brain başlatıldı.",error:"Bir hata oluştu. Lütfen hatanın düzelmesini bekleyin.",not_initialized:"Smart Second Brain başlatılmadı. Lütfen önce başlatın.",plugin_data_cleared:"Eklenti verileri temizlendi.",api_key_invalid:"API Anahtarı geçersiz!",error_pulling_model:"Ollama'dan model çekilemedi (Hata: {error}). Lütfen tekrar deneyin.",copied_to_clipboard:`Panoya kopyalandı:
{text}`,no_notes_retrieved:"Hiçbir not alınamadı. Belki benzerlik eşiğini düşürün.",run_failed:"Smart Second Brain çalıştırılamadı (Hata: {error}). Lütfen tekrar deneyin.",models_deleted:"{model} Modeli silindi",no_models:"{model} Modeli bulunamadı",model_pull_canceled:"Model çekme iptal edildi"},Ak={edit:"Sorguyu düzenle ve cevabı yeniden oluştur",cancel_edit:"Düzenlemeyi iptal et",copy:"Metni Kopyala",regenerate:"Tüm sonraki mesajları siler ve mevcut sorguya cevabı yeniden oluşturur",change_assistant_prompt:"İlk asistan mesajını değiştir",reset_assistant_prompt:"İlk asistan mesajını sıfırla",retrieving:"Alınıyor",reducing:"{num} Not Azaltılıyor",stopped:"Durduruldu!",user:"Siz",assistant:"Asistan",save:"Sohbeti Not olarak kaydet",delete:"Sohbet Geçmişini Sil",toggle_papa:"Notlarınızla Sohbet Ediliyor",toggle_llm:"Sade LLM ile Sohbet Ediliyor",stop:"Smart Second Brain'inizi Durdurun",send:"Smart Second Brain'inizi Çalıştırın",retry_error:"Bir hata oluştu. Başlatmayı tekrar deneyin",reinitialize:"Ayarlar değişti, Yeniden Başlat",input_placeholder:"Smart Second Brain'inizle sohbet edin..."},hk={welcome_msg:"Smart Second Brain'inize hoş geldiniz! Notlarınızdaki bilgileri bulmaya ve işlemeye yardımcı olan kişisel AI asistanınız.",setup:"Kurulum",test:"Test",privacy_mode_note:"Asistanınız gizlilik modunda çalışacak. Bu, internete bağlı olmadığı ve Ollama'yı kullanarak tamamen yerel olarak çalıştığı anlamına gelir.",openai_mode_note:"Asistanınız çalışmak için üçüncü parti hizmetleri kullanacak. Bu, tüm kişisel bilgilerinizi bu hizmetlerle paylaşmanız gerektiği ve Smart Second Brain'inizin ChatGPT gibi OpenAI'ın büyük dil modellerini kullanabilmek için internete bağlı olması gerektiği anlamına gelir.",init:"Smart Second Brain'inizi başlatın",init_label:"Başlatmak için tıklayın",ollama:{deamon:{install:"Ollama'yı terminal üzerinden kurun:",set_baseurl:"Ollama Temel URL'sini Ayarlayın",start:"Bu komutu terminal üzerinden çalıştırarak Ollama'yı başlatın"},app:{download:"Uygulamayı İndirin",download_link:"buradan",extract:".zip'i çıkarın ve Ollama'yı başlatın",run:"setup.exe'yi çalıştırın",test_label:"Ollama'nın çalıştığını test edin",set_origins:"Streaming yanıtları etkinleştirmek için terminal üzerinden Ollama kökenlerini ayarlayın:",restart:"Ollama servisini yeniden başlatın",restart_label:"Ollama menü çubuğu simgesine tıklayın ve sonra Çık'a basın",quit:"Ollama servisinden çıkın",quit_label:"Ollama menü çubuğu simgesine tıklayın ve sonra Çık'a basın",start_origins:"Bu komutu powershell üzerinden çalıştırarak Ollama'yı başlatın"},test_origins:"Kökenlerin doğru şekilde ayarlandığını test edin",install_model:"Bir Ollama Embedding Modeli kurun.",recommended:"Önerilen: ",set_model:"Embedding Modelinizi ayarlayın:"},openai:{create_account:"Bir OpenAI ",create_account_link:"Hesabı Oluşturun",create_api_key:"Bir ",create_api_key_link:"API Anahtarı Oluşturun",api_key_warning:`> [!Warning] API Anahtarını Etkinleştir
> API Anahtarının çalışması için OpenAI ücretli hesabına yükseltmeniz gerekebilir. Bu, en az 5$ OpenAI hesabınıza yatırmanız gerektiği anlamına gelir. Bu gelecekte değişebilir.`,paste_api_key:"Anahtarınızı buraya yapıştırın:",test_api_key:"API Anahtarınızı test edin",api_key_valid:"API Anahtarı geçerli!"}},Bk={enable:"Kendi makinenizde Çalıştır",disable:"Üçüncü Parti Hizmetler Üzerinden Çalıştır"},Ck={excludeff:"Dosya ve klasörleri hariç tut",excludeff_desc:"Bu dosya ve klasörler gömülmeyecek ve cevaplar üretilirken kullanılmayacaktır.",excludeff_add:"Ekle",excludeff_delete:"Hariç tutma listesinden kaldır",advanced:"Gelişmiş Ayarlar",clear:"Eklenti Verilerini Temizle",clear_desc:"Bu, tüm eklenti verilerini ve vektör depolama verilerini silecektir. Arşiviniz içindeki tüm sohbet dosyaları etkilenmeyecektir.",clear_modal:{title:"Eklenti Verilerini Temizle",description:"Eklenti verilerini silmek istediğinizden emin misiniz? Sadece eklenti verileri ve vektör depolama verileri kaldırılacaktır. Arşiviniz içindeki tüm sohbet dosyaları etkilenmeyecektir."},clear_label:"Temizle",relaunch:"Yeniden Başlat",autostart:"Otomatik Başlat",autostart_desc:"Obsidian başladığında Smart Second Brain'i otomatik olarak başlatın.",num_docs_retrieve:"Alınacak Doküman Sayısı",num_docs_retrieve_desc:"Arşivinizden alınacak maksimum doküman sayısı. Dokümanlar notlara eşdeğer değildir.",debugging:"Hata Ayıklama",langsmith_key:"Langsmith API Anahtarı",langsmith_key_desc:"Smart Second Brain'inizin iç işleyişini izlemek ve değerlendirmek istiyorsanız bir Langsmith API Anahtarı sağlayın.",verbose:"Geliştirici Konsolu günlüğü",verbose_desc:"Geliştirici Konsolunda ayrıntılı günlüğü etkinleştirin.",openai:{desc:" ",api_key:"API Anahtarı",api_key_desc:"OpenAI'ın büyük dil modellerini kullanmak için OpenAI API Anahtarınızı sağlayın.",gen_model:"Sohbet Modeli",embed_model:"Embedding Modeli",model_descriptions:{"gpt-3.5-turbo":"En son GPT-3.5 Turbo modeli (16385 Token bağlam penceresi)","gpt-4":"En son GPT-4 modeli (8192 Token bağlam penceresi)","gpt-4-32k":"GPT-4 modeli (32768 Token bağlam penceresi)","gpt-4-turbo":"En son GPT-4 Turbo modeli (128000 Token bağlam penceresi)","gpt-4o":"En son GPT-4 Omni modeli (128000 Token bağlam penceresi)","text-embedding-3-large":"Hem İngilizce hem de İngilizce olmayan görevler için en son ve en yetenekli embedding modeli","text-embedding-3-small":"2. nesil 'ada' embedding modeline göre artırılmış performans","text-embedding-ada-002":"En yetenekli 2. nesil embedding modeli."}},ollama:{desc:" ",gen_model:"Sohbet Modeli",base_url:"Ollama Temel URL'si",base_url_desc:"Ollama örneğinizin URL'sini ayarlayın.",embed_model:"Embedding Modeli",recommended:"Önerilen",other:"Diğer",model_descriptions:{llama2:"Llama 2, 7B ila 70B parametreli çeşitli temel dil modellerinden oluşur.","llama2-uncensored":"George Sung ve Jarrad Hope tarafından sansürsüz Llama 2 modeli.",mistral:"Mistral AI tarafından yayınlanan ve 0.2 sürümüne güncellenen 7B model.","mistral-openorca":"OpenOrca veri kümesi kullanılarak Mistral 7B modelinin üzerine ince ayar yapılmış 7 milyar parametreli Mistral OpenOrca modeli.",gemma:"Google DeepMind tarafından oluşturulan, son derece gelişmiş açık kaynaklı model ailesi.",mixtral:"Mistral AI tarafından oluşturulan, yüksek kaliteli, açık ağırlıklı, 'Mixture of Experts' (MoE) modeli.","dolphin-mixtral":"Dolphin Mixtral (32000 Token)",phi:"Microsoft Araştırma tarafından geliştirilen, üstün akıl yürütme ve dil anlama yetenekleri sergileyen 2,7B dil modeli.","nomic-embed-text":"Geniş bir token bağlam penceresi ile yüksek performanslıık embedding modeli.","mxbai-embed-large":"Mixedbread.ai'den son teknoloji büyük embedding modeli."}}},wk={initialize:"Smart Second Brain'inizi başlatın",indexing_vault:"Arşiv dizinleniyor",time_left_minutes:"Yaklaşık {minutes}dk {seconds}sn kaldı...",time_left_seconds:"Yaklaşık {seconds}sn kaldı...",assistant_language:"Asistan dili",pause_indexing:"Dizinlemeyi Duraklat",resume_indexing:"Dizinlemeye Devam Et",cancel_indexing:"Dizinlemeyi İptal Et",retry_initialization:"Başlatmayı Tekrar Dene",mode_changed:`{model} ile
Smart Second Brain'i Yeniden Başlat`,reinitialize:"Smart Second Brain'i Yeniden Başlat",chat_via:"{model} üzerinden sohbet et",chatview:"Rahat Sohbet Görünümü",similarity_threshold:"Benzerlik",creativity:"Yaratıcılık",settings_changed:`Ayarlar değişti.
Smart Second Brain'i Yeniden Başlat.`,open:"Hızlı ayarları aç",close:"Hızlı ayarları kapat",error:{install_model:"Önce {model} modelini kurun",other:`Bir hata oluştu.
Lütfen başlatmayı tekrar deneyin...`}},bk={creativity:"Modelin çıktılarındaki özgünlük seviyesini tercihlerinize göre ayarlar.",similarity:"Alınan dokümanların kullanıcı sorgusuyla ne kadar benzer olması gerektiğini belirler."},Kk={general:dk,ribbon:uk,cmd:pk,modal:ck,init_third_party_modal:mk,notice:gk,chat:Ak,onboarding:hk,incognito_toggle:Bk,settings:Ck,quick_settings:wk,tooltip:bk},fk={delete:"Supprimer",install:"Installer"},Qk={chat:"Ouvrir le chat S2B"},Wk={chat:"Ouvrir le chat",pull_model:"Récupérer le modèle Ollama",remove_model:"Supprimer le modèle Ollama"},vk={dont_show:"Ne plus afficher ceci",cancel:"Annuler",confirm:"Confirmer",pull_model_name:"Récupérer le modèle Ollama",pull_model_desc:"Installer un modèle depuis le registre Ollama",remove:{name:"Supprimer le modèle Ollama",desc:"Supprimer un modèle installé de votre système",success:"Modèle supprimé avec succès",error:"Échec de la suppression du modèle. Le modèle n'est peut-être pas installé"}},Fk={title:"Exécuter via des services tiers",description:"Êtes-vous sûr de vouloir exécuter via des tiers ? Vos données personnelles seront partagées avec des services tiers comme OpenAI."},yk={still_running:"Smart Second Brain est toujours en cours d'exécution. Veuillez patienter.",still_indexing:"Smart Second Brain est toujours en cours d'indexation. Veuillez patienter.",ollama_not_running:"Veuillez vous assurer qu'Ollama est en cours d'exécution avant d'initialiser Smart Second Brain.",ollama_gen_model:"Modèle Ollama non installé. Veuillez installer le modèle avant d'initialiser Smart Second Brain.",ollama_embed_model:"Modèle Ollama non installé. Veuillez installer le modèle avant d'initialiser Smart Second Brain.",openai_key:"Veuillez vous assurer que votre clé API OpenAI est valide avant d'initialiser Smart Second Brain.",failed:"Échec de l'initialisation de Smart Second Brain (Erreur : {error}). Veuillez réessayer.",failed_indexing:"Échec de l'indexation des notes dans votre Smart Second Brain. Veuillez réessayer.",done:"Smart Second Brain initialisé.",error:"Une erreur est survenue. Veuillez attendre que l'erreur soit résolue.",not_initialized:"Smart Second Brain non initialisé. Veuillez initialiser d'abord.",plugin_data_cleared:"Données du plugin effacées.",api_key_invalid:"La clé API n'est pas valide !",error_pulling_model:"Échec de la récupération du modèle depuis Ollama (Erreur : {error}). Veuillez réessayer.",copied_to_clipboard:`Copié dans le presse-papiers :
{text}`,no_notes_retrieved:"Aucune note récupérée. Peut-être baisser le seuil de similarité.",run_failed:"Échec de l'exécution de Smart Second Brain (Erreur : {error}). Veuillez réessayer.",models_deleted:"Le modèle {model} a été supprimé",no_models:"Le modèle {model} n'a pas été trouvé",model_pull_canceled:"Annulation de la récupération du modèle"},Rk={edit:"Modifier la requête et régénérer la réponse",cancel_edit:"Annuler la modification",copy:"Copier le texte",regenerate:"Supprimer tous les messages suivants et régénérer la réponse à la requête actuelle",change_assistant_prompt:"Modifier le message initial de l'assistant",reset_assistant_prompt:"Réinitialiser le message initial de l'assistant",retrieving:"Récupération",reducing:"Réduction de {num} notes",stopped:"Arrêté !",user:"Vous",assistant:"Assistant",save:"Sauvegarder le chat dans une note",delete:"Supprimer l'historique du chat",toggle_papa:"Discuter avec vos notes",toggle_llm:"Discuter avec un LLM simple",stop:"Arrêter votre Smart Second Brain",send:"Exécuter votre Smart Second Brain",retry_error:"Une erreur est survenue. Réessayez l'initialisation",reinitialize:"Réinitialiser, les paramètres ont changé",input_placeholder:"Discutez avec votre Smart Second Brain..."},Ek={welcome_msg:"Bienvenue dans votre Smart Second Brain ! Votre assistant personnel IA qui vous aide à trouver et traiter les informations dans vos notes.",setup:"Configuration",test:"Test",privacy_mode_note:"Votre assistant fonctionnera en mode privé. Cela signifie qu'il n'est pas connecté à Internet et fonctionne entièrement localement en utilisant Ollama.",openai_mode_note:"Votre assistant utilisera des services tiers pour fonctionner. Cela signifie que vous devrez partager toutes vos informations personnelles avec ces services et que votre Smart Second Brain doit être connecté à Internet pour utiliser les grands modèles de langage d'OpenAI comme ChatGPT.",init:"Démarrer votre Smart Second Brain",init_label:"Cliquez pour démarrer",ollama:{deamon:{install:"Installer Ollama dans le terminal :",set_baseurl:"Définir l'URL de base d'Ollama",start:"Démarrer Ollama en exécutant cette commande dans le terminal"},app:{download:"Télécharger l'application",download_link:"ici",extract:"Extraire le fichier .zip et démarrer Ollama",run:"Exécuter le setup.exe",test_label:"Tester si Ollama fonctionne",set_origins:"Dans le terminal, définir les origines d'Ollama pour activer les réponses en streaming :",restart:"Redémarrer le service Ollama",restart_label:"Cliquez sur l'icône de la barre de menus d'Ollama puis quittez",quit:"Quitter le service Ollama",quit_label:"Cliquez sur l'icône de la barre de menus d'Ollama puis quittez",start_origins:"Démarrer Ollama en exécutant cette commande dans le powershell"},test_origins:"Tester si les origines sont correctement définies",install_model:"Installer un modèle d'encodage Ollama.",recommended:"Recommandé : ",set_model:"Définir votre modèle d'encodage :"},openai:{create_account:"Créer un ",create_account_link:"compte OpenAI",create_api_key:"Créer une ",create_api_key_link:"clé API",api_key_warning:`> [!Avertissement] Activer la clé API
> Pour que la clé API fonctionne, vous devrez peut-être passer à un compte payant OpenAI. Cela signifie déposer au moins 5 $ sur votre compte OpenAI. Cela pourrait changer à l'avenir.`,paste_api_key:"Collez votre clé ici :",test_api_key:"Tester votre clé API",api_key_valid:"La clé API est valide !"}},Gk={enable:"Exécuter sur votre machine",disable:"Exécuter via des services tiers"},Sk={excludeff:"Exclure fichiers et dossiers",excludeff_desc:"Ces fichiers et dossiers ne seront pas intégrés et ne seront pas utilisés pour générer des réponses.",excludeff_add:"Ajouter",excludeff_delete:"Supprimer de la liste d'exclusion",advanced:"Paramètres avancés",clear:"Effacer les données du plugin",clear_desc:"Cela supprimera toutes les données du plugin et les données du magasin vectoriel. Tous les fichiers de discussion dans votre coffre ne seront pas affectés.",clear_modal:{title:"Effacer les données du plugin",description:"Êtes-vous sûr de vouloir supprimer les données du plugin ? Notez que seules les données du plugin et les données du magasin vectoriel seront supprimées. Tous les fichiers de discussion dans votre coffre ne seront pas affectés."},clear_label:"Effacer",relaunch:"Relancer",autostart:"Démarrage automatique",autostart_desc:"Démarrer automatiquement le Smart Second Brain lorsque Obsidian démarre.",num_docs_retrieve:"Documents à récupérer",num_docs_retrieve_desc:"Le nombre maximal de documents à récupérer de votre coffre. Notez que les documents ne sont pas équivalents aux notes.",debugging:"Débogage",langsmith_key:"Clé API Langsmith",langsmith_key_desc:"Fournissez une clé API Langsmith si vous souhaitez tracer et évaluer les mécanismes internes de votre Smart Second Brain.",verbose:"Journalisation détaillée de la console développeur",verbose_desc:"Activer la journalisation détaillée dans la console développeur.",openai:{desc:" ",api_key:"Clé API",api_key_desc:"Fournissez votre clé API OpenAI pour utiliser les grands modèles de langage d'OpenAI.",gen_model:"Modèle de discussion",embed_model:"Modèle d'encodage",model_descriptions:{"gpt-3.5-turbo":"Dernier modèle GPT-3.5 Turbo (fenêtre de contexte de 16385 tokens)","gpt-4":"Dernier modèle GPT-4 (fenêtre de contexte de 8192 tokens)","gpt-4-32k":"Modèle GPT-4 (fenêtre de contexte de 32768 tokens)","gpt-4-turbo":"Dernier modèle GPT-4 Turbo (fenêtre de contexte de 128000 tokens)","gpt-4o":"Dernier modèle GPT-4 Omni (fenêtre de contexte de 128000 jetons)","text-embedding-3-large":"Dernier modèle d'encodage le plus capable pour les tâches en anglais et non anglais","text-embedding-3-small":"Performances accrues par rapport au modèle d'encodage ada de 2ème génération","text-embedding-ada-002":"Modèle d'encodage le plus capable de 2ème génération."}},ollama:{desc:" ",gen_model:"Modèle de discussion",base_url:"URL de base d'Ollama",base_url_desc:"Définir l'URL de votre instance Ollama.",embed_model:"Modèle d'encodage",recommended:"Recommandé",other:"Autre",model_descriptions:{llama2:"Llama 2 est une collection de modèles de langage de base allant de 7B à 70B de paramètres.","llama2-uncensored":"Modèle Llama 2 non censuré par George Sung et Jarrad Hope.",mistral:"Le modèle 7B publié par Mistral AI, mis à jour en version 0.2.","mistral-openorca":"Mistral OpenOrca est un modèle de 7 milliards de paramètres, affiné sur le modèle Mistral 7B en utilisant le dataset OpenOrca.",gemma:"Gemma est une famille de modèles ouverts, légers et de pointe développés par Google DeepMind.",mixtral:"Un modèle de haute qualité Mixture of Experts (MoE) avec poids ouverts par Mistral AI.","dolphin-mixtral":"Dolphin Mixtral (32000 Tokens)",phi:"Phi-2 : un modèle de langage de 2,7 milliards de paramètres par Microsoft Research qui démontre des capacités exceptionnelles de raisonnement et de compréhension du langage.","nomic-embed-text":"Un modèle d'encodage ouvert performant avec une large fenêtre de contexte de tokens.","mxbai-embed-large":"Modèle d'encodage large de pointe de mixedbread.ai."}}},Zk={initialize:"Démarrer votre Smart Second Brain",indexing_vault:"Indexation du coffre",time_left_minutes:"Environ {minutes}min {seconds}s restants...",time_left_seconds:"Environ {seconds}s restants...",assistant_language:"Langue de l'assistant",pause_indexing:"Pause de l'indexation",resume_indexing:"Reprendre l'indexation",cancel_indexing:"Annuler l'indexation",retry_initialization:"Réessayer l'initialisation",mode_changed:`Réinitialiser Smart Second Brain
avec `,reinitialize:"Réinitialiser Smart Second Brain",chat_via:"Discuter via {model}",chatview:"Vue de chat confortable",similarity_threshold:"Similarité",creativity:"Créativité",settings_changed:`Paramètres modifiés.
Réinitialiser Smart Second Brain.`,open:"Ouvrir les paramètres rapides",close:"Fermer les paramètres rapides",error:{install_model:"Installer d'abord le modèle {model}",other:`Une erreur est survenue.
Veuillez réessayer l'initialisation...`}},Xk={creativity:"Ajuste le niveau d'originalité dans les sorties du modèle selon votre préférence.",similarity:"À quel point les documents récupérés doivent être similaires à la requête de l'utilisateur."},Hk={general:fk,ribbon:Qk,cmd:Wk,modal:vk,init_third_party_modal:Fk,notice:yk,chat:Rk,onboarding:Ek,incognito_toggle:Gk,settings:Sk,quick_settings:Zk,tooltip:Xk},Vk={delete:"删除",install:"安装"},Yk={chat:"打开 S2B 聊天"},Nk={chat:"打开聊天窗口",pull_model:"拉取 Ollama 模型",remove_model:"移除 Ollama 模型"},Lk={dont_show:"不再显示此信息",cancel:"取消",confirm:"确认",pull_model_name:"拉取 Ollama 模型",pull_model_desc:"安装在 Ollama 注册的模型",remove:{name:"移除 Ollama 模型",desc:"从系统中移除已安装的模型",success:"模型已成功移除",error:"移除模型失败,模型可能未安装"}},Tk={title:"通过第三方服务运行",description:"您确定要使用第三方服务吗?您的个人数据将与 OpenAI 等第三方服务共享。"},kk={still_running:"Smart Second Brain 仍在运行。请稍候。",still_indexing:"Smart Second Brain 仍在执行索引。请稍候。",ollama_not_running:"在初始化 Smart Second Brain 之前,请确保 Ollama 正在运行。",ollama_gen_model:"Ollama 对话生成模型未安装。请在初始化 Smart Second Brain 之前安装模型。",ollama_embed_model:"Ollama 嵌入模型未安装。请在初始化 Smart Second Brain 之前安装模型。",openai_key:"在初始化 Smart Second Brain 之前,请确保您的 OpenAI API 密钥有效。",failed:"初始化 Smart Second Brain 失败 (Error: {error}) 。请重试。",failed_indexing:"将笔记索引到 Smart Second Brain 失败。请重试。",done:"Smart Second Brain 初始化成功。",error:"发生错误。请等待错误解决。",not_initialized:"Smart Second Brain 未初始化。请先初始化。",plugin_data_cleared:"插件数据已清除。",api_key_invalid:"API Key 无效!",error_pulling_model:"从 Ollama 拉取模型失败 (Error: {error}) 。请重试。",copied_to_clipboard:`已复制到剪贴板:
{text}`,no_notes_retrieved:"未检索到笔记。建议降低相似度阈值。",run_failed:"运行 Smart Second Brain 失败 (Error: {error}) 。请重试。",models_deleted:"模型 {model} 已被删除",no_models:"未找到模型 {model}",model_pull_canceled:"模型拉取已取消"},Uk={edit:"编辑问题并重生成回答",cancel_edit:"取消编辑",copy:"复制文本",regenerate:"删除所有后续聊天记录并重生成当前问题的回答",change_assistant_prompt:"更改初始助手消息 (initial assistant message)",reset_assistant_prompt:"重置初始助手消息 (initial assistant message)",retrieving:"正在检索",reducing:"正在化简 {num} 条笔记",stopped:"已停止!",user:"您",assistant:"助手",save:"将聊天记录保存到笔记",delete:"删除聊天记录",toggle_papa:"与您的笔记聊天",toggle_llm:"仅与 LLM 聊天",stop:"停止 Smart Second Brain",send:"运行 Smart Second Brain",retry_error:"发生了一个错误。重试初始化",reinitialize:"重新初始化,设置已更改",input_placeholder:"与 Smart Second Brain 聊天..."},_k={welcome_msg:"欢迎使用 Smart Second Brain您的个人 AI 助手,帮助您在笔记中查找和处理信息。",setup:"设置",test:"测试",privacy_mode_note:"您的助手将在隐私模式下运行。它没有联网,以 Ollama 在本地运行。",openai_mode_note:"您的助手将使用第三方服务来运行。您将与服务商共享个人信息,您的 Smart Second Brain 需要联网使用 OpenAI 的 LLMs如 ChatGPT。",init:"开启 Smart Second Brain",init_label:"点击以开启",ollama:{deamon:{install:"在终端中安装 Ollama",set_baseurl:"设置 Ollama Base URL",start:"在终端运行此命令以启动 Ollama"},app:{download:"下载应用程序",download_link:"从这里",extract:"解压 .zip 并启动 Ollama",run:"运行 setup.exe",test_label:"测试 Ollama 是否在运行",set_origins:"在终端中设置 Ollama origins 以启用流式响应:",restart:"重启 Ollama 服务",restart_label:"点击 Ollama 菜单栏图标,然后退出",quit:"退出 Ollama 服务",quit_label:"点击 Ollama 菜单栏图标,然后退出",start_origins:"在 PowerShell 中运行此命令以启动 Ollama"},test_origins:"测试 origins 是否设置正确",install_model:"安装 Ollama 嵌入模型。",recommended:"推荐:",set_model:"设置您的嵌入模型:"},openai:{create_account:"创建一个 OpenAI ",create_account_link:"账户",create_api_key:"创建一个 ",create_api_key_link:"API Key",api_key_warning:`> [!Warning] 激活 API-Key
> 为使 API-Key 有效,您可能需要升级到 OpenAI 付费账户。这需要在您的 OpenAI 账户上存入至少 $5。该提示未来可能改变。`,paste_api_key:"在此粘贴 API Key",test_api_key:"测试 API Key",api_key_valid:" API Key 有效!"}},Ik={enable:"本地运行",disable:"通过第三方服务运行"},Dk={excludeff:"排除文件和文件夹",excludeff_desc:"这些文件和文件夹将不做向量嵌入和索引,也不会用于生成聊天记录。",excludeff_add:"添加",excludeff_delete:"从排除列表中删除",advanced:"高级设置",clear:"清除插件数据",clear_desc:"将删除所有插件数据和向量存储数据。仓库中的所有聊天记录文件不受影响。",clear_modal:{title:"清除插件数据",description:"您确定要删除插件数据吗?请注意,只有插件数据和向量存储数据将被移除。仓库中的所有聊天记录文件将不受影响。"},clear_label:"清除",relaunch:"重启",autostart:"自启动",autostart_desc:"Obsidian 开启后,自动运行 Smart Second Brain。",num_docs_retrieve:"检索 (retrieve) 文档数",num_docs_retrieve_desc:"仓库中每次允许检索的最大文档数。注意,文档 (本插件索引的笔记片段) 不等同于笔记。",debugging:"调试",langsmith_key:"LangSmith API Key",langsmith_key_desc:"如需跟踪和评估您的 Smart Second Brain 的内部情况,请提供 LangSmith API Key。",verbose:"开发者控制台日志",verbose_desc:"在 Developer Console 中启用详细日志记录。",openai:{desc:" ",api_key:"API Key",api_key_desc:"提供您的 OpenAI API Key 以使用 OpenAI 的大型语言模型。",gen_model:"对话生成模型",embed_model:"嵌入模型",model_descriptions:{"gpt-3.5-turbo":"最新的 GPT-3.5 Turbo 模型16385 Token 上下文)","gpt-4":"最新的 GPT-4 模型8192 Token 上下文)","gpt-4-32k":"GPT-4 模型32768 Token 上下文)","gpt-4-turbo":"最新的 GPT-4 Turbo 模型128000 Token 上下文)","gpt-4o":"最新的 GPT-4 Omni 模型 (128000 Token 上下文)","text-embedding-3-large":"最新、最强的嵌入模型,适用于多语言任务","text-embedding-3-small":"性能超过二代 ada 嵌入模型","text-embedding-ada-002":"最好的二代嵌入模型。"}},ollama:{desc:" ",gen_model:"对话生成模型",base_url:"Ollama 基础 URL",base_url_desc:"设置您的 Ollama 实例的 URL。",embed_model:"嵌入模型",recommended:"推荐",other:"其他",model_descriptions:{llama2:"Llama 2 是一系列基础语言模型,参数范围从 7B 到 70B。","llama2-uncensored":"由 George Sung 和 Jarrad Hope 提供的未审查的 Llama 2 模型。",mistral:"由 Mistral AI 发布的 7B 模型,已更新至版本 0.2。","mistral-openorca":"Mistral OpenOrca 是 70 亿参数的模型,基于 Mistral 7B 模型并使用 OpenOrca 数据集进行了微调。",gemma:"Gemma 是由 Google DeepMind 构建的一系列轻量级、最先进的开放模型。",mixtral:"由 Mistral AI 提供的高质量 MoE 模型,具有开放权重。","dolphin-mixtral":"Dolphin Mixtral32000 个令牌)",phi:"Phi-2微软研究院的 2.7B 语言模型,展示了出色的推理和语言理解能力。","nomic-embed-text":"具有较大上下文的高性能开放嵌入模型。","mxbai-embed-large":"来自 mixedbread.ai 的最先进大型嵌入模型。"}}},Mk={initialize:"启动 Smart Second Brain",indexing_vault:"索引仓库",time_left_minutes:"约剩余 {minutes} 分 {seconds} 秒...",time_left_seconds:"约剩余 {seconds} 秒...",assistant_language:"助手语言",pause_indexing:"暂停索引",resume_indexing:"恢复索引",cancel_indexing:"取消索引",retry_initialization:"重试初始化",mode_changed:`重新初始化 Smart Second Brain
使用以下模型 `,reinitialize:"重新初始化 Smart Second Brain",chat_via:"通过 {model} 聊天",chatview:"Comfy 视图",similarity_threshold:"相似度",creativity:"创意",settings_changed:`设置已更改。
重新初始化 Smart Second Brain。`,open:"打开快速设置",close:"关闭快速设置",error:{install_model:"请先安装 {model} 模型",other:`发生错误。
请重试初始化...`}},xk={creativity:"调整模型输出的创意以适应您的偏好。",similarity:"检索文档与用户提问的相似度。"},Jk={general:Vk,ribbon:Yk,cmd:Nk,modal:Lk,init_third_party_modal:Tk,notice:kk,chat:Uk,onboarding:_k,incognito_toggle:Ik,settings:Dk,quick_settings:Mk,tooltip:xk},Ok={delete:"삭제",install:"설치"},Pk={chat:"S2B 채팅 열기"},zk={chat:"채팅 열기",pull_model:"Ollama 모델 가져오기",remove_model:"Ollama 모델 제거하기"},jk={dont_show:"다시 보지 않기",cancel:"취소",confirm:"확인",pull_model_name:"Ollama 모델 가져오기",pull_model_desc:"Ollama 레지스트리에서 모델 설치하기",remove:{name:"Ollama 모델 제거하기",desc:"시스템에서 설치된 모델 제거하기",success:"모델이 성공적으로 제거됨",error:"모델 제거 실패. 모델이 설치되지 않았을 수 있음"}},qk={title:"타사 서비스를 통해 실행",description:"타사를 통해 실행하시겠습니까? 귀하의 개인 데이터가 OpenAI와 같은 타사 서비스와 공유됩니다."},$k={still_running:"Smart Second Brain이 아직 실행 중입니다. 기다려 주세요.",still_indexing:"Smart Second Brain이 아직 색인 중입니다. 기다려 주세요.",ollama_not_running:"Smart Second Brain을 초기화하기 전에 Ollama가 실행 중인지 확인해 주세요.",ollama_gen_model:"Ollama 모델이 설치되지 않았습니다. Smart Second Brain을 초기화하기 전에 모델을 설치해 주세요.",ollama_embed_model:"Ollama 모델이 설치되지 않았습니다. Smart Second Brain을 초기화하기 전에 모델을 설치해 주세요.",openai_key:"Smart Second Brain을 초기화하기 전에 OpenAI API 키가 유효한지 확인해 주세요.",failed:"Smart Second Brain 초기화에 실패했습니다 (오류: {error}). 다시 시도해 주세요.",failed_indexing:"Smart Second Brain에 노트를 색인하는 데 실패했습니다. 다시 시도해 주세요.",done:"Smart Second Brain이 초기화되었습니다.",error:"오류가 발생했습니다. 오류가 해결될 때까지 기다려 주세요.",not_initialized:"Smart Second Brain이 초기화되지 않았습니다. 먼저 초기화해 주세요.",plugin_data_cleared:"플러그인 데이터가 지워졌습니다.",api_key_invalid:"API 키가 유효하지 않습니다!",error_pulling_model:"Ollama에서 모델을 가져오는 데 실패했습니다 (오류: {error}). 다시 시도해 주세요.",copied_to_clipboard:`클립보드에 복사됨:
{text}`,no_notes_retrieved:"검색된 노트가 없습니다. 유사도 임계값을 낮춰보세요.",run_failed:"Smart Second Brain 실행에 실패했습니다 (오류: {error}). 다시 시도해 주세요.",models_deleted:"모델 {model}이 삭제되었습니다",no_models:"모델 {model}을 찾을 수 없습니다",model_pull_canceled:"모델 가져오기가 취소되었습니다"},eU={edit:"질문을 수정하고 답변을 다시 생성하세요",cancel_edit:"편집 취소",copy:"텍스트 복사",regenerate:"다음 모든 메시지를 삭제하고 현재 질문에 대한 답변을 다시 생성합니다",change_assistant_prompt:"초기 어시스턴스 메시지 변경",reset_assistant_prompt:"초기 어시스턴스 메시지 재설정",retrieving:"검색 중",reducing:"{num}개의 노트 축소 중",stopped:"중단됨!",user:"당신",assistant:"어시스턴스",save:"채팅을 노트에 저장",delete:"채팅 기록 삭제",toggle_papa:"노트와 대화하기",toggle_llm:"기본 LLM과 대화하기",stop:"Smart Second Brain 정지",send:"Smart Second Brain 실행",retry_error:"오류가 발생했습니다. 초기화를 다시 시도하세요",reinitialize:"재초기화, 설정 변경됨",input_placeholder:"Smart Second Brain과 대화하기..."},tU={welcome_msg:"Smart Second Brain에 오신 것을 환영합니다! 노트에서 정보를 찾고 처리하는 데 도움을 주는 개인 AI 어시스턴트입니다.",setup:"설정",test:"테스트",privacy_mode_note:"어시스턴트는 프라이버시 모드에서 실행됩니다. 즉, 인터넷에 연결되어 있지 않고 Ollama를 활용하여 전적으로 로컬에서 실행됩니다.",openai_mode_note:"어시스턴트는 타사 서비스를 사용하여 실행됩니다. 즉, 모든 개인 정보를 이러한 서비스와 공유해야 하며 Smart Second Brain이 ChatGPT와 같은 OpenAI의 대규모 언어 모델을 활용하기 위해 인터넷에 연결되어 있어야 합니다.",init:"Smart Second Brain 시작하기",init_label:"시작하기 클릭",ollama:{deamon:{install:"터미널에서 Ollama 설치:",set_baseurl:"Ollama 기본 URL 설정",start:"이 명령어를 터미널에서 실행하여 Ollama 시작"},app:{download:"앱 다운로드",download_link:"여기",extract:".zip을 추출하고 Ollama 시작",run:"setup.exe 실행",test_label:"Ollama가 실행 중인지 테스트",set_origins:"스트리밍 응답을 활성화하기 위해 터미널에서 Ollama origins 설정:",restart:"Ollama 서비스 재시작 ",restart_label:"Ollama 메뉴 바 아이콘을 클릭한 다음 종료",quit:"Ollama 서비스 종료 ",quit_label:"Ollama 메뉴 바 아이콘을 클릭한 다음 종료",start_origins:"이 명령어를 파워셸에서 실행하여 Ollama 시작"},test_origins:"origins가 올바르게 설정되었는지 테스트",install_model:"Ollama 임베딩 모델 설치.",recommended:"추천: ",set_model:"임베딩 모델 설정:"},openai:{create_account:"OpenAI 계정 생성 ",create_account_link:"계정",create_api_key:"API 키 생성 ",create_api_key_link:"API 키",api_key_warning:`> [!경고] API 키 활성화
> API 키가 작동하려면 OpenAI 유료 계정으로 업그레이드해야 할 수 있습니다. 이는 OpenAI 계정에 최소 $5를 입금해야 함을 의미합니다. 이는 미래에 변경될 수 있습니다.`,paste_api_key:"여기에 키를 붙여넣으세요:",test_api_key:"API 키 테스트",api_key_valid:"API 키가 유효합니다!"}},rU={enable:"내 컴퓨터에서 실행",disable:"타사 서비스를 통해 실행"},aU={excludeff:"파일 및 폴더 제외",excludeff_desc:"이 파일들과 폴더들은 임베딩되지 않으며 답변 생성에 사용되지 않습니다.",excludeff_add:"추가",excludeff_delete:"제외 목록에서 삭제",advanced:"고급 설정",clear:"플러그인 데이터 삭제",clear_desc:"이 작업은 모든 플러그인 데이터와 벡터 저장소 데이터를 삭제합니다. 귀하의 보관함 내 모든 채팅 파일은 영향을 받지 않습니다.",clear_modal:{title:"플러그인 데이터 삭제",description:"플러그인 데이터를 정말 삭제하시겠습니까? 플러그인 데이터와 벡터 저장소 데이터만 제거된다는 점을 참고하세요. 귀하의 보관함 내 모든 채팅 파일은 영향을 받지 않습니다."},clear_label:"삭제",relaunch:"재시작",autostart:"자동 시작",autostart_desc:"Obsidian이 시작될 때 자동으로 Smart Second Brain을 시작합니다.",num_docs_retrieve:"검색할 문서 수",num_docs_retrieve_desc:"보관함에서 검색할 최대 문서 수입니다. 문서가 노트와 동일하지 않다는 점을 참고하세요.",debugging:"디버깅",langsmith_key:"LangSmith API 키",langsmith_key_desc:"Smart Second Brain의 내부를 추적 및 평가하려면 Langsmith API 키를 제공하세요.",verbose:"개발자 콘솔 로깅",verbose_desc:"개발자 콘솔에서 자세한 로깅을 활성화합니다.",openai:{desc:" ",api_key:"API 키",api_key_desc:"OpenAI의 대규모 언어 모델을 사용하기 위해 OpenAI API 키를 제공하세요.",gen_model:"채팅 모델",embed_model:"임베딩 모델",model_descriptions:{"gpt-3.5-turbo":"최신 GPT-3.5 Turbo 모델 (16,385 토큰 컨텍스트 창)","gpt-4":"최신 GPT-4 모델 (8,192 토큰 컨텍스트 창)","gpt-4-32k":"GPT-4 모델 (32,768 토큰 컨텍스트 창)","gpt-4-turbo":"최신 GPT-4 Turbo 모델 (128,000 토큰 컨텍스트 창)","gpt-4o":"최신 GPT-4 Omni 모델 (128000 토큰 컨텍스트 창)","text-embedding-3-large":"영어 및 비영어권 작업 모두에 대해 가장 능력이 뛰어난 최신 임베딩 모델","text-embedding-3-small":"2세대 ada 임베딩 모델보다 성능이 향상됨","text-embedding-ada-002":"가장 능력이 뛰어난 2세대 임베딩 모델."}},ollama:{desc:" ",gen_model:"채팅 모델",base_url:"Ollama 기본 URL",base_url_desc:"Ollama 인스턴스의 URL을 설정하세요.",embed_model:"임베딩 모델",recommended:"추천",other:"기타",model_descriptions:{llama2:"Llama 2는 7B부터 70B 파라미터에 이르는 기초 언어 모델의 집합입니다.","llama2-uncensored":"George Sung과 Jarrad Hope에 의한 무수정 Llama 2 모델입니다.",mistral:"Mistral AI에 의해 발표된 7B 모델로, 버전 0.2로 업데이트되었습니다.","mistral-openorca":"Mistral OpenOrca는 OpenOrca 데이터셋을 사용하여 Mistral 7B 모델 위에 미세 조정된 70억 파라미터 모델입니다.",gemma:"Google DeepMind에 의해 구축된 경량의 최신 오픈 모델 계열인 Gemma입니다.",mixtral:"Mistral AI에 의한 고품질의 전문가 혼합(MoE) 모델로, 오픈 가중치를 가지고 있습니다.","dolphin-mixtral":"Dolphin Mixtral (32000 토큰)",phi:"Microsoft Research에 의한 2.7B 언어 모델인 Phi-2로, 뛰어난 추론 및 언어 이해 능력을 보여줍니다.","nomic-embed-text":"큰 토큰 컨텍스트 창을 가진 고성능 오픈 임베딩 모델입니다.","mxbai-embed-large":"mixedbread.ai에서 나온 최신 대형 임베딩 모델입니다."}}},nU={initialize:"Smart Second Brain 시작하기",indexing_vault:"보관함 색인 중",time_left_minutes:"약 {minutes}분 {seconds}초 남음...",time_left_seconds:"약 {seconds}초 남음...",assistant_language:"어시스턴스 언어",pause_indexing:"색인 중지",resume_indexing:"색인 재개",cancel_indexing:"색인 취소",retry_initialization:"초기화 재시도",mode_changed:`Smart Second Brain을 다시 초기화합니다
`,reinitialize:"Smart Second Brain 재초기화",chat_via:"{model}을(를) 통해 대화하기",chatview:"편안한 채팅뷰",similarity_threshold:"유사도",creativity:"창의성",settings_changed:`설정이 변경되었습니다.
Smart Second Brain을 재초기화하세요.`,open:"빠른 설정 열기",close:"빠른 설정 닫기",error:{install_model:"{model} 모델을 먼저 설치하세요",other:`오류가 발생했습니다.
초기화를 다시 시도해주세요...`}},iU={creativity:"모델 출력의 창의성 수준을 사용자의 선호도에 맞게 조정합니다.",similarity:"검색된 문서가 사용자 쿼리와 얼마나 유사해야 하는지를 나타냅니다."},lU={general:Ok,ribbon:Pk,cmd:zk,modal:jk,init_third_party_modal:qk,notice:$k,chat:eU,onboarding:tU,incognito_toggle:rU,settings:aU,quick_settings:nU,tooltip:iU};Zl("en",PT);Zl("es",ok);Zl("tr",Kk);Zl("fr",Hk);Zl("zh",Jk);Zl("ko",lU);BL({fallbackLocale:"en",initialLocale:window.localStorage.getItem("language")});function wK(t){return Object.prototype.toString.call(t)==="[object Date]"}function Rv(t){const e=t-1;return e*e*e+1}function Sh(t,e){if(t===e||t!==t)return()=>t;const r=typeof t;if(r!==typeof e||Array.isArray(t)!==Array.isArray(e))throw new Error("Cannot interpolate values of different type");if(Array.isArray(t)){const a=e.map((n,i)=>Sh(t[i],n));return n=>a.map(i=>i(n))}if(r==="object"){if(!t||!e)throw new Error("Object cannot be null");if(wK(t)&&wK(e)){t=t.getTime(),e=e.getTime();const i=e-t;return l=>new Date(t+l*i)}const a=Object.keys(e),n={};return a.forEach(i=>{n[i]=Sh(t[i],e[i])}),i=>{const l={};return a.forEach(s=>{l[s]=n[s](i)}),l}}if(r==="number"){const a=e-t;return n=>t+n*a}throw new Error(`Cannot interpolate ${r} values`)}function sU(t,e={}){const r=$t(t);let a,n=t;function i(l,s){if(t==null)return r.set(t=l),Promise.resolve();n=l;let o=a,d=!1,{delay:u=0,duration:c=400,easing:p=pC,interpolate:A=Sh}=Jd(Jd({},e),s);if(c===0)return o&&(o.abort(),o=null),r.set(t=n),Promise.resolve();const m=mC()+u;let h;return a=AC(C=>{if(C<m)return!0;d||(h=A(t,l),typeof c=="function"&&(c=c(t,l)),d=!0),o&&(o.abort(),o=null);const w=C-m;return w>c?(r.set(t=l),!1):(r.set(t=h(p(w/c))),!0)}),a.promise}return{set:i,update:(l,s)=>i(l(n,t),s),subscribe:r.subscribe}}function oU(t){let e,r,a,n;return{c(){e=ot("svg"),r=ot("circle"),n=ot("circle"),F(r,"class",a="stroke-current "+(t[1]?"text-[--background-secondary-alt]":"text-[--background-primary-alt]")),F(r,"fill","none"),F(r,"stroke-width","10"),F(r,"cx","50"),F(r,"cy","50"),F(r,"r",Zh),F(n,"class","stroke-current text-[--color-accent]"),F(n,"fill","none"),F(n,"stroke-width","10"),F(n,"cx","50"),F(n,"cy","50"),F(n,"r",Zh),F(n,"stroke-dasharray",t[2]),yl(n,"stroke-dashoffset",t[0]),F(e,"class","h-6 w-6 -rotate-90"),F(e,"viewBox","0 0 100 100")},m(i,l){N(i,e,l),E(e,r),E(e,n)},p(i,[l]){l&2&&a!==(a="stroke-current "+(i[1]?"text-[--background-secondary-alt]":"text-[--background-primary-alt]"))&&F(r,"class",a),l&1&&yl(n,"stroke-dashoffset",i[0])},i:le,o:le,d(i){i&&Y(e)}}}const Zh=45;function dU(t,e,r){let a,n;me(t,Qu,o=>r(1,n=o));let{progress:i=0}=e;const l=2*Math.PI*Zh,s=sU(0,{duration:400,easing:Rv});return bi(()=>{s.set(i)}),t.$$set=o=>{"progress"in o&&r(3,i=o.progress)},t.$$.update=()=>{t.$$.dirty&8&&s.set(i),t.$$.dirty&8&&r(0,a=l-i/100*l)},[a,n,l,i]}class uU extends pt{constructor(e){super(),ut(this,e,dU,oU,st,{progress:3})}}function pU(t){let e,r,a,n,i,l,s,o,d,u,c,p,A,m,h,C,w,b,f,K,W,R,v,L,y,G,Z,k,_;return{c(){e=ot("svg"),r=ot("defs"),a=ot("style"),n=te(`.cls-1,
.cls-2,
.cls-3,
.cls-4,
.cls-5,
.cls-6,
.cls-7 {
fill: none;
stroke-miterlimit: 10;
}
.cls-1,
.cls-6 {
stroke-width: 6px;
}
.cls-2 {
stroke-width: 8px;
}
.cls-2,
.cls-3,
.cls-4,
.cls-6 {
stroke-linecap: round;
}
.cls-8 {
stroke-width: 0px;
}
.cls-3,
.cls-5 {
stroke-width: 3px;
}
.cls-4,
.cls-7 {
stroke-width: 5px;
}
`),i=ot("g"),l=ot("path"),s=ot("path"),o=ot("path"),d=ot("path"),u=ot("path"),c=ot("path"),p=ot("path"),A=ot("path"),m=ot("path"),h=ot("path"),C=ot("path"),w=ot("path"),b=ot("path"),f=ot("g"),K=ot("path"),W=ot("path"),R=ot("path"),v=ot("path"),L=ot("path"),y=ot("path"),G=ot("path"),Z=ot("path"),k=ot("path"),F(l,"class","cls-6"),F(l,"d","m119.76,235.22c-95.84-79.16-30.4-176.18,30.3-196.33,62.91-20.88,130.24,17.36,146.97,78.91,9.76,35.91,6.2,96.83-59.52,124.16"),F(s,"class","cls-4"),F(s,"d","m243.98,295.97c11.44,2.55,26.63-2.2,34.9-11.47,7.62-8.53,9.26-23.71-1.37-28.68-3.1-1.41-8.39-4.34-25.26,9.89"),F(o,"class","cls-4"),F(o,"d","m211.26,239.39c-7.07,16.12-9.01,30.06-3.44,43.38"),F(d,"class","cls-4"),F(d,"d","m255.03,262.83c-6.24-7.97-11.64-16.69-10.26-24.14"),F(u,"class","cls-4"),F(u,"d","m255.03,236.29c2.53,8.15,26.76,18.29,38.06-3.65,10.38-20.15,19.18-14.03,21.22-12.74,5.69,3.59,5.08,19.12,5.08,23.19,0,19.72-15.37,27.77-25.17,30.41-2.45.66-4.93.86-7.41.7"),F(c,"class","cls-2"),F(c,"d","m159.81,196.17c0,15.73,19.25,11.74,19.25.27"),F(p,"class","cls-8"),F(p,"d","m100.68,183.58c-.39-15.51,10.1-29.27,22.64-29.7,13.25-.46,24.05,11.76,24.39,27.61.36,16.39-9.78,29.86-22.87,30.39-13.03.52-23.76-12.03-24.17-28.3Zm33.87-3.78c3.85-.06,6.61-4.11,5.8-8.83-.87-5.07-3.33-8.55-7.51-9.86-3.76-1.18-7.21,1.93-7.48,6.67-.35,6.1,4.24,12.1,9.19,12.02Z"),F(A,"class","cls-8"),F(A,"d","m195.6,186.94c-.39-15.51,10.1-29.27,22.64-29.7,13.25-.46,24.05,11.76,24.39,27.61.36,16.39-9.78,29.86-22.87,30.39-13.03.52-23.76-12.03-24.17-28.3Zm33.87-3.78c3.85-.06,6.61-4.11,5.8-8.83-.87-5.07-3.33-8.55-7.51-9.86-3.76-1.18-7.21,1.93-7.48,6.67-.35,6.1,4.24,12.1,9.19,12.02Z"),F(m,"class","cls-4"),F(m,"d","m142.53,236.39c3.51,8.36,5.19,30.91-4.14,35.41"),F(h,"class","cls-7"),F(h,"d","m108.7,225.33c-17.93,8.39-29.31,4.95-35.4-7.63-.41-.95-3.65-7.37-9.47-7.99-3.69-.39-6.51,1.35-7.6,1.96-5.84,3.27-5.99,18.65-6.19,22.67-.3,6.17.29,12.61,4.66,19.09,2.99,4.44,7.61,6.3,10.03,7.71"),F(C,"class","cls-3"),F(C,"d","m223.9,267.43c-2.25-3.2-3.93-6.85-4.74-10.8"),F(w,"class","cls-4"),F(w,"d","m150.65,275.2c-11.27,3.93-16.8-9.25-23.58-17.48-1.15-1.4-3.84-3.56-7.8-4.56-.16-.04-2.65-.65-5.03-.41-6.83.68-12.82,7.92-14.1,13.2-5.53,22.77,9.93,36.73,18.74,41.48,14.52,7.82,36.47,6.91,55.1-5.68"),F(b,"class","cls-4"),F(b,"d","m179.07,235.47c-25.49,54.97,4.84,82.78,29.94,83.89,18.49.81,39.76-16.08,36.23-39.13-1.17-7.62-6.37-11.88-13.47-12.86-12.08-1.66-16.81,20.98-32.09,15.06"),F(K,"class","cls-5"),F(K,"d","m282.77,261.99c23.21-10.24,10.89-38.79,20.22-42.51"),F(W,"class","cls-3"),F(W,"d","m171.08,287.69c-22.21,15.19-37.76-9.57-40.91-19.61-4.83-15.38-10.76-15.33-16.18-15.33"),F(R,"class","cls-3"),F(R,"d","m98.59,263.83c-9.83-2.58-13.76-12.61-14.84-19.93-.61-4.1-1.74-10.92-11.89-10.58"),F(v,"class","cls-5"),F(v,"d","m66.89,235.29c-1.98-10.95,1.21-26.31-7.4-23.88"),F(L,"class","cls-5"),F(L,"d","m277.5,255.83c-2.71-1.29-13.23-4.09-17.22,13.97-1.87,8.48-7.96,11.66-14.93,11.04"),F(y,"class","cls-3"),F(y,"d","m171.83,287.26c5.8,9.77,15.91,17.37,31.37,11.41,13.36-5.16,9.97-24.24,21.68-28.87,4.31-1.7,7.1-1.94,10.53-1.58"),F(G,"class","cls-4"),F(G,"d","m97.64,280.44c-9.05.55-18.91-2.53-27.09-10.3-7.09-6.73-13.32-25.71-5.07-33.63,4.33-4.15,10.93-3.55,11.24-3.52,11,1.17,13.58,14.25,21.42,14.82,4.06.3,9.51-2.17,17.18-16.37"),F(Z,"class","cls-1"),F(Z,"d","m70.55,152.49c9.11-9.88,30.06-28.17,46.89-28.07,21.67.13,19.1,25.53,52.73,24.8,37.98-.82,27.35-16.61,52.43-19.52,15.57-1.81,40.86,11.57,76.26,31.09"),F(k,"class","cls-8"),F(k,"d","m102.06,128.35c4.62-2.2,9.56-4.14,16.68-4.29-.71-6.67-.5-13.88,1.03-17.71.93-2.33,2.45-4.98,5.21-3.62,2.45,1.2,1.71,3.65.62,6.02-3.77,8.25-.66,22.15,10.41,24.11,9.88,14.4,24.28,16.98,40.7,14.31-6.82-5.42-13.63-10.88-20.74-15.85-4.25-2.97-6.98-7.03-8.63-11.91-3.21-9.48-1.8-18.82,4.52-26.79,5.62-7.1,18.07-7.93,23.34-5.88,4.25,2.06,6.23,4.67,9.77,8.15,1,.98,2.36,4.14.73,5.59-1.63,1.45-3.71-.07-5.09-.94-2.26-1.43-3.96-3.84-6.19-5.33-6.84-4.56-16.86-1.51-20.28,5.97-3.91,8.57-2.98,17.38,3.54,23.2,5.67,5.05,12.04,9.23,18.29,13.5,5.79,3.96,9.84,5.58,11.84,10.61,5.03-1.57,9.84-3.83,14.18-7.63-4.93-9.76-12.33-17.33-22.24-22.55-2.08-1.1-4.68-2.15-3.34-5.23,1.44-3.32,3.98-2.11,6.29-.96,10.97,5.46,17.7,12.62,23.77,23.62,4.39-3.22,8.94-5.09,13.63-5.59.52-8.32-3.6-14.28-8.61-19.49-2.69-2.8-6.37-4.53-8.94-7.43-3.4-3.85-6.34-8.24-9.08-12.69-1.14-1.86-1.36-4.96,1.62-5.6,1.2-.26,3.01,1.67,4.04,3.05,1.54,2.09,2.22,5.08,4,6.79,3.93,3.76,8.32,6.94,12.46,10.32,3.02-3.47,5.42-6.98,8.48-9.53,2.84-2.37,6.29-4.07,9.67-5.35,1.18-.45,4.3-.41,4.46,1.93.17,2.34-1.83,3.64-3.14,4.2-5.36,2.28-10.19,5.22-12.51,11.19-.77,1.97-.85,4.96.02,6.7,2.75,5.5,4.4,11.12,3.77,17.62,13.59,2.85,26.65,6.59,37.54,14.05,7.57-2.41,9.63-3.51,10.67-14.52,1.52-16.07-12.65-27.75-26.31-21.45-2.68,1.24-4.75,4.11-7.29,5.88-2.38,2.36-1.82,3.68-5.03,2.03s-.47-4.73.51-6.11c5.59-7.91,13.2-10.71,21.92-10,1.11.09,2.22.29,3.34.44,1.31-19.03-21-32.02-35.16-28.07.14.84.61,1.84.34,2.53-.57,1.43-1.31,3.19-2.42,3.83-.67.38-2.88-.8-3.21-1.8-4.95-15.26-26.8-19.94-38.49-15.68-4.38,1.59-8.21,5.17-12.39,7.62-1.54.9-4.01,2.18-4.95,1.51-2.24-1.58-1.11-3.98.58-5.94.8-.92,1.53-1.9,2.32-2.89-8.31-3.73-28.54,3.65-34.51,12.57,3.14,1.56,6.45,2.8,9.3,4.8,1.04.73,2.74,3.17,1.39,4.95-1.34,1.78-3.72,1.14-4.93.45-13.32-7.55-26.24-3-33.62,12.73-4.68,9.98-6.91,20.3-3.88,30.6h0Zm141.09,1.88c5.3-8.49,11.49-9.41,20.1-6.01,2.03.8,4.6,1.58,3.34,4.8-1.17,3.01-3.35,1.78-5.31,1.01-4.19-1.64-8.23-1.8-11.94,2.1l-6.19-1.9Z"),F(e,"class",_="z-[-1] h-full "+(t[0].isUsingRag?"fill-[--color-accent] stroke-[--color-accent]":"fill-[--text-normal] stroke-[--text-normal]")),F(e,"viewBox","30 29 300 300")},m(U,j){N(U,e,j),E(e,r),E(r,a),E(a,n),E(e,i),E(i,l),E(i,s),E(i,o),E(i,d),E(i,u),E(i,c),E(i,p),E(i,A),E(i,m),E(i,h),E(i,C),E(i,w),E(i,b),E(i,f),E(f,K),E(f,W),E(f,R),E(f,v),E(f,L),E(f,y),E(i,G),E(i,Z),E(e,k)},p(U,[j]){j&1&&_!==(_="z-[-1] h-full "+(U[0].isUsingRag?"fill-[--color-accent] stroke-[--color-accent]":"fill-[--text-normal] stroke-[--text-normal]"))&&F(e,"class",_)},i:le,o:le,d(U){U&&Y(e)}}}function cU(t,e,r){let a;return me(t,ae,n=>r(0,a=n)),[a]}class Ev extends pt{constructor(e){super(),ut(this,e,cU,pU,st,{})}}function bK(t){let e,r,a,n,i;return{c(){e=X("div"),F(e,"aria-label",r=t[6]("chat.save")),F(e,"class",Gv),e.hidden=a=t[7]==="running"},m(l,s){N(l,e,s),n||(i=[Ge(t[9].call(null,e,"save")),de(e,"click",t[13])],n=!0)},p(l,s){s&64&&r!==(r=l[6]("chat.save"))&&F(e,"aria-label",r),s&128&&a!==(a=l[7]==="running")&&(e.hidden=a)},d(l){l&&Y(e),n=!1,We(i)}}}function KK(t){let e,r,a,n,i;return{c(){e=X("div"),F(e,"aria-label",r=t[6]("chat.delete")),F(e,"class",Gv),e.hidden=a=t[7]==="running"},m(l,s){N(l,e,s),n||(i=[de(e,"click",Sl(Mt.reset)),Ge(t[9].call(null,e,"trash-2"))],n=!0)},p(l,s){s&64&&r!==(r=l[6]("chat.delete"))&&F(e,"aria-label",r),s&128&&a!==(a=l[7]==="running")&&(e.hidden=a)},d(l){l&&Y(e),n=!1,We(i)}}}function mU(t){let e,r,a,n;function i(s){t[19](s)}let l={};return t[8]!==void 0&&(l.progress=t[8]),r=new uU({props:l}),hr.push(()=>B1(r,"progress",i)),{c(){e=X("div"),pe(r.$$.fragment),F(e,"class","flex h-8 items-center px-4 py-2")},m(s,o){N(s,e,o),se(r,e,null),n=!0},p(s,o){const d={};!a&&o&256&&(a=!0,d.progress=s[8],h1(()=>a=!1)),r.$set(d)},i(s){n||(D(r.$$.fragment,s),n=!0)},o(s){J(r.$$.fragment,s),n=!1},d(s){s&&Y(e),oe(r)}}}function gU(t){let e,r,a,n;return{c(){e=X("button"),F(e,"aria-label",r=t[6]("chat.reintialize")),F(e,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[18]),Ge(t[9].call(null,e,"refresh-cw"))],a=!0)},p(i,l){l&64&&r!==(r=i[6]("chat.reintialize"))&&F(e,"aria-label",r)},i:le,o:le,d(i){i&&Y(e),a=!1,We(n)}}}function AU(t){let e,r,a,n;return{c(){e=X("button"),F(e,"aria-label",r=t[6]("chat.retry_error")),F(e,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[17]),Ge(t[9].call(null,e,"refresh-cw"))],a=!0)},p(i,l){l&64&&r!==(r=i[6]("chat.retry_error"))&&F(e,"aria-label",r)},i:le,o:le,d(i){i&&Y(e),a=!1,We(n)}}}function hU(t){let e,r,a,n;return{c(){e=X("button"),F(e,"aria-label",r=t[6]("chat.send")),F(e,"class","h-8 rounded-r-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[10]),Ge(t[9].call(null,e,"send-horizontal"))],a=!0)},p(i,l){l&64&&r!==(r=i[6]("chat.send"))&&F(e,"aria-label",r)},i:le,o:le,d(i){i&&Y(e),a=!1,We(n)}}}function BU(t){let e,r,a,n;return{c(){e=X("button"),F(e,"aria-label",r=t[6]("chat.stop")),F(e,"class","h-8 rounded-r-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[16]),Ge(t[9].call(null,e,"stop-circle"))],a=!0)},p(i,l){l&64&&r!==(r=i[6]("chat.stop"))&&F(e,"aria-label",r)},i:le,o:le,d(i){i&&Y(e),a=!1,We(n)}}}function CU(t){let e,r,a,n,i,l,s,o,d,u,c,p,A,m,h,C,w,b,f,K=t[4].length>1&&bK(t);i=new Ev({});let W=t[4].length>1&&KK(t);const R=[BU,hU,AU,gU,mU],v=[];function L(y,G){return y[7]==="running"?0:y[7]==="idle"?1:y[7]==="error"?2:y[7]==="settings-change"?3:4}return h=L(t),C=v[h]=R[h](t),{c(){e=X("div"),r=X("div"),K&&K.c(),a=M(),n=X("div"),pe(i.$$.fragment),o=M(),W&&W.c(),u=M(),c=X("div"),p=X("textarea"),m=M(),C.c(),F(n,"aria-label",l=t[3].isUsingRag?t[6]("chat.toggle_papa"):t[6]("chat.toggle_llm")),F(n,"class",s=`h-[48px] w-[48px] *:!h-[48px] *:!w-[48px] hover:text-[--text-accent-hover] hover:scale-110 transform duration-300 ease-in-out ${t[3].isUsingRag?"text-[--color-accent]":"text-[--text-normal]"}`),F(r,"class",d="absolute -top-[62px] left-1/2 flex -translate-x-1/2 items-center gap-3 rounded-t-2xl border border-solid border-x-[--background-modifier-border] border-b-transparent border-t-[--background-modifier-border] "+(t[5]?"bg-[--background-secondary]":"bg-[--background-primary]")+" pt-2 px-2"),F(e,"class","relative"),F(p,"id","chat-view-user-input-element"),F(p,"class","h-8 max-h-40 flex-1 resize-none"),F(p,"placeholder",A=t[6]("chat.input_placeholder")),F(c,"class","sticky flex w-full gap-1")},m(y,G){N(y,e,G),E(e,r),K&&K.m(r,null),E(r,a),E(r,n),se(i,n,null),E(r,o),W&&W.m(r,null),N(y,u,G),N(y,c,G),E(c,p),t[14](p),Wt(p,t[1]),E(c,m),v[h].m(c,null),w=!0,b||(f=[de(n,"click",t[11]),de(p,"input",t[15]),de(p,"keydown",t[12])],b=!0)},p(y,[G]){y[4].length>1?K?K.p(y,G):(K=bK(y),K.c(),K.m(r,a)):K&&(K.d(1),K=null),(!w||G&72&&l!==(l=y[3].isUsingRag?y[6]("chat.toggle_papa"):y[6]("chat.toggle_llm")))&&F(n,"aria-label",l),(!w||G&8&&s!==(s=`h-[48px] w-[48px] *:!h-[48px] *:!w-[48px] hover:text-[--text-accent-hover] hover:scale-110 transform duration-300 ease-in-out ${y[3].isUsingRag?"text-[--color-accent]":"text-[--text-normal]"}`))&&F(n,"class",s),y[4].length>1?W?W.p(y,G):(W=KK(y),W.c(),W.m(r,null)):W&&(W.d(1),W=null),(!w||G&32&&d!==(d="absolute -top-[62px] left-1/2 flex -translate-x-1/2 items-center gap-3 rounded-t-2xl border border-solid border-x-[--background-modifier-border] border-b-transparent border-t-[--background-modifier-border] "+(y[5]?"bg-[--background-secondary]":"bg-[--background-primary]")+" pt-2 px-2"))&&F(r,"class",d),(!w||G&64&&A!==(A=y[6]("chat.input_placeholder")))&&F(p,"placeholder",A),G&2&&Wt(p,y[1]);let Z=h;h=L(y),h===Z?v[h].p(y,G):(vt(),J(v[Z],1,1,()=>{v[Z]=null}),Ft(),C=v[h],C?C.p(y,G):(C=v[h]=R[h](y),C.c()),D(C,1),C.m(c,null))},i(y){w||(D(i.$$.fragment,y),D(C),w=!0)},o(y){J(i.$$.fragment,y),J(C),w=!1},d(y){y&&(Y(e),Y(u),Y(c)),K&&K.d(),oe(i),W&&W.d(),t[14](null),v[h].d(),b=!1,We(f)}}}const Gv="text-[--text-normal] hover:text-[--text-accent-hover]";function wU(t,e,r){let a,n,i,l,s,o,d,u,c,p,A;me(t,Va,Z=>r(1,a=Z)),me(t,dt,Z=>r(2,n=Z)),me(t,ae,Z=>r(3,i=Z)),me(t,$d,Z=>r(20,l=Z)),me(t,qd,Z=>r(21,s=Z)),me(t,Mt,Z=>r(4,o=Z)),me(t,Is,Z=>r(22,d=Z)),me(t,Qu,Z=>r(5,u=Z)),me(t,Bt,Z=>r(6,c=Z)),me(t,Ve,Z=>r(7,p=Z)),me(t,gn,Z=>r(8,A=Z));let{textarea:m}=e;const h=(Z,k)=>{Qe.setIcon(Z,k)};async function C(){if(n.s2b.canRunPapa()){if(d){Ye(Mt,o[0].content=a,o),Ye(ae,i.initialAssistantMessageContent=a,i),Ye(Va,a="",a),Ye(Is,d=!1,d),n.chatView.requestSave(),await n.saveSettings();return}a.trim()!==""&&(s&&(o.pop(),Ye(qd,s=!1,s)),Gh("User",a),Ye(Va,a="",a),await n.s2b.runPapa(),Gh("Assistant",l))}}function w(){Ye(ae,i.isUsingRag=!i.isUsingRag,i),n.saveSettings()}function b(Z){Z.key==="Enter"&&!Z.shiftKey&&(Z.preventDefault(),C())}function f(){r(0,m.style.height="2rem",m),m.scrollHeight==42?r(0,m.style.height="2rem",m):r(0,m.style.height=m.scrollHeight+"px",m)}const K=()=>n.saveChat();function W(Z){hr[Z?"unshift":"push"](()=>{m=Z,r(0,m)})}function R(){a=this.value,Va.set(a)}const v=()=>n.s2b.stopRun(),L=()=>n.s2b.init(),y=()=>n.s2b.init();function G(Z){A=Z,gn.set(A)}return t.$$set=Z=>{"textarea"in Z&&r(0,m=Z.textarea)},t.$$.update=()=>{t.$$.dirty&2&&a&&f()},[m,a,n,i,o,u,c,p,A,h,C,w,b,K,W,R,v,L,y,G]}class bU extends pt{constructor(e){super(),ut(this,e,wU,CU,st,{textarea:0})}}function fK(t,e,r){const a=t.slice();return a[5]=e[r],a}function QK(t){let e,r=t[5].display+"",a,n;return{c(){e=X("option"),a=te(r),e.__value=n=t[5].value,Wt(e,e.__value)},m(i,l){N(i,e,l),E(e,a)},p(i,l){l&2&&r!==(r=i[5].display+"")&&ne(a,r),l&2&&n!==(n=i[5].value)&&(e.__value=n,Wt(e,e.__value))},d(i){i&&Y(e)}}}function KU(t){let e,r,a,n=Xt(t[1]),i=[];for(let l=0;l<n.length;l+=1)i[l]=QK(fK(t,n,l));return{c(){e=X("select");for(let l=0;l<i.length;l+=1)i[l].c();F(e,"class","dropdown"),t[0]===void 0&&Dr(()=>t[3].call(e))},m(l,s){N(l,e,s);for(let o=0;o<i.length;o+=1)i[o]&&i[o].m(e,null);Ia(e,t[0],!0),r||(a=[de(e,"change",t[3]),de(e,"change",t[4])],r=!0)},p(l,[s]){if(s&2){n=Xt(l[1]);let o;for(o=0;o<n.length;o+=1){const d=fK(l,n,o);i[o]?i[o].p(d,s):(i[o]=QK(d),i[o].c(),i[o].m(e,null))}for(;o<i.length;o+=1)i[o].d(1);i.length=n.length}s&3&&Ia(e,l[0])},i:le,o:le,d(l){l&&Y(e),ea(i,l),r=!1,We(a)}}}function fU(t,e,r){let{options:a}=e,{changeFunc:n}=e,{selected:i}=e;function l(){i=Od(this),r(0,i),r(1,a)}const s=()=>n(i);return t.$$set=o=>{"options"in o&&r(1,a=o.options),"changeFunc"in o&&r(2,n=o.changeFunc),"selected"in o&&r(0,i=o.selected)},[i,a,n,l,s]}class Wu extends pt{constructor(e){super(),ut(this,e,fU,KU,st,{options:1,changeFunc:2,selected:0})}}function QU(t){let e,r,a;return{c(){e=X("div"),e.innerHTML='<input type="checkbox" tabindex="0"/>',F(e,"class","checkbox-container"),Mb(e,"is-enabled",t[0])},m(n,i){N(n,e,i),r||(a=de(e,"click",function(){Yr(t[1])&&t[1].apply(this,arguments)}),r=!0)},p(n,[i]){t=n,i&1&&Mb(e,"is-enabled",t[0])},i:le,o:le,d(n){n&&Y(e),r=!1,a()}}}function WU(t,e,r){let{isEnabled:a=!1}=e,{changeFunc:n}=e;return t.$$set=i=>{"isEnabled"in i&&r(0,a=i.isEnabled),"changeFunc"in i&&r(1,n=i.changeFunc)},[a,n]}class WC extends pt{constructor(e){super(),ut(this,e,WU,QU,st,{isEnabled:0,changeFunc:1})}}function vU(t){let e;return{c(){e=X("div"),F(e,"class","loader svelte-1l6oqxz")},m(r,a){N(r,e,a)},p:le,i:le,o:le,d(r){r&&Y(e)}}}class FU extends pt{constructor(e){super(),ut(this,e,null,vU,st,{})}}function WK(t,e,r){const a=t.slice();return a[17]=e[r],a}function yU(t,e,r){const a=t.slice();return a[17]=e[r],a}function vK(t,e,r){const a=t.slice();return a[17]=e[r],a}function RU(t,e,r){const a=t.slice();return a[17]=e[r],a}function EU(t){let e,r;return e=new Ds({props:{iconId:"refresh-ccw",changeFunc:t[8]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&92&&(i.changeFunc=a[8]),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function GU(t){let e,r,a,n,i;e=new Ds({props:{iconId:"rotate-cw",changeFunc:t[7]}});function l(o){t[10](o)}let s={styles:t[0],placeholder:"http://localhost:11434",changeFunc:t[9]};return t[1]!==void 0&&(s.value=t[1]),a=new Xl({props:s}),hr.push(()=>B1(a,"value",l)),{c(){pe(e.$$.fragment),r=M(),pe(a.$$.fragment)},m(o,d){se(e,o,d),N(o,r,d),se(a,o,d),i=!0},p(o,d){const u={};d&1&&(u.styles=o[0]),d&17&&(u.changeFunc=o[9]),!n&&d&2&&(n=!0,u.value=o[1],h1(()=>n=!1)),a.$set(u)},i(o){i||(D(e.$$.fragment,o),D(a.$$.fragment,o),i=!0)},o(o){J(e.$$.fragment,o),J(a.$$.fragment,o),i=!1},d(o){o&&Y(r),oe(e,o),oe(a,o)}}}function SU(t){let e;return{c(){e=X("option"),e.textContent=`${t[17]}`,e.__value=t[17],Wt(e,e.__value)},m(r,a){N(r,e,a)},p:le,d(r){r&&Y(e)}}}function FK(t){let e,r=t[17]+"",a,n;return{c(){e=X("option"),a=te(r),e.__value=n=t[17],Wt(e,e.__value)},m(i,l){N(i,e,l),E(e,a)},p(i,l){l&4&&r!==(r=i[17]+"")&&ne(a,r),l&4&&n!==(n=i[17])&&(e.__value=n,Wt(e,e.__value))},d(i){i&&Y(e)}}}function ZU(t){let e,r,a,n,i,l,s,o=Xt(Es),d=[];for(let p=0;p<o.length;p+=1)d[p]=SU(RU(t,o,p));let u=Xt(t[2].filter(t[11])),c=[];for(let p=0;p<u.length;p+=1)c[p]=FK(vK(t,u,p));return{c(){e=X("select"),r=X("optgroup");for(let p=0;p<d.length;p+=1)d[p].c();n=X("optgroup");for(let p=0;p<c.length;p+=1)c[p].c();F(r,"label",a=t[6]("settings.ollama.recommended")),F(n,"label",i=t[6]("settings.ollama.other")),F(e,"class","dropdown"),t[5].ollamaGenModel.model===void 0&&Dr(()=>t[12].call(e))},m(p,A){N(p,e,A),E(e,r);for(let m=0;m<d.length;m+=1)d[m]&&d[m].m(r,null);E(e,n);for(let m=0;m<c.length;m+=1)c[m]&&c[m].m(n,null);Ia(e,t[5].ollamaGenModel.model,!0),l||(s=[de(e,"change",t[12]),de(e,"change",t[13])],l=!0)},p(p,A){if(A&64&&a!==(a=p[6]("settings.ollama.recommended"))&&F(r,"label",a),A&4){u=Xt(p[2].filter(p[11]));let m;for(m=0;m<u.length;m+=1){const h=vK(p,u,m);c[m]?c[m].p(h,A):(c[m]=FK(h),c[m].c(),c[m].m(n,null))}for(;m<c.length;m+=1)c[m].d(1);c.length=u.length}A&64&&i!==(i=p[6]("settings.ollama.other"))&&F(n,"label",i),A&36&&Ia(e,p[5].ollamaGenModel.model)},d(p){p&&Y(e),ea(d,p),ea(c,p),l=!1,We(s)}}}function XU(t){let e;return{c(){e=X("option"),e.textContent=`${t[17]}`,e.__value=t[17],Wt(e,e.__value)},m(r,a){N(r,e,a)},p:le,d(r){r&&Y(e)}}}function yK(t){let e,r=t[17]+"",a,n;return{c(){e=X("option"),a=te(r),e.__value=n=t[17],Wt(e,e.__value)},m(i,l){N(i,e,l),E(e,a)},p(i,l){l&4&&r!==(r=i[17]+"")&&ne(a,r),l&4&&n!==(n=i[17])&&(e.__value=n,Wt(e,e.__value))},d(i){i&&Y(e)}}}function HU(t){let e,r,a,n,i,l,s,o=Xt(li),d=[];for(let p=0;p<o.length;p+=1)d[p]=XU(yU(t,o,p));let u=Xt(t[2].filter(t[14])),c=[];for(let p=0;p<u.length;p+=1)c[p]=yK(WK(t,u,p));return{c(){e=X("select"),r=X("optgroup");for(let p=0;p<d.length;p+=1)d[p].c();n=X("optgroup");for(let p=0;p<c.length;p+=1)c[p].c();F(r,"label",a=t[6]("settings.ollama.recommended")),F(n,"label",i=t[6]("settings.ollama.other")),F(e,"class","dropdown"),t[5].ollamaEmbedModel.model===void 0&&Dr(()=>t[15].call(e))},m(p,A){N(p,e,A),E(e,r);for(let m=0;m<d.length;m+=1)d[m]&&d[m].m(r,null);E(e,n);for(let m=0;m<c.length;m+=1)c[m]&&c[m].m(n,null);Ia(e,t[5].ollamaEmbedModel.model,!0),l||(s=[de(e,"change",t[15]),de(e,"change",t[16])],l=!0)},p(p,A){if(A&64&&a!==(a=p[6]("settings.ollama.recommended"))&&F(r,"label",a),A&4){u=Xt(p[2].filter(p[14]));let m;for(m=0;m<u.length;m+=1){const h=WK(p,u,m);c[m]?c[m].p(h,A):(c[m]=yK(h),c[m].c(),c[m].m(n,null))}for(;m<c.length;m+=1)c[m].d(1);c.length=u.length}A&64&&i!==(i=p[6]("settings.ollama.other"))&&F(n,"label",i),A&36&&Ia(e,p[5].ollamaEmbedModel.model)},d(p){p&&Y(e),ea(d,p),ea(c,p),l=!1,We(s)}}}function VU(t){let e,r,a,n,i,l,s,o;return e=new sr({props:{name:"Ollama",isHeading:!0,desc:t[6]("settings.ollama.desc"),$$slots:{default:[EU]},$$scope:{ctx:t}}}),a=new sr({props:{name:t[6]("settings.ollama.base_url"),desc:t[6]("settings.ollama.base_url_desc"),$$slots:{default:[GU]},$$scope:{ctx:t}}}),i=new sr({props:{name:t[6]("settings.ollama.gen_model"),desc:t[6]("settings.ollama.model_descriptions."+t[5].ollamaGenModel.model,{default:""}),isDisabled:!t[4],$$slots:{default:[ZU]},$$scope:{ctx:t}}}),s=new sr({props:{name:t[6]("settings.ollama.embed_model"),desc:t[6]("settings.ollama.model_descriptions."+t[5].ollamaEmbedModel.model,{default:""}),isDisabled:!t[4],$$slots:{default:[HU]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment),r=M(),pe(a.$$.fragment),n=M(),pe(i.$$.fragment),l=M(),pe(s.$$.fragment)},m(d,u){se(e,d,u),N(d,r,u),se(a,d,u),N(d,n,u),se(i,d,u),N(d,l,u),se(s,d,u),o=!0},p(d,[u]){const c={};u&64&&(c.desc=d[6]("settings.ollama.desc")),u&67108956&&(c.$$scope={dirty:u,ctx:d}),e.$set(c);const p={};u&64&&(p.name=d[6]("settings.ollama.base_url")),u&64&&(p.desc=d[6]("settings.ollama.base_url_desc")),u&67108883&&(p.$$scope={dirty:u,ctx:d}),a.$set(p);const A={};u&64&&(A.name=d[6]("settings.ollama.gen_model")),u&96&&(A.desc=d[6]("settings.ollama.model_descriptions."+d[5].ollamaGenModel.model,{default:""})),u&16&&(A.isDisabled=!d[4]),u&67108964&&(A.$$scope={dirty:u,ctx:d}),i.$set(A);const m={};u&64&&(m.name=d[6]("settings.ollama.embed_model")),u&96&&(m.desc=d[6]("settings.ollama.model_descriptions."+d[5].ollamaEmbedModel.model,{default:""})),u&16&&(m.isDisabled=!d[4]),u&67108964&&(m.$$scope={dirty:u,ctx:d}),s.$set(m)},i(d){o||(D(e.$$.fragment,d),D(a.$$.fragment,d),D(i.$$.fragment,d),D(s.$$.fragment,d),o=!0)},o(d){J(e.$$.fragment,d),J(a.$$.fragment,d),J(i.$$.fragment,d),J(s.$$.fragment,d),o=!1},d(d){d&&(Y(r),Y(n),Y(l)),oe(e,d),oe(a,d),oe(i,d),oe(s,d)}}}function YU(t,e,r){let a,n;me(t,ae,K=>r(5,a=K)),me(t,Bt,K=>r(6,n=K));let i,l=a.ollamaGenModel.baseUrl,s=[],o=[],d=!1;bi(async()=>{r(2,s=await jr()),r(3,o=[...new Set(s.concat(Es).concat(li))]),r(4,d=await si()),r(0,i=d?"":"!border-[--background-modifier-error]")});const u=async()=>{r(1,l=eu.ollamaGenModel.baseUrl),await Rh(l),r(4,d=await si()),r(0,i=d?"":"!border-[--background-modifier-error]")},c=async()=>{if(r(4,d=await si()),!d)return new Qe.Notice(n("notice.ollama_not_running"),4e3);r(2,s=await jr()),r(3,o=[...new Set(s.concat(Es).concat(li))])},p=async K=>{await Rh(K),r(4,d=await si()),r(0,i=d?"":"!border-[--background-modifier-error]")};function A(K){l=K,r(1,l)}const m=K=>!Es.includes(K)&&!li.includes(K);function h(){a.ollamaGenModel.model=Od(this),ae.set(a),r(2,s)}const C=()=>Qv(a.ollamaGenModel.model),w=K=>!li.includes(K);function b(){a.ollamaEmbedModel.model=Od(this),ae.set(a),r(2,s)}return[i,l,s,o,d,a,n,u,c,p,A,m,h,C,w,b,()=>Wv(a.ollamaEmbedModel.model)]}class NU extends pt{constructor(e){super(),ut(this,e,YU,VU,st,{})}}function RK(t){let e,r,a,n;const i=[DU,IU,_U,UU,kU,TU,LU],l=[];function s(o,d){return o[6]==="uninitialized"?0:o[6]==="loading"?1:o[6]==="indexing"||o[6]==="indexing-pause"?2:o[6]==="error"?3:o[6]==="mode-change"?4:o[6]==="settings-change"?5:6}return e=s(t),r=l[e]=i[e](t),{c(){r.c(),a=Tt()},m(o,d){l[e].m(o,d),N(o,a,d),n=!0},p(o,d){let u=e;e=s(o),e===u?l[e].p(o,d):(vt(),J(l[u],1,1,()=>{l[u]=null}),Ft(),r=l[e],r?r.p(o,d):(r=l[e]=i[e](o),r.c()),D(r,1),r.m(a.parentNode,a))},i(o){n||(D(r),n=!0)},o(o){J(r),n=!1},d(o){o&&Y(a),l[e].d(o)}}}function LU(t){let e,r=t[5].isIncognitoMode?"Ollama":"OpenAI",a,n,i,l=t[3]("quick_settings.chat_via",{values:{model:t[5].isIncognitoMode?t[5].ollamaGenModel.model:t[5].openAIGenModel.model}})+"",s,o,d,u,c=t[3]("quick_settings.chatview")+"",p,A,m,h,C,w=t[3]("quick_settings.assistant_language")+"",b,f,K,W,R,v=t[3]("quick_settings.creativity")+"",L,y,G,Z,k,_,U,j,O,P,z,Se,he,Ht,Vt;m=new WC({props:{isEnabled:t[5].isChatComfy,changeFunc:t[17]}}),K=new Wu({props:{selected:t[5].assistantLanguage,options:t[15],changeFunc:t[16]}});let Je=t[5].isUsingRag&&EK(t);return{c(){e=X("h2"),a=te(r),n=M(),i=X("p"),s=te(l),o=M(),d=X("div"),u=X("div"),p=te(c),A=M(),pe(m.$$.fragment),h=M(),C=X("div"),b=te(w),f=M(),pe(K.$$.fragment),W=M(),R=X("div"),L=te(v),y=M(),G=X("div"),k=M(),_=X("div"),U=X("output"),j=te(t[1]),O=te("%"),P=M(),z=X("input"),Se=M(),Je&&Je.c(),F(e,"class","mb-0 text-primary"),F(i,"class","mt-1"),F(u,"class","flex h-8 items-center justify-between"),F(C,"class","flex h-8 items-center justify-between"),F(G,"aria-label",Z=t[3]("tooltip.creativity")),F(G,"class","ml-1 mr-auto h-[18px]"),F(z,"class","slider"),F(z,"type","range"),F(z,"min","0"),F(z,"max","100"),F(_,"class","flex items-center"),F(R,"class","flex h-8 items-center justify-between"),F(d,"class","w-full max-w-[300px]")},m(Xe,ct){N(Xe,e,ct),E(e,a),N(Xe,n,ct),N(Xe,i,ct),E(i,s),N(Xe,o,ct),N(Xe,d,ct),E(d,u),E(u,p),E(u,A),se(m,u,null),E(d,h),E(d,C),E(C,b),E(C,f),se(K,C,null),E(d,W),E(d,R),E(R,L),E(R,y),E(R,G),E(R,k),E(R,_),E(_,U),E(U,j),E(U,O),E(_,P),E(_,z),Wt(z,t[1]),E(d,Se),Je&&Je.m(d,null),he=!0,Ht||(Vt=[Ge(t[11].call(null,G,"help")),de(z,"change",t[30]),de(z,"input",t[30]),de(z,"blur",t[14])],Ht=!0)},p(Xe,ct){(!he||ct[0]&32)&&r!==(r=Xe[5].isIncognitoMode?"Ollama":"OpenAI")&&ne(a,r),(!he||ct[0]&40)&&l!==(l=Xe[3]("quick_settings.chat_via",{values:{model:Xe[5].isIncognitoMode?Xe[5].ollamaGenModel.model:Xe[5].openAIGenModel.model}})+"")&&ne(s,l),(!he||ct[0]&8)&&c!==(c=Xe[3]("quick_settings.chatview")+"")&&ne(p,c);const rt={};ct[0]&32&&(rt.isEnabled=Xe[5].isChatComfy),m.$set(rt),(!he||ct[0]&8)&&w!==(w=Xe[3]("quick_settings.assistant_language")+"")&&ne(b,w);const je={};ct[0]&32&&(je.selected=Xe[5].assistantLanguage),K.$set(je),(!he||ct[0]&8)&&v!==(v=Xe[3]("quick_settings.creativity")+"")&&ne(L,v),(!he||ct[0]&8&&Z!==(Z=Xe[3]("tooltip.creativity")))&&F(G,"aria-label",Z),(!he||ct[0]&2)&&ne(j,Xe[1]),ct[0]&2&&Wt(z,Xe[1]),Xe[5].isUsingRag?Je?Je.p(Xe,ct):(Je=EK(Xe),Je.c(),Je.m(d,null)):Je&&(Je.d(1),Je=null)},i(Xe){he||(D(m.$$.fragment,Xe),D(K.$$.fragment,Xe),he=!0)},o(Xe){J(m.$$.fragment,Xe),J(K.$$.fragment,Xe),he=!1},d(Xe){Xe&&(Y(e),Y(n),Y(i),Y(o),Y(d)),oe(m),oe(K),Je&&Je.d(),Ht=!1,We(Vt)}}}function TU(t){let e,r=t[3]("quick_settings.settings_changed")+"",a,n,i,l,s,o;return{c(){e=X("h3"),a=te(r),n=M(),i=X("button"),F(e,"class","text-center text-primary"),F(i,"aria-label",l=t[3]("quick_settings.reinitialize")),F(i,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(d,u){N(d,e,u),E(e,a),N(d,n,u),N(d,i,u),s||(o=[de(i,"click",t[29]),Ge(t[11].call(null,i,"refresh-cw"))],s=!0)},p(d,u){u[0]&8&&r!==(r=d[3]("quick_settings.settings_changed")+"")&&ne(a,r),u[0]&8&&l!==(l=d[3]("quick_settings.reinitialize"))&&F(i,"aria-label",l)},i:le,o:le,d(d){d&&(Y(e),Y(n),Y(i)),s=!1,We(o)}}}function kU(t){let e,r=t[3]("quick_settings.mode_changed")+"",a,n=t[5].isIncognitoMode?"Ollama":"OpenAI",i,l,s,o,d,u,c;return{c(){e=X("h3"),a=te(r),i=te(n),l=te("."),s=M(),o=X("button"),F(e,"class","text-center text-primary"),F(o,"aria-label",d=t[3]("quick_settings.reinitialize")),F(o,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(p,A){N(p,e,A),E(e,a),E(e,i),E(e,l),N(p,s,A),N(p,o,A),u||(c=[de(o,"click",t[28]),Ge(t[11].call(null,o,"refresh-cw"))],u=!0)},p(p,A){A[0]&8&&r!==(r=p[3]("quick_settings.mode_changed")+"")&&ne(a,r),A[0]&32&&n!==(n=p[5].isIncognitoMode?"Ollama":"OpenAI")&&ne(i,n),A[0]&8&&d!==(d=p[3]("quick_settings.reinitialize"))&&F(o,"aria-label",d)},i:le,o:le,d(p){p&&(Y(e),Y(s),Y(o)),u=!1,We(c)}}}function UU(t){let e,r,a,n;const i=[OU,JU,xU,MU],l=[];function s(o,d){return o[10]==="ollama-gen-model-not-installed"?0:o[10]==="ollama-embed-model-not-installed"?1:o[10]==="failed-indexing"?2:3}return e=s(t),r=l[e]=i[e](t),{c(){r.c(),a=Tt()},m(o,d){l[e].m(o,d),N(o,a,d),n=!0},p(o,d){let u=e;e=s(o),e===u?l[e].p(o,d):(vt(),J(l[u],1,1,()=>{l[u]=null}),Ft(),r=l[e],r?r.p(o,d):(r=l[e]=i[e](o),r.c()),D(r,1),r.m(a.parentNode,a))},i(o){n||(D(r),n=!0)},o(o){J(r),n=!1},d(o){o&&Y(a),l[e].d(o)}}}function _U(t){let e,r=t[3]("quick_settings.indexing_vault")+"",a,n,i,l=t[19](t[7])+"",s,o,d,u,c,p,A,m,h,C,w,b,f;u=new yv({props:{progress:t[8]}});function K(v,L){if(v[6]==="indexing")return zU;if(v[6]==="indexing-pause")return PU}let W=K(t),R=W&&W(t);return{c(){e=X("h3"),a=te(r),n=M(),i=X("output"),s=te(l),d=M(),pe(u.$$.fragment),c=M(),p=X("div"),R&&R.c(),A=M(),m=X("div"),F(e,"class","m-0 text-primary"),F(i,"class",o=t[6]==="indexing"&&t[7]>0?"":"invisible"),F(m,"aria-label",h=t[3]("quick_settings.cancel_indexing")),F(m,"class","h-8 py-2 pl-2 pr-3 transition duration-300 ease-in-out hover:text-[var(--text-accent-hover)]"),F(p,"class",C="flex items-center justify-center rounded-xl shadow "+(t[9]?"bg-[--background-secondary-alt]":"bg-[--background-primary-alt]"))},m(v,L){N(v,e,L),E(e,a),N(v,n,L),N(v,i,L),E(i,s),N(v,d,L),se(u,v,L),N(v,c,L),N(v,p,L),R&&R.m(p,null),E(p,A),E(p,m),w=!0,b||(f=[de(m,"click",t[23]),Ge(t[11].call(null,m,"stop-circle"))],b=!0)},p(v,L){(!w||L[0]&8)&&r!==(r=v[3]("quick_settings.indexing_vault")+"")&&ne(a,r),(!w||L[0]&128)&&l!==(l=v[19](v[7])+"")&&ne(s,l),(!w||L[0]&192&&o!==(o=v[6]==="indexing"&&v[7]>0?"":"invisible"))&&F(i,"class",o);const y={};L[0]&256&&(y.progress=v[8]),u.$set(y),W===(W=K(v))&&R?R.p(v,L):(R&&R.d(1),R=W&&W(v),R&&(R.c(),R.m(p,A))),(!w||L[0]&8&&h!==(h=v[3]("quick_settings.cancel_indexing")))&&F(m,"aria-label",h),(!w||L[0]&512&&C!==(C="flex items-center justify-center rounded-xl shadow "+(v[9]?"bg-[--background-secondary-alt]":"bg-[--background-primary-alt]")))&&F(p,"class",C)},i(v){w||(D(u.$$.fragment,v),w=!0)},o(v){J(u.$$.fragment,v),w=!1},d(v){v&&(Y(e),Y(n),Y(i),Y(d),Y(c),Y(p)),oe(u,v),R&&R.d(),b=!1,We(f)}}}function IU(t){let e,r;return e=new FU({}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p:le,i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function DU(t){let e,r=t[3]("quick_settings.initialize")+"",a,n,i,l,s,o;return{c(){e=X("h3"),a=te(r),n=M(),i=X("button"),F(e,"class","text-center text-primary"),F(i,"aria-label",l=t[3]("quick_settings.initialize")),F(i,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(d,u){N(d,e,u),E(e,a),N(d,n,u),N(d,i,u),s||(o=[de(i,"click",t[20]),Ge(t[11].call(null,i,"power"))],s=!0)},p(d,u){u[0]&8&&r!==(r=d[3]("quick_settings.initialize")+"")&&ne(a,r),u[0]&8&&l!==(l=d[3]("quick_settings.initialize"))&&F(i,"aria-label",l)},i:le,o:le,d(d){d&&(Y(e),Y(n),Y(i)),s=!1,We(o)}}}function EK(t){let e,r=t[3]("quick_settings.similarity_threshold")+"",a,n,i,l,s,o,d,u,c,p,A,m,h;return{c(){e=X("div"),a=te(r),n=M(),i=X("div"),s=M(),o=X("div"),d=X("output"),u=te(t[0]),c=te("%"),p=M(),A=X("input"),F(i,"aria-label",l=t[3]("tooltip.similarity")),F(i,"class","ml-1 mr-auto h-[18px]"),F(A,"class","slider"),F(A,"type","range"),F(A,"min","0"),F(A,"max","100"),F(o,"class","flex items-center"),F(e,"class","flex h-8 items-center justify-between")},m(C,w){N(C,e,w),E(e,a),E(e,n),E(e,i),E(e,s),E(e,o),E(o,d),E(d,u),E(d,c),E(o,p),E(o,A),Wt(A,t[0]),m||(h=[Ge(t[11].call(null,i,"help")),de(A,"change",t[31]),de(A,"input",t[31]),de(A,"blur",t[13])],m=!0)},p(C,w){w[0]&8&&r!==(r=C[3]("quick_settings.similarity_threshold")+"")&&ne(a,r),w[0]&8&&l!==(l=C[3]("tooltip.similarity"))&&F(i,"aria-label",l),w[0]&1&&ne(u,C[0]),w[0]&1&&Wt(A,C[0])},d(C){C&&Y(e),m=!1,We(h)}}}function MU(t){let e,r=t[3]("quick_settings.error.other")+"",a,n,i,l,s,o;return{c(){e=X("h3"),a=te(r),n=M(),i=X("button"),F(e,"class","text-center text-primary"),F(i,"aria-label",l=t[3]("quick_settings.retry_initialization")),F(i,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(d,u){N(d,e,u),E(e,a),N(d,n,u),N(d,i,u),s||(o=[de(i,"click",t[27]),Ge(t[11].call(null,i,"refresh-cw"))],s=!0)},p(d,u){u[0]&8&&r!==(r=d[3]("quick_settings.error.other")+"")&&ne(a,r),u[0]&8&&l!==(l=d[3]("quick_settings.retry_initialization"))&&F(i,"aria-label",l)},i:le,o:le,d(d){d&&(Y(e),Y(n),Y(i)),s=!1,We(o)}}}function xU(t){let e,r=t[3]("notice.failed_indexing")+"",a,n,i,l,s,o;return{c(){e=X("h3"),a=te(r),n=M(),i=X("button"),F(e,"class","text-center"),F(i,"aria-label",l=t[3]("quick_settings.retry_indexing")),F(i,"class","h-8 rounded-l-md px-4 py-2 transition duration-300 ease-in-out hover:bg-[--text-accent-hover]")},m(d,u){N(d,e,u),E(e,a),N(d,n,u),N(d,i,u),s||(o=[de(i,"click",t[26]),Ge(t[11].call(null,i,"refresh-cw"))],s=!0)},p(d,u){u[0]&8&&r!==(r=d[3]("notice.failed_indexing")+"")&&ne(a,r),u[0]&8&&l!==(l=d[3]("quick_settings.retry_indexing"))&&F(i,"aria-label",l)},i:le,o:le,d(d){d&&(Y(e),Y(n),Y(i)),s=!1,We(o)}}}function JU(t){let e,r=t[3]("quick_settings.error.install_model",{values:{model:t[5].ollamaEmbedModel.model}})+"",a,n,i,l;return i=new K1({props:{pullModel:t[5].ollamaEmbedModel.model,onSuccessfulPull:t[25]}}),{c(){e=X("h3"),a=te(r),n=M(),pe(i.$$.fragment),F(e,"class","text-center text-primary")},m(s,o){N(s,e,o),E(e,a),N(s,n,o),se(i,s,o),l=!0},p(s,o){(!l||o[0]&40)&&r!==(r=s[3]("quick_settings.error.install_model",{values:{model:s[5].ollamaEmbedModel.model}})+"")&&ne(a,r);const d={};o[0]&32&&(d.pullModel=s[5].ollamaEmbedModel.model),o[0]&64&&(d.onSuccessfulPull=s[25]),i.$set(d)},i(s){l||(D(i.$$.fragment,s),l=!0)},o(s){J(i.$$.fragment,s),l=!1},d(s){s&&(Y(e),Y(n)),oe(i,s)}}}function OU(t){let e,r=t[3]("quick_settings.error.install_model",{values:{model:t[5].ollamaGenModel.model}})+"",a,n,i,l;return i=new K1({props:{pullModel:t[5].ollamaGenModel.model,onSuccessfulPull:t[24]}}),{c(){e=X("h3"),a=te(r),n=M(),pe(i.$$.fragment),F(e,"class","text-center text-primary")},m(s,o){N(s,e,o),E(e,a),N(s,n,o),se(i,s,o),l=!0},p(s,o){(!l||o[0]&40)&&r!==(r=s[3]("quick_settings.error.install_model",{values:{model:s[5].ollamaGenModel.model}})+"")&&ne(a,r);const d={};o[0]&32&&(d.pullModel=s[5].ollamaGenModel.model),o[0]&64&&(d.onSuccessfulPull=s[24]),i.$set(d)},i(s){l||(D(i.$$.fragment,s),l=!0)},o(s){J(i.$$.fragment,s),l=!1},d(s){s&&(Y(e),Y(n)),oe(i,s)}}}function PU(t){let e,r,a,n;return{c(){e=X("div"),F(e,"aria-label",r=t[3]("quick_settings.resume_indexing")),F(e,"class","h-8 py-2 pl-3 pr-2 transition duration-300 ease-in-out hover:text-[var(--text-accent-hover)]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[22]),Ge(t[11].call(null,e,"play"))],a=!0)},p(i,l){l[0]&8&&r!==(r=i[3]("quick_settings.resume_indexing"))&&F(e,"aria-label",r)},d(i){i&&Y(e),a=!1,We(n)}}}function zU(t){let e,r,a,n;return{c(){e=X("div"),F(e,"aria-label",r=t[3]("quick_settings.pause_indexing")),F(e,"class","h-8 py-2 pl-3 pr-2 transition duration-300 ease-in-out hover:text-[var(--text-accent-hover)]")},m(i,l){N(i,e,l),a||(n=[de(e,"click",t[21]),Ge(t[11].call(null,e,"pause"))],a=!0)},p(i,l){l[0]&8&&r!==(r=i[3]("quick_settings.pause_indexing"))&&F(e,"aria-label",r)},d(i){i&&Y(e),a=!1,We(n)}}}function jU(t){let e,r,a,n,i,l,s,o,d,u,c,p,A,m=t[2]&&RK(t);return{c(){e=X("div"),r=X("div"),m&&m.c(),a=M(),n=X("div"),i=M(),l=X("div"),s=X("div"),yl(n,"height","1rem"),F(s,"aria-label",o=t[2]?t[3]("quick_settings.close"):t[3]("quick_settings.open")),F(s,"class",d=`text-[--text-normal] transition-transform duration-300 hover:text-[--text-accent-hover] ${t[2]?"rotate-180 transform":"rotate-0 transform"}`),F(l,"class","absolute bottom-0 z-10 flex w-full justify-center"),F(r,"class","flex h-full w-full max-w-[500px] flex-col items-center justify-center"),F(e,"class",u=`relative ${t[2]?"h-[33%] min-h-[33%]":"h-[--icon-m] min-h-[--icon-m]"} flex justify-center overflow-hidden transition-all duration-300 ease-in-out`)},m(h,C){N(h,e,C),E(e,r),m&&m.m(r,null),E(r,a),E(r,n),E(r,i),E(r,l),E(l,s),c=!0,p||(A=[Ge(t[11].call(null,s,"chevron-down")),de(s,"click",t[12])],p=!0)},p(h,C){h[2]?m?(m.p(h,C),C[0]&4&&D(m,1)):(m=RK(h),m.c(),D(m,1),m.m(r,a)):m&&(vt(),J(m,1,1,()=>{m=null}),Ft()),(!c||C[0]&12&&o!==(o=h[2]?h[3]("quick_settings.close"):h[3]("quick_settings.open")))&&F(s,"aria-label",o),(!c||C[0]&4&&d!==(d=`text-[--text-normal] transition-transform duration-300 hover:text-[--text-accent-hover] ${h[2]?"rotate-180 transform":"rotate-0 transform"}`))&&F(s,"class",d),(!c||C[0]&4&&u!==(u=`relative ${h[2]?"h-[33%] min-h-[33%]":"h-[--icon-m] min-h-[--icon-m]"} flex justify-center overflow-hidden transition-all duration-300 ease-in-out`))&&F(e,"class",u)},i(h){c||(D(m),c=!0)},o(h){J(m),c=!1},d(h){h&&Y(e),m&&m.d(),p=!1,We(A)}}}function qU(t,e,r){let a,n,i,l,s,o,d,u,c;me(t,Bt,he=>r(3,a=he)),me(t,dt,he=>r(4,n=he)),me(t,ae,he=>r(5,i=he)),me(t,Mt,he=>r(32,l=he)),me(t,Ve,he=>r(6,s=he)),me(t,fv,he=>r(7,o=he)),me(t,gn,he=>r(8,d=he)),me(t,Qu,he=>r(9,u=he)),me(t,dl,he=>r(10,c=he));const p=(he,Ht)=>{Qe.setIcon(he,Ht)};let A=i.isQuickSettingsOpen;function m(){r(2,A=!A),Ye(ae,i.isQuickSettingsOpen=A,i),n.saveSettings()}let h=Math.round((i.isIncognitoMode?i.ollamaEmbedModel.similarityThreshold:i.openAIEmbedModel.similarityThreshold)*100);function C(){i.isIncognitoMode?Ye(ae,i.ollamaEmbedModel.similarityThreshold=h/100,i):Ye(ae,i.openAIEmbedModel.similarityThreshold=h/100,i),n.s2b.setSimilarityThreshold(h/100),n.saveSettings()}let w=Math.round(i.isIncognitoMode?i.ollamaGenModel.temperature:i.openAIGenModel.temperature)*100;function b(){i.isIncognitoMode?(Ye(ae,i.ollamaGenModel.temperature=w/100,i),n.s2b.setGenModel(i.ollamaGenModel)):(Ye(ae,i.openAIGenModel.temperature=w/100,i),n.s2b.setGenModel(i.openAIGenModel)),n.saveSettings()}const f=Object.values(QY).map(he=>({display:he,value:he})),K=he=>{Ye(ae,i.assistantLanguage=he,i),Ye(ae,i.initialAssistantMessageContent=wa[he].initialAssistantMessage,i),l.length===1&&Mt.reset(),n.saveSettings()};function W(){Ye(ae,i.isChatComfy=!i.isChatComfy,i),n.saveSettings()}function R(){i.isIncognitoMode?n.s2b.init():new QC(ie(dt).app,a("init_third_party_modal.title"),a("init_third_party_modal.description"),he=>{he==="Yes"&&n.s2b.init()},"hideIncognitoWarning").activate()}function v(he){const Ht=Math.floor(he/60),Vt=he%60;return Ht>0?a("quick_settings.time_left_minutes",{values:{minutes:Ht,seconds:Vt}}):a("quick_settings.time_left_seconds",{values:{seconds:Vt}})}const L=()=>n.s2b.init(),y=()=>Ye(Ve,s="indexing-pause",s),G=()=>n.s2b.init(),Z=()=>n.s2b.cancelIndexing(),k=()=>Ye(Ve,s="settings-change",s),_=()=>Ye(Ve,s="settings-change",s),U=()=>n.s2b.init(),j=()=>n.s2b.init(),O=()=>R(),P=()=>n.s2b.init();function z(){w=N0(this.value),r(1,w)}function Se(){h=N0(this.value),r(0,h)}return t.$$.update=()=>{t.$$.dirty[0]&1&&r(0,h=Math.min(Math.max(h,0),100)),t.$$.dirty[0]&2&&r(1,w=Math.min(Math.max(w,0),100))},[h,w,A,a,n,i,s,o,d,u,c,p,m,C,b,f,K,W,R,v,L,y,G,Z,k,_,U,j,O,P,z,Se]}class $U extends pt{constructor(e){super(),ut(this,e,qU,jU,st,{},null,[-1,-1])}}function e_(t){let e,r,a=t[2]("chat.assistant")+"",n,i,l;const s=t[4].default,o=hu(s,t,t[3],null);return{c(){e=X("div"),r=X("div"),n=te(a),i=M(),o&&o.c(),F(r,"class","mt-2 font-bold text-[--text-accent]"),F(e,"class","group border-x-0 border-b border-t-0 border-solid border-[--background-modifier-border] bg-[--background-primary-alt] p-2 pr-4")},m(d,u){N(d,e,u),E(e,r),E(r,n),E(e,i),o&&o.m(e,null),l=!0},p(d,u){(!l||u&4)&&a!==(a=d[2]("chat.assistant")+"")&&ne(n,a),o&&o.p&&(!l||u&8)&&Cu(o,s,d,d[3],l?Bu(s,d[3],u,null):wu(d[3]),null)},i(d){l||(D(o,d),l=!0)},o(d){J(o,d),l=!1},d(d){d&&Y(e),o&&o.d(d)}}}function t_(t){let e,r;const a=t[4].default,n=hu(a,t,t[3],null);return{c(){e=X("div"),n&&n.c(),F(e,"class","group my-4 ml-4 w-fit max-w-[80%] rounded-t-lg rounded-br-lg bg-[--background-primary-alt] px-4 pb-1 pt-[1px] [&_p]:mb-2")},m(i,l){N(i,e,l),n&&n.m(e,null),r=!0},p(i,l){n&&n.p&&(!r||l&8)&&Cu(n,a,i,i[3],r?Bu(a,i[3],l,null):wu(i[3]),null)},i(i){r||(D(n,i),r=!0)},o(i){J(n,i),r=!1},d(i){i&&Y(e),n&&n.d(i)}}}function r_(t){let e,r,a,n;const i=[n_,a_],l=[];function s(o,d){return o[1].isChatComfy?0:1}return e=s(t),r=l[e]=i[e](t),{c(){r.c(),a=Tt()},m(o,d){l[e].m(o,d),N(o,a,d),n=!0},p(o,d){let u=e;e=s(o),e===u?l[e].p(o,d):(vt(),J(l[u],1,1,()=>{l[u]=null}),Ft(),r=l[e],r?r.p(o,d):(r=l[e]=i[e](o),r.c()),D(r,1),r.m(a.parentNode,a))},i(o){n||(D(r),n=!0)},o(o){J(r),n=!1},d(o){o&&Y(a),l[e].d(o)}}}function a_(t){let e,r,a=t[2]("chat.user")+"",n,i,l;const s=t[4].default,o=hu(s,t,t[3],null);return{c(){e=X("div"),r=X("div"),n=te(a),i=M(),o&&o.c(),F(r,"class","mt-2 font-bold text-[--text-accent]"),F(e,"class","group border-x-0 border-b border-t-0 border-solid border-[--background-modifier-border] p-2 pr-4")},m(d,u){N(d,e,u),E(e,r),E(r,n),E(e,i),o&&o.m(e,null),l=!0},p(d,u){(!l||u&4)&&a!==(a=d[2]("chat.user")+"")&&ne(n,a),o&&o.p&&(!l||u&8)&&Cu(o,s,d,d[3],l?Bu(s,d[3],u,null):wu(d[3]),null)},i(d){l||(D(o,d),l=!0)},o(d){J(o,d),l=!1},d(d){d&&Y(e),o&&o.d(d)}}}function n_(t){let e,r,a;const n=t[4].default,i=hu(n,t,t[3],null);return{c(){e=X("div"),r=X("div"),i&&i.c(),F(r,"class","group max-w-[80%] rounded-t-lg rounded-bl-lg bg-[--text-selection] px-4 pb-1 [&_p]:mb-2"),F(e,"class","my-4 mr-4 flex justify-end")},m(l,s){N(l,e,s),E(e,r),i&&i.m(r,null),a=!0},p(l,s){i&&i.p&&(!a||s&8)&&Cu(i,n,l,l[3],a?Bu(n,l[3],s,null):wu(l[3]),null)},i(l){a||(D(i,l),a=!0)},o(l){J(i,l),a=!1},d(l){l&&Y(e),i&&i.d(l)}}}function i_(t){let e,r,a,n;const i=[r_,t_,e_],l=[];function s(o,d){return o[0]==="User"?0:o[1].isChatComfy?1:2}return e=s(t),r=l[e]=i[e](t),{c(){r.c(),a=Tt()},m(o,d){l[e].m(o,d),N(o,a,d),n=!0},p(o,[d]){let u=e;e=s(o),e===u?l[e].p(o,d):(vt(),J(l[u],1,1,()=>{l[u]=null}),Ft(),r=l[e],r?r.p(o,d):(r=l[e]=i[e](o),r.c()),D(r,1),r.m(a.parentNode,a))},i(o){n||(D(r),n=!0)},o(o){J(r),n=!1},d(o){o&&Y(a),l[e].d(o)}}}function l_(t,e,r){let a,n;me(t,ae,o=>r(1,a=o)),me(t,Bt,o=>r(2,n=o));let{$$slots:i={},$$scope:l}=e,{role:s}=e;return t.$$set=o=>{"role"in o&&r(0,s=o.role),"$$scope"in o&&r(3,l=o.$$scope)},[s,a,n,l,i]}class vC extends pt{constructor(e){super(),ut(this,e,l_,i_,st,{role:0})}}function GK(t,e,r){const a=t.slice();return a[31]=e[r],a}function s_(t){let e,r,a,n,i,l;function s(u,c){return u[5]?d_:u_}let o=s(t),d=o(t);return{c(){e=X("span"),a=M(),n=X("div"),d.c(),F(n,"class","flex gap-1 opacity-0 group-hover:opacity-100")},m(u,c){N(u,e,c),t[19](e),N(u,a,c),N(u,n,c),d.m(n,null),i||(l=[de(e,"mouseover",Fv),Ge(r=_r.call(null,e,t[31].content)),de(e,"click",vv)],i=!0)},p(u,c){t=u,r&&Yr(r.update)&&c[0]&8192&&r.update.call(null,t[31].content),o===(o=s(t))&&d?d.p(t,c):(d.d(1),d=o(t),d&&(d.c(),d.m(n,null)))},d(u){u&&(Y(e),Y(a),Y(n)),t[19](null),d.d(),i=!1,We(l)}}}function o_(t){let e,r,a,n,i,l,s;function o(c,p){return c[6]&&c[12]===c[31].id?c_:p_}let d=o(t),u=d(t);return{c(){e=X("span"),a=M(),n=X("div"),u.c(),F(n,"class",i="flex "+(t[14].isChatComfy?"justify-end":"")+" gap-1 opacity-0 group-hover:opacity-100")},m(c,p){N(c,e,p),t[17](e),N(c,a,p),N(c,n,p),u.m(n,null),l||(s=[de(e,"mouseover",Fv),de(e,"click",vv),Ge(r=_r.call(null,e,t[31].content))],l=!0)},p(c,p){t=c,r&&Yr(r.update)&&p[0]&8192&&r.update.call(null,t[31].content),d===(d=o(t))&&u?u.p(t,p):(u.d(1),u=d(t),u&&(u.c(),u.m(n,null))),p[0]&16384&&i!==(i="flex "+(t[14].isChatComfy?"justify-end":"")+" gap-1 opacity-0 group-hover:opacity-100")&&F(n,"class",i)},d(c){c&&(Y(e),Y(a),Y(n)),t[17](null),u.d(),l=!1,We(s)}}}function d_(t){let e,r,a,n,i,l,s;return{c(){e=X("span"),a=M(),n=X("span"),F(e,"aria-label",r=t[7]("chat.cancel_edit")),F(e,"class",wi),F(n,"aria-label",i=t[7]("chat.reset_assistant_prompt")),F(n,"class",wi)},m(o,d){N(o,e,d),N(o,a,d),N(o,n,d),l||(s=[de(e,"click",Sl(t[23])),Ge(xt.call(null,e,"x-circle")),de(n,"click",t[24]),Ge(xt.call(null,n,"rotate-ccw"))],l=!0)},p(o,d){d[0]&128&&r!==(r=o[7]("chat.cancel_edit"))&&F(e,"aria-label",r),d[0]&128&&i!==(i=o[7]("chat.reset_assistant_prompt"))&&F(n,"aria-label",i)},d(o){o&&(Y(e),Y(a),Y(n)),l=!1,We(s)}}}function u_(t){let e,r,a,n=t[13].indexOf(t[31])!==0,i,l,s,o;function d(){return t[20](t[31])}let u=n&&SK(t),c=t[13].length===1&&ZK(t);return{c(){e=X("span"),a=M(),u&&u.c(),i=M(),c&&c.c(),l=Tt(),F(e,"aria-label",r=t[7]("chat.copy")),F(e,"class",wi)},m(p,A){N(p,e,A),N(p,a,A),u&&u.m(p,A),N(p,i,A),c&&c.m(p,A),N(p,l,A),s||(o=[de(e,"click",d),Ge(xt.call(null,e,"copy"))],s=!0)},p(p,A){t=p,A[0]&128&&r!==(r=t[7]("chat.copy"))&&F(e,"aria-label",r),A[0]&8192&&(n=t[13].indexOf(t[31])!==0),n?u?u.p(t,A):(u=SK(t),u.c(),u.m(i.parentNode,i)):u&&(u.d(1),u=null),t[13].length===1?c?c.p(t,A):(c=ZK(t),c.c(),c.m(l.parentNode,l)):c&&(c.d(1),c=null)},d(p){p&&(Y(e),Y(a),Y(i),Y(l)),u&&u.d(p),c&&c.d(p),s=!1,We(o)}}}function SK(t){let e,r,a,n;function i(){return t[21](t[31])}return{c(){e=X("span"),F(e,"aria-label",r=t[7]("chat.regenerate")),F(e,"class",wi)},m(l,s){N(l,e,s),a||(n=[de(e,"click",Sl(i)),Ge(xt.call(null,e,"refresh-cw"))],a=!0)},p(l,s){t=l,s[0]&128&&r!==(r=t[7]("chat.regenerate"))&&F(e,"aria-label",r)},d(l){l&&Y(e),a=!1,We(n)}}}function ZK(t){let e,r,a,n;function i(){return t[22](t[31])}return{c(){e=X("span"),F(e,"aria-label",r=t[7]("chat.change_assistant_prompt")),F(e,"class",wi)},m(l,s){N(l,e,s),a||(n=[de(e,"click",Sl(i)),Ge(xt.call(null,e,"pencil-line"))],a=!0)},p(l,s){t=l,s[0]&128&&r!==(r=t[7]("chat.change_assistant_prompt"))&&F(e,"aria-label",r)},d(l){l&&Y(e),a=!1,We(n)}}}function p_(t){let e,r,a,n;function i(){return t[18](t[31])}return{c(){e=X("span"),F(e,"aria-label",r=t[7]("chat.edit")),F(e,"class",wi)},m(l,s){N(l,e,s),a||(n=[de(e,"click",Sl(i)),Ge(xt.call(null,e,"pencil-line"))],a=!0)},p(l,s){t=l,s[0]&128&&r!==(r=t[7]("chat.edit"))&&F(e,"aria-label",r)},d(l){l&&Y(e),a=!1,We(n)}}}function c_(t){let e,r,a,n;return{c(){e=X("span"),F(e,"aria-label",r=t[7]("chat.copy")),F(e,"class",wi)},m(i,l){N(i,e,l),a||(n=[de(e,"click",Sl($L)),Ge(xt.call(null,e,"x-circle"))],a=!0)},p(i,l){l[0]&128&&r!==(r=i[7]("chat.copy"))&&F(e,"aria-label",r)},d(i){i&&Y(e),a=!1,We(n)}}}function m_(t){let e;function r(i,l){return i[31].role==="User"?o_:s_}let a=r(t),n=a(t);return{c(){n.c(),e=Tt()},m(i,l){n.m(i,l),N(i,e,l)},p(i,l){a===(a=r(i))&&n?n.p(i,l):(n.d(1),n=a(i),n&&(n.c(),n.m(e.parentNode,e)))},d(i){i&&Y(e),n.d(i)}}}function XK(t,e){let r,a,n;return a=new vC({props:{role:e[31].role,$$slots:{default:[m_]},$$scope:{ctx:e}}}),{key:t,first:null,c(){r=Tt(),pe(a.$$.fragment),this.first=r},m(i,l){N(i,r,l),se(a,i,l),n=!0},p(i,l){e=i;const s={};l[0]&8192&&(s.role=e[31].role),l[0]&30968|l[1]&8&&(s.$$scope={dirty:l,ctx:e}),a.$set(s)},i(i){n||(D(a.$$.fragment,i),n=!0)},o(i){J(a.$$.fragment,i),n=!1},d(i){i&&Y(r),oe(a,i)}}}function g_(t){let e,r;return e=new vC({props:{role:"Assistant",$$slots:{default:[h_]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n[0]&132|n[1]&8&&(i.$$scope={dirty:n,ctx:a}),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function A_(t){let e,r;return e=new vC({props:{role:"Assistant",$$slots:{default:[K_]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n[0]&900|n[1]&8&&(i.$$scope={dirty:n,ctx:a}),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function h_(t){let e,r,a,n=t[7]("chat.stopped")+"",i,l,s,o,d,u;return{c(){e=X("span"),r=M(),a=X("p"),i=te(n),l=M(),s=X("span"),yl(e,"background","transparent"),F(s,"aria-label",o=t[7]("chat.regenerate")),F(s,"class",wi+" opacity-0 group-hover:opacity-100")},m(c,p){N(c,e,p),t[26](e),N(c,r,p),N(c,a,p),E(a,i),N(c,l,p),N(c,s,p),d||(u=[de(s,"click",Sl(t[27])),Ge(xt.call(null,s,"refresh-cw"))],d=!0)},p(c,p){p[0]&128&&n!==(n=c[7]("chat.stopped")+"")&&ne(i,n),p[0]&128&&o!==(o=c[7]("chat.regenerate"))&&F(s,"aria-label",o)},d(c){c&&(Y(e),Y(r),Y(a),Y(l),Y(s)),t[26](null),d=!1,We(u)}}}function B_(t){let e;return{c(){e=X("span"),yl(e,"background","transparent")},m(r,a){N(r,e,a),t[25](e)},p:le,i:le,o:le,d(r){r&&Y(e),t[25](null)}}}function C_(t){let e,r=t[7]("chat.reducing",{values:{num:t[8]}})+"",a,n,i;return n=new eo({}),{c(){e=X("p"),a=te(r),pe(n.$$.fragment)},m(l,s){N(l,e,s),E(e,a),se(n,e,null),i=!0},p(l,s){(!i||s[0]&384)&&r!==(r=l[7]("chat.reducing",{values:{num:l[8]}})+"")&&ne(a,r)},i(l){i||(D(n.$$.fragment,l),i=!0)},o(l){J(n.$$.fragment,l),i=!1},d(l){l&&Y(e),oe(n)}}}function w_(t){let e,r=t[7]("chat.retrieving")+"",a,n,i;return n=new eo({}),{c(){e=X("p"),a=te(r),pe(n.$$.fragment)},m(l,s){N(l,e,s),E(e,a),se(n,e,null),i=!0},p(l,s){(!i||s[0]&128)&&r!==(r=l[7]("chat.retrieving")+"")&&ne(a,r)},i(l){i||(D(n.$$.fragment,l),i=!0)},o(l){J(n.$$.fragment,l),i=!1},d(l){l&&Y(e),oe(n)}}}function b_(t){let e,r;return e=new eo({}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p:le,i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function K_(t){let e,r,a,n;const i=[b_,w_,C_,B_],l=[];function s(o,d){return o[9]==="startup"?0:o[9]==="retrieving"?1:o[9]==="reducing"?2:o[9]==="generating"?3:-1}return~(e=s(t))&&(r=l[e]=i[e](t)),{c(){r&&r.c(),a=Tt()},m(o,d){~e&&l[e].m(o,d),N(o,a,d),n=!0},p(o,d){let u=e;e=s(o),e===u?~e&&l[e].p(o,d):(r&&(vt(),J(l[u],1,1,()=>{l[u]=null}),Ft()),~e?(r=l[e],r?r.p(o,d):(r=l[e]=i[e](o),r.c()),D(r,1),r.m(a.parentNode,a)):r=null)},i(o){n||(D(r),n=!0)},o(o){J(r),n=!1},d(o){o&&Y(a),~e&&l[e].d(o)}}}function f_(t){let e,r,a,n,i=[],l=new Map,s,o,d,u,c,p,A,m,h,C,w;r=new $U({});let b=Xt(t[13]);const f=y=>y[31].id;for(let y=0;y<b.length;y+=1){let G=GK(t,b,y),Z=f(G);l.set(Z,i[y]=XK(Z,G))}const K=[A_,g_],W=[];function R(y,G){return y[10]==="running"?0:y[10]==="idle"&&y[9]==="stopped"?1:-1}~(o=R(t))&&(d=W[o]=K[o](t));function v(y){t[30](y)}let L={};return t[11]!==void 0&&(L.textarea=t[11]),c=new bU({props:L}),hr.push(()=>B1(c,"textarea",v)),{c(){e=X("div"),pe(r.$$.fragment),a=M(),n=X("div");for(let y=0;y<i.length;y+=1)i[y].c();s=M(),d&&d.c(),u=M(),pe(c.$$.fragment),A=M(),m=X("div"),F(n,"class","chat-window w-full pb-8 flex-grow select-text overflow-y-scroll rounded-md border border-solid border-[--background-modifier-border] bg-[--background-primary]"),F(m,"class","mb-3"),F(e,"class","--background-modifier-border flex h-full flex-col gap-1")},m(y,G){N(y,e,G),se(r,e,null),E(e,a),E(e,n);for(let Z=0;Z<i.length;Z+=1)i[Z]&&i[Z].m(n,null);E(n,s),~o&&W[o].m(n,null),t[28](n),E(e,u),se(c,e,null),E(e,A),E(e,m),h=!0,C||(w=de(n,"scroll",t[29]),C=!0)},p(y,G){G[0]&63736&&(b=Xt(y[13]),vt(),i=OY(i,G,f,1,y,b,l,n,JY,XK,s,GK),Ft());let Z=o;o=R(y),o===Z?~o&&W[o].p(y,G):(d&&(vt(),J(W[Z],1,1,()=>{W[Z]=null}),Ft()),~o?(d=W[o],d?d.p(y,G):(d=W[o]=K[o](y),d.c()),D(d,1),d.m(n,null)):d=null);const k={};!p&&G[0]&2048&&(p=!0,k.textarea=y[11],h1(()=>p=!1)),c.$set(k)},i(y){if(!h){D(r.$$.fragment,y);for(let G=0;G<b.length;G+=1)D(i[G]);D(d),D(c.$$.fragment,y),h=!0}},o(y){J(r.$$.fragment,y);for(let G=0;G<i.length;G+=1)J(i[G]);J(d),J(c.$$.fragment,y),h=!1},d(y){y&&Y(e),oe(r);for(let G=0;G<i.length;G+=1)i[G].d();~o&&W[o].d(),t[28](null),oe(c),C=!1,w()}}}const wi="text-[--text-normal] hover:text-[--text-accent-hover]";function Q_(t,e,r){let a,n,i,l,s,o,d,u,c;me(t,Va,z=>r(16,a=z)),me(t,Is,z=>r(5,n=z)),me(t,qd,z=>r(6,i=z)),me(t,Bt,z=>r(7,l=z)),me(t,$d,z=>r(8,s=z)),me(t,Kv,z=>r(9,o=z)),me(t,Ve,z=>r(10,d=z)),me(t,Mt,z=>r(13,u=z)),me(t,ae,z=>r(14,c=z));let p,A=!0,m,h,C,w,b;function f(z,Se){r(12,b=qL(z,Se))}function K(z){hr[z?"unshift":"push"](()=>{C=z,r(3,C),r(6,i),r(16,a)})}const W=z=>f(z,p);function R(z){hr[z?"unshift":"push"](()=>{w=z,r(4,w),r(5,n),r(16,a)})}const v=z=>jL(z.content),L=z=>sK(z),y=z=>eT(z.content,p),G=()=>tT(w),Z=()=>rT(w);function k(z){hr[z?"unshift":"push"](()=>{h=z,r(2,h)})}function _(z){hr[z?"unshift":"push"](()=>{h=z,r(2,h)})}const U=()=>sK();function j(z){hr[z?"unshift":"push"](()=>{m=z,r(1,m),r(10,d),r(0,A),r(8,s)})}const O=()=>r(0,A=m.scrollTop+m.clientHeight+1>=m.scrollHeight);function P(z){p=z,r(11,p)}return t.$$.update=()=>{t.$$.dirty[0]&1283&&m&&d==="running"&&A&&s&&r(1,m.scrollTop=m.scrollHeight,m),t.$$.dirty[0]&772&&h&&(o==="generating"||o==="stopped")&&s&&_r(h,s),t.$$.dirty[0]&896&&o==="retrieving"&&s=="0"&&new Qe.Notice(l("notice.no_notes_retrieved")),t.$$.dirty[0]&65608&&C&&i&&(r(3,C.innerText="",C),_r(C,a)),t.$$.dirty[0]&65584&&w&&n&&(r(4,w.innerText="",w),_r(w,a))},[A,m,h,C,w,n,i,l,s,o,d,p,b,u,c,f,a,K,W,R,v,L,y,G,Z,k,_,U,j,O,P]}class W_ extends pt{constructor(e){super(),ut(this,e,Q_,f_,st,{},null,[-1,-1])}}const Ra="chat-view";class v_ extends Qe.TextFileView{constructor(r){super(r);Ze(this,"component");Ze(this,"hoverPopover");Ze(this,"data",`Assistant
`+ie(ae).initialAssistantMessageContent+`
- - - - -`);this.icon="message-square"}getViewType(){return Ra}setViewData(r,a){this.data=r;const n=r.split("- - - - -").map(i=>i.trim()).filter(i=>i.length>0).map(i=>{const l=i.split(`
`),s=l[0],o=l.slice(1).join(`
`),d=fu();return{role:s,content:o,id:d}});Mt.set(n),a&&this.clear()}clear(){}getViewData(){const r=ie(Mt).map(a=>`${a.role}
${a.content}
- - - - -`);return this.data=r.join(`
`),this.data}getDisplayText(){var r;return((r=this.file)==null?void 0:r.basename)||"Second Brain Chat"}async onLoadFile(r){await super.onLoadFile(r),this.component=new W_({target:this.contentEl})}async onUnloadFile(r){return this.clear(),this.component.$destroy(),await super.onUnloadFile(r)}}function Sv({fallback:t,...e}){const r=new Map,a=new Map;function n(l,s,o){const{delay:d=0,duration:u=R=>Math.sqrt(R)*30,easing:c=Rv}=Jd(Jd({},e),o),p=l.getBoundingClientRect(),A=s.getBoundingClientRect(),m=p.left-A.left,h=p.top-A.top,C=p.width/A.width,w=p.height/A.height,b=Math.sqrt(m*m+h*h),f=getComputedStyle(s),K=f.transform==="none"?"":f.transform,W=+f.opacity;return{delay:d,duration:Yr(u)?u(b):u,easing:c,css:(R,v)=>`
opacity: ${R*W};
transform-origin: top left;
transform: ${K} translate(${v*m}px,${v*h}px) scale(${R+(1-R)*C}, ${R+(1-R)*w});
`}}function i(l,s,o){return(d,u)=>(l.set(u.key,d),()=>{if(s.has(u.key)){const c=s.get(u.key);return s.delete(u.key),n(c,d,u)}return l.delete(u.key),t&&t(d,u,o)})}return[i(a,r,!1),i(r,a,!0)]}function HK(t,e,r){const a=t.slice();return a[5]=e[r],a}function VK(t){let e,r,a,n;return{c(){e=X("div"),F(e,"class","border-1 border-primary w-full border border-solid")},m(i,l){N(i,e,l),n=!0},i(i){n||(i&&Dr(()=>{n&&(a&&a.end(1),r=BC(e,t[2],{key:0}),r.start())}),n=!0)},o(i){r&&r.invalidate(),i&&(a=CC(e,t[3],{key:0})),n=!1},d(i){i&&Y(e),i&&a&&a.end()}}}function YK(t){let e,r,a=t[5]+"",n,i,l,s,o,d=t[5]===t[0]&&VK(t);function u(){return t[4](t[5])}return{c(){e=X("li"),r=X("span"),n=te(a),i=M(),d&&d.c(),l=M(),F(e,"class","flex h-full flex-col items-center justify-center rounded-md p-2 text-center font-bold hover:bg-[--background-modifier-hover]")},m(c,p){N(c,e,p),E(e,r),E(r,n),E(e,i),d&&d.m(e,null),E(e,l),s||(o=de(e,"click",u),s=!0)},p(c,p){t=c,p&2&&a!==(a=t[5]+"")&&ne(n,a),t[5]===t[0]?d?p&3&&D(d,1):(d=VK(t),d.c(),D(d,1),d.m(e,l)):d&&(vt(),J(d,1,1,()=>{d=null}),Ft())},d(c){c&&Y(e),d&&d.d(),s=!1,o()}}}function F_(t){let e,r=Xt(t[1]),a=[];for(let n=0;n<r.length;n+=1)a[n]=YK(HK(t,r,n));return{c(){e=X("ul");for(let n=0;n<a.length;n+=1)a[n].c();F(e,"class","m-0 flex list-none p-0 transition-all")},m(n,i){N(n,e,i);for(let l=0;l<a.length;l+=1)a[l]&&a[l].m(e,null)},p(n,[i]){if(i&3){r=Xt(n[1]);let l;for(l=0;l<r.length;l+=1){const s=HK(n,r,l);a[l]?a[l].p(s,i):(a[l]=YK(s),a[l].c(),a[l].m(e,null))}for(;l<a.length;l+=1)a[l].d(1);a.length=r.length}},i:le,o:le,d(n){n&&Y(e),ea(a,n)}}}function y_(t,e,r){let{options:a}=e,{selected:n=a[0]}=e;const[i,l]=Sv({duration:500}),s=o=>r(0,n=o);return t.$$set=o=>{"options"in o&&r(1,a=o.options),"selected"in o&&r(0,n=o.selected)},[n,a,i,l,s]}class R_ extends pt{constructor(e){super(),ut(this,e,y_,F_,st,{options:1,selected:0})}}function E_(t){let e,r=t[1]("onboarding.init")+"",a,n,i,l;return{c(){e=X("button"),a=te(r),F(e,"aria-label",n=t[1]("onboarding.init_label")),F(e,"class","mod-cta")},m(s,o){N(s,e,o),E(e,a),i||(l=de(e,"click",t[3]),i=!0)},p(s,[o]){o&2&&r!==(r=s[1]("onboarding.init")+"")&&ne(a,r),o&2&&n!==(n=s[1]("onboarding.init_label"))&&F(e,"aria-label",n)},i:le,o:le,d(s){s&&Y(e),i=!1,l()}}}function G_(t,e,r){let a,n,i;me(t,dt,o=>r(4,a=o)),me(t,ae,o=>r(0,n=o)),me(t,Bt,o=>r(1,i=o));function l(){Ye(ae,n.isOnboarded=!0,n),a.saveSettings(),a.activateView(),a.s2b.init()}return[n,i,l,()=>{n.isIncognitoMode?l():new QC(ie(dt).app,"Run via Third-Parties","Are you sure you want to run via third-parties? Your data will be given to third-party servers.",o=>{o==="Yes"&&l()},"hideIncognitoWarning").activate()}]}class Zv extends pt{constructor(e){super(),ut(this,e,G_,E_,st,{})}}function NK(t){let e;function r(i,l){return i[5]?Z_:S_}let a=r(t),n=a(t);return{c(){n.c(),e=Tt()},m(i,l){n.m(i,l),N(i,e,l)},p(i,l){a!==(a=r(i))&&(n.d(1),n=a(i),n&&(n.c(),n.m(e.parentNode,e)))},d(i){i&&Y(e),n.d(i)}}}function S_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-error]")},m(n,i){N(n,e,i),r||(a=Ge(xt.call(null,e,"cross")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function Z_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-success]")},m(n,i){N(n,e,i),r||(a=Ge(xt.call(null,e,"check")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function LK(t){let e,r=t[6]("onboarding.test")+"",a,n,i;return{c(){e=X("button"),a=te(r),F(e,"aria-label","Test if origins are set correctly")},m(l,s){N(l,e,s),E(e,a),n||(i=de(e,"click",t[8]),n=!0)},p(l,s){s&64&&r!==(r=l[6]("onboarding.test")+"")&&ne(a,r)},d(l){l&&Y(e),n=!1,i()}}}function TK(t){let e,r=t[6]("onboarding.ollama.install_model")+"",a,n,i,l,s,o,d,u;l=new K1({props:{pullModel:H_,text:t[6]("onboarding.ollama.recommended"),onSuccessfulPull:t[9]}});let c=t[0].length>0&&kK(t),p=t[3]!==""&&UK();return{c(){e=X("li"),a=te(r),n=X("br"),i=M(),pe(l.$$.fragment),s=M(),c&&c.c(),o=M(),p&&p.c(),d=Tt()},m(A,m){N(A,e,m),E(e,a),E(e,n),E(e,i),se(l,e,null),N(A,s,m),c&&c.m(A,m),N(A,o,m),p&&p.m(A,m),N(A,d,m),u=!0},p(A,m){(!u||m&64)&&r!==(r=A[6]("onboarding.ollama.install_model")+"")&&ne(a,r);const h={};m&64&&(h.text=A[6]("onboarding.ollama.recommended")),m&1&&(h.onSuccessfulPull=A[9]),l.$set(h),A[0].length>0?c?(c.p(A,m),m&1&&D(c,1)):(c=kK(A),c.c(),D(c,1),c.m(o.parentNode,o)):c&&(vt(),J(c,1,1,()=>{c=null}),Ft()),A[3]!==""?p?m&8&&D(p,1):(p=UK(),p.c(),D(p,1),p.m(d.parentNode,d)):p&&(vt(),J(p,1,1,()=>{p=null}),Ft())},i(A){u||(D(l.$$.fragment,A),D(c),D(p),u=!0)},o(A){J(l.$$.fragment,A),J(c),J(p),u=!1},d(A){A&&(Y(e),Y(s),Y(o),Y(d)),oe(l),c&&c.d(A),p&&p.d(A)}}}function kK(t){let e,r,a=t[6]("onboarding.ollama.set_model")+"",n,i,l,s,o,d,u,c,p,A={selected:t[3],options:t[0].map(_K),changeFunc:t[11]};return d=new Wu({props:A}),t[12](d),{c(){e=X("li"),r=X("div"),n=te(a),i=M(),l=X("div"),s=X("button"),o=M(),pe(d.$$.fragment),F(s,"class","clickable-icon"),F(l,"class","flex items-center gap-1"),F(r,"class","flex flex-wrap items-center justify-between")},m(m,h){N(m,e,h),E(e,r),E(r,n),E(r,i),E(r,l),E(l,s),E(l,o),se(d,l,null),u=!0,c||(p=[Ge(xt.call(null,s,"refresh-ccw")),de(s,"click",t[10])],c=!0)},p(m,h){(!u||h&64)&&a!==(a=m[6]("onboarding.ollama.set_model")+"")&&ne(n,a);const C={};h&8&&(C.selected=m[3]),h&1&&(C.options=m[0].map(_K)),h&4&&(C.changeFunc=m[11]),d.$set(C)},i(m){u||(D(d.$$.fragment,m),u=!0)},o(m){J(d.$$.fragment,m),u=!1},d(m){m&&Y(e),t[12](null),oe(d),c=!1,We(p)}}}function UK(t){let e,r,a;return r=new Zv({}),{c(){e=X("div"),pe(r.$$.fragment),F(e,"class","my-4 w-full text-center")},m(n,i){N(n,e,i),se(r,e,null),a=!0},i(n){a||(D(r.$$.fragment,n),a=!0)},o(n){J(r.$$.fragment,n),a=!1},d(n){n&&Y(e),oe(r)}}}function X_(t){let e,r,a,n=t[6]("onboarding.ollama.test_origins")+"",i,l,s,o,d,u,c,p=t[4]&&NK(t),A=!t[5]&&LK(t),m=t[5]&&TK(t);return{c(){e=X("li"),r=X("div"),a=X("span"),i=te(n),l=M(),s=X("div"),p&&p.c(),o=M(),A&&A.c(),d=M(),m&&m.c(),u=Tt(),F(a,"class","mr-2"),F(s,"class","flex items-center gap-1"),F(r,"class","flex flex-wrap items-center justify-between")},m(h,C){N(h,e,C),E(e,r),E(r,a),E(a,i),E(r,l),E(r,s),p&&p.m(s,null),E(s,o),A&&A.m(s,null),N(h,d,C),m&&m.m(h,C),N(h,u,C),c=!0},p(h,[C]){(!c||C&64)&&n!==(n=h[6]("onboarding.ollama.test_origins")+"")&&ne(i,n),h[4]?p?p.p(h,C):(p=NK(h),p.c(),p.m(s,o)):p&&(p.d(1),p=null),h[5]?A&&(A.d(1),A=null):A?A.p(h,C):(A=LK(h),A.c(),A.m(s,null)),h[5]?m?(m.p(h,C),C&32&&D(m,1)):(m=TK(h),m.c(),D(m,1),m.m(u.parentNode,u)):m&&(vt(),J(m,1,1,()=>{m=null}),Ft())},i(h){c||(D(m),c=!0)},o(h){J(m),c=!1},d(h){h&&(Y(e),Y(d),Y(u)),p&&p.d(),A&&A.d(),m&&m.d(h)}}}let H_="nomic-embed-text";const _K=t=>({display:t,value:t});function V_(t,e,r){let a,n,i;me(t,ae,w=>r(2,a=w)),me(t,dt,w=>r(13,n=w)),me(t,Bt,w=>r(6,i=w));let{scrollToBottom:l=()=>{}}=e;hC(()=>{l()});let s=[],o="",d,u=!1,c=!1;bi(async()=>{Ye(ae,a.isIncognitoMode=!0,a),n.saveSettings()});const p=async()=>{r(5,c=await ML()),r(4,u=!0),r(0,s=await jr())},A=async()=>r(0,s=await jr()),m=async()=>r(0,s=await jr()),h=w=>Ye(ae,a.ollamaEmbedModel.model=w,a);function C(w){hr[w?"unshift":"push"](()=>{d=w,r(1,d)})}return t.$$set=w=>{"scrollToBottom"in w&&r(7,l=w.scrollToBottom)},t.$$.update=()=>{t.$$.dirty&7&&d&&s.some(w=>w===a.ollamaEmbedModel.model)&&r(3,o=a.ollamaEmbedModel.model)},[s,d,a,o,u,c,i,l,p,A,m,h,C]}class Xv extends pt{constructor(e){super(),ut(this,e,V_,X_,st,{scrollToBottom:7})}}function Y_(t){let e,r=t[4]("onboarding.ollama.app.run")+"",a;return{c(){e=X("li"),a=te(r)},m(n,i){N(n,e,i),E(e,a)},p(n,i){i&16&&r!==(r=n[4]("onboarding.ollama.app.run")+"")&&ne(a,r)},d(n){n&&Y(e)}}}function N_(t){let e,r=t[4]("onboarding.ollama.app.extract")+"",a;return{c(){e=X("li"),a=te(r)},m(n,i){N(n,e,i),E(e,a)},p(n,i){i&16&&r!==(r=n[4]("onboarding.ollama.app.extract")+"")&&ne(a,r)},d(n){n&&Y(e)}}}function IK(t){let e;function r(i,l){return i[2]?T_:L_}let a=r(t),n=a(t);return{c(){n.c(),e=Tt()},m(i,l){n.m(i,l),N(i,e,l)},p(i,l){a!==(a=r(i))&&(n.d(1),n=a(i),n&&(n.c(),n.m(e.parentNode,e)))},d(i){i&&Y(e),n.d(i)}}}function L_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-error]")},m(n,i){N(n,e,i),r||(a=Ge(xt.call(null,e,"cross")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function T_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-success]")},m(n,i){N(n,e,i),r||(a=Ge(xt.call(null,e,"check")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function DK(t){let e,r=t[4]("onboarding.test")+"",a,n,i,l;return{c(){e=X("button"),a=te(r),F(e,"aria-label",n=t[4]("onboarding.ollama.app.test_label"))},m(s,o){N(s,e,o),E(e,a),i||(l=de(e,"click",t[5]),i=!0)},p(s,o){o&16&&r!==(r=s[4]("onboarding.test")+"")&&ne(a,r),o&16&&n!==(n=s[4]("onboarding.ollama.app.test_label"))&&F(e,"aria-label",n)},d(s){s&&Y(e),i=!1,l()}}}function MK(t){let e,r,a;function n(s,o){if(s[0]==="Darwin")return U_;if(s[0]==="Windows_NT")return k_}let i=n(t),l=i&&i(t);return r=new Xv({props:{scrollToBottom:t[1]}}),{c(){l&&l.c(),e=M(),pe(r.$$.fragment)},m(s,o){l&&l.m(s,o),N(s,e,o),se(r,s,o),a=!0},p(s,o){i===(i=n(s))&&l?l.p(s,o):(l&&l.d(1),l=i&&i(s),l&&(l.c(),l.m(e.parentNode,e)));const d={};o&2&&(d.scrollToBottom=s[1]),r.$set(d)},i(s){a||(D(r.$$.fragment,s),a=!0)},o(s){J(r.$$.fragment,s),a=!1},d(s){s&&Y(e),l&&l.d(s),oe(r,s)}}}function k_(t){let e,r=t[4]("onboarding.ollama.app.quit")+"",a,n,i,l,s,o=t[4]("onboarding.ollama.app.start_origins")+"",d,u,c,p,A;return{c(){e=X("li"),a=te(r),n=X("span"),l=M(),s=X("li"),d=te(o),u=M(),c=X("div"),F(n,"aria-label",i=t[4]("onboarding.ollama.app.quit_label")),F(c,"class","w-max max-w-full text-xs *:flex *:rounded *:pr-1")},m(m,h){N(m,e,h),E(e,a),E(e,n),N(m,l,h),N(m,s,h),E(s,d),N(m,u,h),N(m,c,h),p||(A=[Ge(xt.call(null,n,"help-circle")),Ge(_r.call(null,c,'```bash\n$env:OLLAMA_ORIGINS="app://obsidian.md*"; ollama serve\n```'))],p=!0)},p(m,h){h&16&&r!==(r=m[4]("onboarding.ollama.app.quit")+"")&&ne(a,r),h&16&&i!==(i=m[4]("onboarding.ollama.app.quit_label"))&&F(n,"aria-label",i),h&16&&o!==(o=m[4]("onboarding.ollama.app.start_origins")+"")&&ne(d,o)},d(m){m&&(Y(e),Y(l),Y(s),Y(u),Y(c)),p=!1,We(A)}}}function U_(t){let e,r=t[4]("onboarding.ollama.app.set_origins")+"",a,n,i,l,s,o=t[4]("onboarding.ollama.app.restart")+"",d,u,c,p,A;return{c(){e=X("li"),a=te(r),n=M(),i=X("div"),l=M(),s=X("li"),d=te(o),u=X("span"),F(i,"class","w-max max-w-full text-xs *:flex *:rounded *:pr-1"),F(u,"aria-label",c=t[4]("onboarding.ollama.app.restart_label"))},m(m,h){N(m,e,h),E(e,a),N(m,n,h),N(m,i,h),N(m,l,h),N(m,s,h),E(s,d),E(s,u),p||(A=[Ge(_r.call(null,i,'```bash\nlaunchctl setenv OLLAMA_ORIGINS "app://obsidian.md*"\n```')),Ge(xt.call(null,u,"help-circle"))],p=!0)},p(m,h){h&16&&r!==(r=m[4]("onboarding.ollama.app.set_origins")+"")&&ne(a,r),h&16&&o!==(o=m[4]("onboarding.ollama.app.restart")+"")&&ne(d,o),h&16&&c!==(c=m[4]("onboarding.ollama.app.restart_label"))&&F(u,"aria-label",c)},d(m){m&&(Y(e),Y(n),Y(i),Y(l),Y(s)),p=!1,We(A)}}}function __(t){let e,r,a=t[4]("onboarding.ollama.app.download")+"",n,i,l,s=t[4]("onboarding.ollama.app.download_link")+"",o,d,u,c,p,A,m=t[4]("onboarding.ollama.app.test_label")+"",h,C,w,b,f,K;function W(Z,k){return Z[0]==="Darwin"?N_:Y_}let R=W(t),v=R(t),L=t[3]&&IK(t),y=!t[2]&&DK(t),G=t[2]&&MK(t);return{c(){e=X("ol"),r=X("li"),n=te(a),i=M(),l=X("a"),o=te(s),d=M(),v.c(),u=M(),c=X("li"),p=X("div"),A=X("span"),h=te(m),C=M(),w=X("div"),L&&L.c(),b=M(),y&&y.c(),f=M(),G&&G.c(),F(l,"href","https://ollama.ai/download"),F(A,"class","mr-2"),F(w,"class","flex items-center gap-1"),F(p,"class","flex flex-wrap items-center justify-between"),F(e,"class","w-full pr-10 *:p-1")},m(Z,k){N(Z,e,k),E(e,r),E(r,n),E(r,i),E(r,l),E(l,o),E(e,d),v.m(e,null),E(e,u),E(e,c),E(c,p),E(p,A),E(A,h),E(p,C),E(p,w),L&&L.m(w,null),E(w,b),y&&y.m(w,null),E(e,f),G&&G.m(e,null),K=!0},p(Z,[k]){(!K||k&16)&&a!==(a=Z[4]("onboarding.ollama.app.download")+"")&&ne(n,a),(!K||k&16)&&s!==(s=Z[4]("onboarding.ollama.app.download_link")+"")&&ne(o,s),R===(R=W(Z))&&v?v.p(Z,k):(v.d(1),v=R(Z),v&&(v.c(),v.m(e,u))),(!K||k&16)&&m!==(m=Z[4]("onboarding.ollama.app.test_label")+"")&&ne(h,m),Z[3]?L?L.p(Z,k):(L=IK(Z),L.c(),L.m(w,b)):L&&(L.d(1),L=null),Z[2]?y&&(y.d(1),y=null):y?y.p(Z,k):(y=DK(Z),y.c(),y.m(w,null)),Z[2]?G?(G.p(Z,k),k&4&&D(G,1)):(G=MK(Z),G.c(),D(G,1),G.m(e,null)):G&&(vt(),J(G,1,1,()=>{G=null}),Ft())},i(Z){K||(D(G),K=!0)},o(Z){J(G),K=!1},d(Z){Z&&Y(e),v.d(),L&&L.d(),y&&y.d(),G&&G.d()}}}function I_(t,e,r){let a;me(t,Bt,d=>r(4,a=d));let{osType:n}=e,{scrollToBottom:i=()=>{}}=e;hC(()=>{i()});let l=!1,s=!1;const o=async()=>{r(2,l=await si()),r(3,s=!0),l||new Qe.Notice(a("notice.ollama_not_running"),4e3)};return t.$$set=d=>{"osType"in d&&r(0,n=d.osType),"scrollToBottom"in d&&r(1,i=d.scrollToBottom)},[n,i,l,s,a,o]}class D_ extends pt{constructor(e){super(),ut(this,e,I_,__,st,{osType:0,scrollToBottom:1})}}function xK(t){let e;function r(i,l){return i[0]?x_:M_}let a=r(t),n=a(t);return{c(){n.c(),e=Tt()},m(i,l){n.m(i,l),N(i,e,l)},p(i,l){a===(a=r(i))&&n?n.p(i,l):(n.d(1),n=a(i),n&&(n.c(),n.m(e.parentNode,e)))},d(i){i&&Y(e),n.d(i)}}}function M_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-error]")},m(n,i){N(n,e,i),r||(a=Ge(xt.call(null,e,"cross")),r=!0)},p:le,d(n){n&&Y(e),r=!1,a()}}}function x_(t){let e,r,a,n=t[3]("onboarding.openai.api_key_valid")+"",i,l,s;return{c(){e=X("div"),r=M(),a=X("p"),i=te(n),F(e,"class","h-[28px] *:!h-[28px] *:!w-[28px] *:text-[--background-modifier-success]"),F(a,"class","m-0 text-sm")},m(o,d){N(o,e,d),N(o,r,d),N(o,a,d),E(a,i),l||(s=Ge(xt.call(null,e,"check")),l=!0)},p(o,d){d&8&&n!==(n=o[3]("onboarding.openai.api_key_valid")+"")&&ne(i,n)},d(o){o&&(Y(e),Y(r),Y(a)),l=!1,s()}}}function JK(t){let e,r=t[3]("onboarding.test")+"",a,n,i,l;return{c(){e=X("button"),a=te(r),F(e,"aria-label",n=t[3]("onboarding.openai.test_api_key"))},m(s,o){N(s,e,o),E(e,a),i||(l=de(e,"click",t[7]),i=!0)},p(s,o){o&8&&r!==(r=s[3]("onboarding.test")+"")&&ne(a,r),o&8&&n!==(n=s[3]("onboarding.openai.test_api_key"))&&F(e,"aria-label",n)},d(s){s&&Y(e),i=!1,l()}}}function OK(t){let e,r,a;return r=new Zv({}),{c(){e=X("div"),pe(r.$$.fragment),F(e,"class","w-full text-center")},m(n,i){N(n,e,i),se(r,e,null),a=!0},i(n){a||(D(r.$$.fragment,n),a=!0)},o(n){J(r.$$.fragment,n),a=!1},d(n){n&&Y(e),oe(r)}}}function J_(t){let e,r,a=t[3]("onboarding.openai.create_account")+"",n,i,l,s=t[3]("onboarding.openai.create_account_link")+"",o,d,u,c=t[3]("onboarding.openai.create_api_key")+"",p,A,m,h=t[3]("onboarding.openai.create_api_key_link")+"",C,w,b,f,K,W,R,v,L=t[3]("onboarding.openai.paste_api_key")+"",y,G,Z,k,_,U,j,O=t[3]("onboarding.openai.test_api_key")+"",P,z,Se,he,Ht,Vt,Je,Xe,ct;Z=new Xl({props:{value:t[4],placeholder:"sk-...Lk",changeFunc:t[5]}});let rt=t[1]&&xK(t),je=!t[0]&&JK(t),Yt=t[0]&&OK();return{c(){e=X("ol"),r=X("li"),n=te(a),i=M(),l=X("a"),o=te(s),d=M(),u=X("li"),p=te(c),A=M(),m=X("a"),C=te(h),w=M(),b=X("div"),K=M(),W=X("li"),R=X("div"),v=X("span"),y=te(L),G=M(),pe(Z.$$.fragment),k=M(),_=X("li"),U=X("div"),j=X("span"),P=te(O),z=M(),Se=X("div"),rt&&rt.c(),he=M(),je&&je.c(),Ht=M(),Yt&&Yt.c(),Vt=Tt(),F(l,"href","https://platform.openai.com/signup"),F(m,"href","https://platform.openai.com/account/api-keys"),F(b,"class",""),F(v,"class","mr-2"),F(R,"class","flex flex-wrap items-center justify-between"),F(j,"class","mr-2"),F(Se,"class","flex items-center gap-1"),F(U,"class","flex flex-wrap items-center justify-between"),F(e,"class","w-full pr-10 *:p-1")},m(at,ve){N(at,e,ve),E(e,r),E(r,n),E(r,i),E(r,l),E(l,o),E(e,d),E(e,u),E(u,p),E(u,A),E(u,m),E(m,C),E(e,w),E(e,b),E(e,K),E(e,W),E(W,R),E(R,v),E(v,y),E(R,G),se(Z,R,null),E(e,k),E(e,_),E(_,U),E(U,j),E(j,P),E(U,z),E(U,Se),rt&&rt.m(Se,null),E(Se,he),je&&je.m(Se,null),N(at,Ht,ve),Yt&&Yt.m(at,ve),N(at,Vt,ve),Je=!0,Xe||(ct=Ge(f=_r.call(null,b,t[3]("onboarding.openai.api_key_warning"))),Xe=!0)},p(at,[ve]){(!Je||ve&8)&&a!==(a=at[3]("onboarding.openai.create_account")+"")&&ne(n,a),(!Je||ve&8)&&s!==(s=at[3]("onboarding.openai.create_account_link")+"")&&ne(o,s),(!Je||ve&8)&&c!==(c=at[3]("onboarding.openai.create_api_key")+"")&&ne(p,c),(!Je||ve&8)&&h!==(h=at[3]("onboarding.openai.create_api_key_link")+"")&&ne(C,h),f&&Yr(f.update)&&ve&8&&f.update.call(null,at[3]("onboarding.openai.api_key_warning")),(!Je||ve&8)&&L!==(L=at[3]("onboarding.openai.paste_api_key")+"")&&ne(y,L),(!Je||ve&8)&&O!==(O=at[3]("onboarding.openai.test_api_key")+"")&&ne(P,O),at[1]?rt?rt.p(at,ve):(rt=xK(at),rt.c(),rt.m(Se,he)):rt&&(rt.d(1),rt=null),at[0]?je&&(je.d(1),je=null):je?je.p(at,ve):(je=JK(at),je.c(),je.m(Se,null)),at[0]?Yt?ve&1&&D(Yt,1):(Yt=OK(),Yt.c(),D(Yt,1),Yt.m(Vt.parentNode,Vt)):Yt&&(vt(),J(Yt,1,1,()=>{Yt=null}),Ft())},i(at){Je||(D(Z.$$.fragment,at),D(Yt),Je=!0)},o(at){J(Z.$$.fragment,at),J(Yt),Je=!1},d(at){at&&(Y(e),Y(Ht),Y(Vt)),oe(Z),rt&&rt.d(),je&&je.d(),Yt&&Yt.d(at),Xe=!1,ct()}}}function O_(t,e,r){let a,n,i;me(t,dt,p=>r(8,a=p)),me(t,ae,p=>r(2,n=p)),me(t,Bt,p=>r(3,i=p));let{scrollToBottom:l=()=>{}}=e;hC(()=>{l()});let s=n.openAIGenModel.openAIApiKey,o=!1,d=!1;const u=p=>{p.trim(),Ye(ae,n.openAIGenModel.openAIApiKey=p,n),Ye(ae,n.openAIEmbedModel.openAIApiKey=p,n),a.saveSettings(),r(1,d=!1)},c=async()=>{r(0,o=await D0(n.openAIGenModel.openAIApiKey)),o||new Qe.Notice(i("notice.api_key_invalid"),4e3),r(1,d=!0)};return t.$$set=p=>{"scrollToBottom"in p&&r(6,l=p.scrollToBottom)},[o,d,n,i,s,u,l,c]}let P_=class extends pt{constructor(e){super(),ut(this,e,O_,J_,st,{scrollToBottom:6})}};function z_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","w-max max-w-full text-xs *:flex *:rounded *:pr-1")},m(n,i){N(n,e,i),r||(a=Ge(_r.call(null,e,"```bash\n$ curl -fsSL https://ollama.ai/install.sh | sh\n```")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function j_(t){let e,r,a;return{c(){e=X("div"),F(e,"class","w-max max-w-full text-xs *:flex *:rounded *:pr-1")},m(n,i){N(n,e,i),r||(a=Ge(_r.call(null,e,"```bash\nbrew install ollama\n```")),r=!0)},d(n){n&&Y(e),r=!1,a()}}}function q_(t){let e,r,a=t[3]("onboarding.ollama.deamon.install")+"",n,i,l,s,o,d,u=t[3]("onboarding.ollama.deamon.set_baseurl")+"",c,p,A,m,h,C=t[3]("onboarding.ollama.deamon.start")+"",w,b,f,K,W,R,v,L;function y(k,_){if(k[0]==="Darwin")return j_;if(k[0]==="Linux")return z_}let G=y(t),Z=G&&G(t);return A=new Xl({props:{value:t[2].ollamaEmbedModel.baseUrl,placeholder:"http://localhost:11434",changeFunc:Rh}}),W=new Xv({props:{scrollToBottom:t[1]}}),{c(){e=X("ol"),r=X("li"),n=te(a),i=M(),Z&&Z.c(),l=M(),s=X("li"),o=X("div"),d=X("span"),c=te(u),p=M(),pe(A.$$.fragment),m=M(),h=X("li"),w=te(C),b=M(),f=X("div"),K=M(),pe(W.$$.fragment),F(d,"class","mr-2"),F(o,"class","flex flex-wrap items-center justify-between"),F(f,"class","w-max max-w-full text-xs *:flex *:rounded *:pr-1"),F(e,"class","w-full pr-10 *:p-1")},m(k,_){N(k,e,_),E(e,r),E(r,n),E(e,i),Z&&Z.m(e,null),E(e,l),E(e,s),E(s,o),E(o,d),E(d,c),E(o,p),se(A,o,null),E(e,m),E(e,h),E(h,w),E(e,b),E(e,f),E(e,K),se(W,e,null),R=!0,v||(L=Ge(_r.call(null,f,'```bash\nOLLAMA_ORIGINS="app://obsidian.md*" ollama serve\n```')),v=!0)},p(k,[_]){(!R||_&8)&&a!==(a=k[3]("onboarding.ollama.deamon.install")+"")&&ne(n,a),G!==(G=y(k))&&(Z&&Z.d(1),Z=G&&G(k),Z&&(Z.c(),Z.m(e,l))),(!R||_&8)&&u!==(u=k[3]("onboarding.ollama.deamon.set_baseurl")+"")&&ne(c,u);const U={};_&4&&(U.value=k[2].ollamaEmbedModel.baseUrl),A.$set(U),(!R||_&8)&&C!==(C=k[3]("onboarding.ollama.deamon.start")+"")&&ne(w,C);const j={};_&2&&(j.scrollToBottom=k[1]),W.$set(j)},i(k){R||(D(A.$$.fragment,k),D(W.$$.fragment,k),R=!0)},o(k){J(A.$$.fragment,k),J(W.$$.fragment,k),R=!1},d(k){k&&Y(e),Z&&Z.d(),oe(A),oe(W),v=!1,L()}}}function $_(t,e,r){let a,n,i;me(t,dt,o=>r(4,a=o)),me(t,ae,o=>r(2,n=o)),me(t,Bt,o=>r(3,i=o));let{osType:l}=e,{scrollToBottom:s=()=>{}}=e;return bi(()=>{Ye(ae,n.isIncognitoMode=!0,n),a.saveSettings()}),t.$$set=o=>{"osType"in o&&r(0,l=o.osType),"scrollToBottom"in o&&r(1,s=o.scrollToBottom)},[l,s,n,i]}class eI extends pt{constructor(e){super(),ut(this,e,$_,q_,st,{osType:0,scrollToBottom:1})}}function PK(t){let e,r,a,n;return{c(){e=X("div"),F(e,"class","border-1 border-primary w-full border border-solid")},m(i,l){N(i,e,l),n=!0},i(i){n||(i&&Dr(()=>{n&&(a&&a.end(1),r=BC(e,t[2],{key:0}),r.start())}),n=!0)},o(i){r&&r.invalidate(),i&&(a=CC(e,t[3],{key:0})),n=!1},d(i){i&&Y(e),i&&a&&a.end()}}}function zK(t){let e,r,a,n;return{c(){e=X("div"),F(e,"class","border-1 border-primary w-full border border-solid")},m(i,l){N(i,e,l),n=!0},i(i){n||(i&&Dr(()=>{n&&(a&&a.end(1),r=BC(e,t[2],{key:0}),r.start())}),n=!0)},o(i){r&&r.invalidate(),i&&(a=CC(e,t[3],{key:0})),n=!1},d(i){i&&Y(e),i&&a&&a.end()}}}function tI(t){let e,r,a=t[1]("incognito_toggle.enable")+"",n,i,l,s,o=t[1]("incognito_toggle.disable")+"",d,u,c,p,A=t[0].isIncognitoMode&&PK(t),m=!t[0].isIncognitoMode&&zK(t);return{c(){e=X("ul"),r=X("li"),n=te(a),i=M(),A&&A.c(),l=M(),s=X("li"),d=te(o),u=M(),m&&m.c(),F(r,"class","flex h-full flex-col items-center justify-center rounded-md p-2 text-center font-bold hover:bg-[--background-modifier-hover]"),F(s,"class","flex h-full flex-col items-center justify-center rounded-md p-2 text-center font-bold hover:bg-[--background-modifier-hover]"),F(e,"class","m-0 flex list-none p-0 transition-all")},m(h,C){N(h,e,C),E(e,r),E(r,n),E(r,i),A&&A.m(r,null),E(e,l),E(e,s),E(s,d),E(s,u),m&&m.m(s,null),c||(p=[de(r,"click",t[5]),de(s,"click",t[6])],c=!0)},p(h,[C]){C&2&&a!==(a=h[1]("incognito_toggle.enable")+"")&&ne(n,a),h[0].isIncognitoMode?A?C&1&&D(A,1):(A=PK(h),A.c(),D(A,1),A.m(r,null)):A&&(vt(),J(A,1,1,()=>{A=null}),Ft()),C&2&&o!==(o=h[1]("incognito_toggle.disable")+"")&&ne(d,o),h[0].isIncognitoMode?m&&(vt(),J(m,1,1,()=>{m=null}),Ft()):m?C&1&&D(m,1):(m=zK(h),m.c(),D(m,1),m.m(s,null))},i(h){D(A),D(m)},o(h){J(A),J(m)},d(h){h&&Y(e),A&&A.d(),m&&m.d(),c=!1,We(p)}}}function rI(t,e,r){let a,n,i,l;me(t,Ve,A=>r(8,a=A)),me(t,dt,A=>r(9,n=A)),me(t,ae,A=>r(0,i=A)),me(t,Bt,A=>r(1,l=A));const[s,o]=Sv({duration:500});let d;function u(A){if(A!==i.isIncognitoMode){if(a==="running")return new Qe.Notice(l("notice.still_running"),4e3);if(a==="indexing"||a==="indexing-pause"||a==="loading")return new Qe.Notice(l("notice.still_indexing"),4e3);if(Ye(ae,i.isIncognitoMode=A,i),n.saveSettings(),a==="mode-change"){Ye(Ve,a=d,a);return}d=a,Ye(Ve,a="mode-change",a)}}return[i,l,s,o,u,()=>u(!0),()=>u(!1)]}class Hv extends pt{constructor(e){super(),ut(this,e,rI,tI,st,{})}}function aI(t){let e,r=t[2]("onboarding.openai_mode_note")+"",a,n,i,l;return i=new P_({props:{scrollToBottom:t[6]}}),{c(){e=X("p"),a=te(r),n=M(),pe(i.$$.fragment),F(e,"class","px-10")},m(s,o){N(s,e,o),E(e,a),N(s,n,o),se(i,s,o),l=!0},p(s,o){(!l||o&4)&&r!==(r=s[2]("onboarding.openai_mode_note")+"")&&ne(a,r)},i(s){l||(D(i.$$.fragment,s),l=!0)},o(s){J(i.$$.fragment,s),l=!1},d(s){s&&(Y(e),Y(n)),oe(i,s)}}}function nI(t){let e,r=t[2]("onboarding.privacy_mode_note")+"",a,n,i,l,s,o,d,u=t[4]==="Darwin"&&iI(t);const c=[sI,lI],p=[];function A(m,h){return m[0]==="Ollama App"?0:1}return l=A(t),s=p[l]=c[l](t),{c(){e=X("p"),a=te(r),n=M(),u&&u.c(),i=M(),s.c(),o=Tt(),F(e,"class","px-10")},m(m,h){N(m,e,h),E(e,a),N(m,n,h),u&&u.m(m,h),N(m,i,h),p[l].m(m,h),N(m,o,h),d=!0},p(m,h){(!d||h&4)&&r!==(r=m[2]("onboarding.privacy_mode_note")+"")&&ne(a,r),m[4]==="Darwin"&&u.p(m,h);let C=l;l=A(m),l===C?p[l].p(m,h):(vt(),J(p[C],1,1,()=>{p[C]=null}),Ft(),s=p[l],s?s.p(m,h):(s=p[l]=c[l](m),s.c()),D(s,1),s.m(o.parentNode,o))},i(m){d||(D(u),D(s),d=!0)},o(m){J(u),J(s),d=!1},d(m){m&&(Y(e),Y(n),Y(i),Y(o)),u&&u.d(m),p[l].d(m)}}}function iI(t){let e,r,a;function n(l){t[7](l)}let i={options:t[5]};return t[0]!==void 0&&(i.selected=t[0]),e=new R_({props:i}),hr.push(()=>B1(e,"selected",n)),{c(){pe(e.$$.fragment)},m(l,s){se(e,l,s),a=!0},p(l,s){const o={};!r&&s&1&&(r=!0,o.selected=l[0],h1(()=>r=!1)),e.$set(o)},i(l){a||(D(e.$$.fragment,l),a=!0)},o(l){J(e.$$.fragment,l),a=!1},d(l){oe(e,l)}}}function lI(t){let e,r;return e=new eI({props:{osType:t[4],scrollToBottom:t[6]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p:le,i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function sI(t){let e,r;return e=new D_({props:{osType:t[4],scrollToBottom:t[6]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p:le,i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function oI(t){let e,r,a,n,i,l=t[2]("onboarding.setup")+"",s,o,d,u=t[2]("onboarding.welcome_msg")+"",c,p,A,m,h,C,w;a=new Ev({}),A=new Hv({});const b=[nI,aI],f=[];function K(W,R){return W[3].isIncognitoMode?0:1}return h=K(t),C=f[h]=b[h](t),{c(){e=X("div"),r=X("div"),pe(a.$$.fragment),n=M(),i=X("h1"),s=te(l),o=M(),d=X("p"),c=te(u),p=M(),pe(A.$$.fragment),m=M(),C.c(),F(r,"class","mb-2 h-40 w-40"),F(i,"class","mb-0 text-[--text-normal]"),F(d,"class","px-10"),F(e,"class","mx-auto flex h-full w-full max-w-[500px] flex-col items-center overflow-auto p-8")},m(W,R){N(W,e,R),E(e,r),se(a,r,null),E(e,n),E(e,i),E(i,s),E(e,o),E(e,d),E(d,c),E(e,p),se(A,e,null),E(e,m),f[h].m(e,null),t[8](e),w=!0},p(W,[R]){(!w||R&4)&&l!==(l=W[2]("onboarding.setup")+"")&&ne(s,l),(!w||R&4)&&u!==(u=W[2]("onboarding.welcome_msg")+"")&&ne(c,u);let v=h;h=K(W),h===v?f[h].p(W,R):(vt(),J(f[v],1,1,()=>{f[v]=null}),Ft(),C=f[h],C?C.p(W,R):(C=f[h]=b[h](W),C.c()),D(C,1),C.m(e,null))},i(W){w||(D(a.$$.fragment,W),D(A.$$.fragment,W),D(C),w=!0)},o(W){J(a.$$.fragment,W),J(A.$$.fragment,W),J(C),w=!1},d(W){W&&Y(e),oe(a),oe(A),f[h].d(),t[8](null)}}}function dI(t,e,r){let a,n;me(t,Bt,p=>r(2,a=p)),me(t,ae,p=>r(3,n=p));const i=v5.type(),l=["Ollama App","Ollama Daemon"];let s=i==="Linux"?"Ollama Daemon":"Ollama App",o;function d(){r(1,o.scrollTop=o.scrollHeight,o)}function u(p){s=p,r(0,s)}function c(p){hr[p?"unshift":"push"](()=>{o=p,r(1,o)})}return[s,o,a,n,i,l,d,u,c]}class uI extends pt{constructor(e){super(),ut(this,e,dI,oI,st,{})}}const ji="setup-view";class pI extends Qe.ItemView{constructor(r){super(r);Ze(this,"component")}getViewType(){return ji}getDisplayText(){return"Setup"}getIcon(){return"cog"}async onOpen(){this.containerEl.empty(),this.component=new uI({target:this.containerEl})}}function cI(t){let e,r,a={changeFunc:t[3],buttonText:t[2]("settings.excludeff_add")};return e=new Ds({props:a}),t[4](e),{c(){pe(e.$$.fragment)},m(n,i){se(e,n,i),r=!0},p(n,[i]){const l={};i&2&&(l.changeFunc=n[3]),i&4&&(l.buttonText=n[2]("settings.excludeff_add")),e.$set(l)},i(n){r||(D(e.$$.fragment,n),r=!0)},o(n){J(e.$$.fragment,n),r=!1},d(n){t[4](null),oe(e,n)}}}function mI(t,e,r){let a,n;me(t,dt,d=>r(5,a=d)),me(t,Bt,d=>r(2,n=d));let i,l;bi(()=>{r(1,l=new _L(a.app))});const s=()=>l.open();function o(d){hr[d?"unshift":"push"](()=>{i=d,r(0,i)})}return[i,l,n,s,o]}class gI extends pt{constructor(e){super(),ut(this,e,mI,cI,st,{})}}function AI(t){let e,r;return e=new Xl({props:{styles:t[2],value:t[0],placeholder:"sk-...Lk",changeFunc:t[5],blurFunc:t[6],focusFunc:t[7]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&4&&(i.styles=a[2]),n&1&&(i.value=a[0]),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function hI(t){let e,r;return e=new Wu({props:{selected:t[3].openAIGenModel.model,options:IL.map(wI),changeFunc:t[8]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&8&&(i.selected=a[3].openAIGenModel.model),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function BI(t){let e,r;return e=new Wu({props:{selected:t[3].openAIEmbedModel.model,options:DL.map(bI),changeFunc:t[9]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&8&&(i.selected=a[3].openAIEmbedModel.model),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function CI(t){let e,r,a,n,i,l,s,o;return e=new sr({props:{name:"OpenAI",isHeading:!0,desc:t[4]("settings.openai.desc")}}),a=new sr({props:{name:t[4]("settings.openai.api_key"),desc:t[4]("settings.openai.api_key_desc"),$$slots:{default:[AI]},$$scope:{ctx:t}}}),i=new sr({props:{name:t[4]("settings.openai.gen_model"),desc:t[4]("settings.openai.model_descriptions."+t[3].openAIGenModel.model,{default:""}),isDisabled:!t[1],$$slots:{default:[hI]},$$scope:{ctx:t}}}),s=new sr({props:{name:t[4]("settings.openai.embed_model"),desc:t[4]("settings.openai.model_descriptions."+t[3].openAIEmbedModel.model,{default:""}),isDisabled:!t[1],$$slots:{default:[BI]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment),r=M(),pe(a.$$.fragment),n=M(),pe(i.$$.fragment),l=M(),pe(s.$$.fragment)},m(d,u){se(e,d,u),N(d,r,u),se(a,d,u),N(d,n,u),se(i,d,u),N(d,l,u),se(s,d,u),o=!0},p(d,[u]){const c={};u&16&&(c.desc=d[4]("settings.openai.desc")),e.$set(c);const p={};u&16&&(p.name=d[4]("settings.openai.api_key")),u&16&&(p.desc=d[4]("settings.openai.api_key_desc")),u&4101&&(p.$$scope={dirty:u,ctx:d}),a.$set(p);const A={};u&16&&(A.name=d[4]("settings.openai.gen_model")),u&24&&(A.desc=d[4]("settings.openai.model_descriptions."+d[3].openAIGenModel.model,{default:""})),u&2&&(A.isDisabled=!d[1]),u&4104&&(A.$$scope={dirty:u,ctx:d}),i.$set(A);const m={};u&16&&(m.name=d[4]("settings.openai.embed_model")),u&24&&(m.desc=d[4]("settings.openai.model_descriptions."+d[3].openAIEmbedModel.model,{default:""})),u&2&&(m.isDisabled=!d[1]),u&4104&&(m.$$scope={dirty:u,ctx:d}),s.$set(m)},i(d){o||(D(e.$$.fragment,d),D(a.$$.fragment,d),D(i.$$.fragment,d),D(s.$$.fragment,d),o=!0)},o(d){J(e.$$.fragment,d),J(a.$$.fragment,d),J(i.$$.fragment,d),J(s.$$.fragment,d),o=!1},d(d){d&&(Y(r),Y(n),Y(l)),oe(e,d),oe(a,d),oe(i,d),oe(s,d)}}}const wI=t=>({display:t,value:t}),bI=t=>({display:t,value:t});function KI(t,e,r){let a,n,i,l;me(t,Ve,h=>r(10,a=h)),me(t,dt,h=>r(11,n=h)),me(t,ae,h=>r(3,i=h)),me(t,Bt,h=>r(4,l=h));let s,o=!1,d="";bi(async()=>{r(1,o=await D0(i.openAIGenModel.openAIApiKey)),r(0,s=i.openAIGenModel.openAIApiKey),c(),r(2,d=s&&!o?"!border-[--background-modifier-error]":"")});const u=async h=>{h=h.trim(),r(0,s=h),r(1,o=await D0(h)),Ye(ae,i.openAIGenModel.openAIApiKey=h,i),Ye(ae,i.openAIEmbedModel.openAIApiKey=h,i),n.saveSettings(),Ye(Ve,a="settings-change",a),r(2,d=s&&!o?"!border-[--background-modifier-error]":"")},c=()=>{s.trim()!==""&&r(0,s=s.substring(0,6)+"..."+s.substring(s.length-3))};return[s,o,d,i,l,u,c,()=>{r(0,s=i.openAIGenModel.openAIApiKey)},h=>{Ye(ae,i.openAIGenModel.model=h,i),Ye(ae,i.openAIGenModel.contextWindow=Fh[h]?Fh[h].contextWindow:2048,i),n.s2b.setGenModel(i.openAIGenModel),n.saveSettings()},h=>{Ye(ae,i.openAIEmbedModel.model=h,i),n.saveSettings(),Ye(Ve,a="settings-change",a)}]}class fI extends pt{constructor(e){super(),ut(this,e,KI,CI,st,{})}}function jK(t,e,r){const a=t.slice();return a[18]=e[r],a}function QI(t){let e,r;return e=new WC({props:{isEnabled:t[4].isAutostart,changeFunc:t[12]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&16&&(i.isEnabled=a[4].isAutostart),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function WI(t){let e,r;return e=new gI({}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function qK(t){let e,r,a,n,i=Xt(t[4].excludeFF),l=[];for(let u=0;u<i.length;u+=1)l[u]=$K(jK(t,i,u));function s(u,c){if(u[2])return FI;if(u[1])return vI}let o=s(t),d=o&&o(t);return{c(){e=X("div"),r=X("div");for(let u=0;u<l.length;u+=1)l[u].c();n=M(),d&&d.c(),F(r,"class",a=(t[2]?"":"overflow-hidden")+" flex flex-wrap gap-1"),F(e,"class","mb-3 flex justify-between")},m(u,c){N(u,e,c),E(e,r);for(let p=0;p<l.length;p+=1)l[p]&&l[p].m(r,null);t[14](r),E(e,n),d&&d.m(e,null)},p(u,c){if(c&304){i=Xt(u[4].excludeFF);let p;for(p=0;p<i.length;p+=1){const A=jK(u,i,p);l[p]?l[p].p(A,c):(l[p]=$K(A),l[p].c(),l[p].m(r,null))}for(;p<l.length;p+=1)l[p].d(1);l.length=i.length}c&4&&a!==(a=(u[2]?"":"overflow-hidden")+" flex flex-wrap gap-1")&&F(r,"class",a),o===(o=s(u))&&d?d.p(u,c):(d&&d.d(1),d=o&&o(u),d&&(d.c(),d.m(e,null)))},d(u){u&&Y(e),ea(l,u),t[14](null),d&&d.d()}}}function $K(t){let e,r,a=t[18]+"",n,i,l,s,o,d,u;function c(){return t[13](t[18])}return{c(){e=X("div"),r=X("span"),n=te(a),i=M(),l=X("span"),o=M(),F(l,"aria-label",s=t[5]("settings.excludeff_delete")),F(l,"class","setting-hotkey-icon setting-delete-hotkey w-4"),F(r,"class","setting-hotkey"),F(e,"class","setting-command-hotkeys")},m(p,A){N(p,e,A),E(e,r),E(r,n),E(r,i),E(r,l),E(e,o),d||(u=[Ge(t[7].call(null,l,"x")),de(l,"click",c)],d=!0)},p(p,A){t=p,A&16&&a!==(a=t[18]+"")&&ne(n,a),A&32&&s!==(s=t[5]("settings.excludeff_delete"))&&F(l,"aria-label",s)},d(p){p&&Y(e),d=!1,We(u)}}}function vI(t){let e,r,a;return{c(){e=X("span"),F(e,"class","clickable-icon h-6")},m(n,i){N(n,e,i),r||(a=[Ge(t[7].call(null,e,"chevron-down")),de(e,"click",t[6])],r=!0)},p:le,d(n){n&&Y(e),r=!1,We(a)}}}function FI(t){let e,r,a;return{c(){e=X("span"),F(e,"class","clickable-icon h-6 align-baseline")},m(n,i){N(n,e,i),r||(a=[Ge(t[7].call(null,e,"chevron-up")),de(e,"click",t[6])],r=!0)},p:le,d(n){n&&Y(e),r=!1,We(a)}}}function yI(t){let e,r;return e=new fI({}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function RI(t){let e,r;return e=new NU({}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function EI(t){let e,r;return e=new Xl({props:{inputType:"number",value:t[4].isIncognitoMode?t[4].ollamaEmbedModel.k.toString():t[4].openAIEmbedModel.k.toString(),changeFunc:t[15]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&16&&(i.value=a[4].isIncognitoMode?a[4].ollamaEmbedModel.k.toString():a[4].openAIEmbedModel.k.toString()),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function GI(t){let e,r;return e=new Ds({props:{buttonText:t[5]("settings.clear_label"),styles:"mod-warning",changeFunc:t[16]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&32&&(i.buttonText=a[5]("settings.clear_label")),n&8&&(i.changeFunc=a[16]),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function SI(t){let e,r;return e=new Xl({props:{placeholder:"ls__1c...4b",value:t[4].debugginLangchainKey,changeFunc:t[10]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&16&&(i.value=a[4].debugginLangchainKey),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function ZI(t){let e,r;return e=new WC({props:{isEnabled:t[4].isVerbose,changeFunc:t[11]}}),{c(){pe(e.$$.fragment)},m(a,n){se(e,a,n),r=!0},p(a,n){const i={};n&16&&(i.isEnabled=a[4].isVerbose),e.$set(i)},i(a){r||(D(e.$$.fragment,a),r=!0)},o(a){J(e.$$.fragment,a),r=!1},d(a){oe(e,a)}}}function XI(t){let e,r,a,n,i,l,s,o,d,u,c,p,A,m,h=t[5]("settings.advanced")+"",C,w,b,f,K,W,R,v,L,y,G,Z;e=new sr({props:{name:t[5]("settings.autostart"),desc:t[5]("settings.autostart_desc"),$$slots:{default:[QI]},$$scope:{ctx:t}}}),a=new sr({props:{name:t[5]("settings.excludeff"),desc:t[5]("settings.excludeff_desc"),$$slots:{default:[WI]},$$scope:{ctx:t}}});let k=t[4].excludeFF.length!==0&&qK(t);s=new Hv({});const _=[RI,yI],U=[];function j(O,P){return O[4].isIncognitoMode?0:1}return u=j(t),c=U[u]=_[u](t),b=new sr({props:{name:t[5]("settings.num_docs_retrieve"),desc:t[5]("settings.num_docs_retrieve_desc"),$$slots:{default:[EI]},$$scope:{ctx:t}}}),K=new sr({props:{name:t[5]("settings.clear"),desc:t[5]("settings.clear_desc"),$$slots:{default:[GI]},$$scope:{ctx:t}}}),R=new sr({props:{name:t[5]("settings.debugging"),isHeading:!0}}),L=new sr({props:{name:t[5]("settings.langsmith_key"),desc:t[5]("settings.langsmith_key_desc"),$$slots:{default:[SI]},$$scope:{ctx:t}}}),G=new sr({props:{name:t[5]("settings.verbose"),desc:t[5]("settings.verbose_desc"),$$slots:{default:[ZI]},$$scope:{ctx:t}}}),{c(){pe(e.$$.fragment),r=M(),pe(a.$$.fragment),n=M(),k&&k.c(),i=M(),l=X("div"),pe(s.$$.fragment),o=M(),d=X("div"),c.c(),p=M(),A=X("details"),m=X("summary"),C=te(h),w=M(),pe(b.$$.fragment),f=M(),pe(K.$$.fragment),W=M(),pe(R.$$.fragment),v=M(),pe(L.$$.fragment),y=M(),pe(G.$$.fragment),F(l,"class","setting-item flex items-center justify-center !pb-0"),F(m,"class","setting-item-heading py-3")},m(O,P){se(e,O,P),N(O,r,P),se(a,O,P),N(O,n,P),k&&k.m(O,P),N(O,i,P),N(O,l,P),se(s,l,null),N(O,o,P),N(O,d,P),U[u].m(d,null),N(O,p,P),N(O,A,P),E(A,m),E(m,C),E(A,w),se(b,A,null),E(A,f),se(K,A,null),E(A,W),se(R,A,null),E(A,v),se(L,A,null),E(A,y),se(G,A,null),Z=!0},p(O,[P]){const z={};P&32&&(z.name=O[5]("settings.autostart")),P&32&&(z.desc=O[5]("settings.autostart_desc")),P&2097168&&(z.$$scope={dirty:P,ctx:O}),e.$set(z);const Se={};P&32&&(Se.name=O[5]("settings.excludeff")),P&32&&(Se.desc=O[5]("settings.excludeff_desc")),P&2097152&&(Se.$$scope={dirty:P,ctx:O}),a.$set(Se),O[4].excludeFF.length!==0?k?k.p(O,P):(k=qK(O),k.c(),k.m(i.parentNode,i)):k&&(k.d(1),k=null);let he=u;u=j(O),u!==he&&(vt(),J(U[he],1,1,()=>{U[he]=null}),Ft(),c=U[u],c||(c=U[u]=_[u](O),c.c()),D(c,1),c.m(d,null)),(!Z||P&32)&&h!==(h=O[5]("settings.advanced")+"")&&ne(C,h);const Ht={};P&32&&(Ht.name=O[5]("settings.num_docs_retrieve")),P&32&&(Ht.desc=O[5]("settings.num_docs_retrieve_desc")),P&2097168&&(Ht.$$scope={dirty:P,ctx:O}),b.$set(Ht);const Vt={};P&32&&(Vt.name=O[5]("settings.clear")),P&32&&(Vt.desc=O[5]("settings.clear_desc")),P&2097192&&(Vt.$$scope={dirty:P,ctx:O}),K.$set(Vt);const Je={};P&32&&(Je.name=O[5]("settings.debugging")),R.$set(Je);const Xe={};P&32&&(Xe.name=O[5]("settings.langsmith_key")),P&32&&(Xe.desc=O[5]("settings.langsmith_key_desc")),P&2097168&&(Xe.$$scope={dirty:P,ctx:O}),L.$set(Xe);const ct={};P&32&&(ct.name=O[5]("settings.verbose")),P&32&&(ct.desc=O[5]("settings.verbose_desc")),P&2097168&&(ct.$$scope={dirty:P,ctx:O}),G.$set(ct)},i(O){Z||(D(e.$$.fragment,O),D(a.$$.fragment,O),D(s.$$.fragment,O),D(c),D(b.$$.fragment,O),D(K.$$.fragment,O),D(R.$$.fragment,O),D(L.$$.fragment,O),D(G.$$.fragment,O),Z=!0)},o(O){J(e.$$.fragment,O),J(a.$$.fragment,O),J(s.$$.fragment,O),J(c),J(b.$$.fragment,O),J(K.$$.fragment,O),J(R.$$.fragment,O),J(L.$$.fragment,O),J(G.$$.fragment,O),Z=!1},d(O){O&&(Y(r),Y(n),Y(i),Y(l),Y(o),Y(d),Y(p),Y(A)),oe(e,O),oe(a,O),k&&k.d(O),oe(s),U[u].d(),oe(b),oe(K),oe(R),oe(L),oe(G)}}}function HI(t,e,r){let a,n,i,l;me(t,dt,W=>r(3,a=W)),me(t,Ve,W=>r(17,n=W)),me(t,ae,W=>r(4,i=W)),me(t,Bt,W=>r(5,l=W));let s=!1,o=!1,d;function u(){r(2,o=!o)}const c=(W,R)=>{Qe.setIcon(W,R)};function p(W){Ye(ae,i.excludeFF=i.excludeFF.filter(R=>R!==W),i),Ye(Ve,n="settings-change",n),a.saveSettings()}function A(W){W<1&&(W=1),i.isIncognitoMode?Ye(ae,i.ollamaEmbedModel.k=W,i):Ye(ae,i.openAIEmbedModel.k=W,i),a.s2b.setNumOfDocsToRetrieve(W),a.saveSettings()}const m=W=>{Ye(ae,i.debugginLangchainKey=W,i),a.saveSettings(),a.s2b.setTracer(i.debugginLangchainKey)},h=()=>{Ye(ae,i.isVerbose=!i.isVerbose,i),dr.setLogLevel(i.isVerbose?ol.DEBUG:ol.DISABLED),k9.setLogLevel(i.isVerbose?ol.DEBUG:ol.DISABLED),a.saveSettings()},C=()=>{Ye(ae,i.isAutostart=!i.isAutostart,i),i.isAutostart&&n==="uninitialized"&&a.s2b.init(),a.saveSettings()},w=W=>p(W);function b(W){hr[W?"unshift":"push"](()=>{d=W,r(0,d)})}const f=W=>A(parseInt(W)),K=()=>{a.clearPluginData()};return t.$$.update=()=>{if(t.$$.dirty&1&&d){let W=d.children;r(1,s=W[W.length-1].getBoundingClientRect().bottom>d.getBoundingClientRect().bottom)}},[d,s,o,a,i,l,u,c,p,A,m,h,C,w,b,f,K]}class VI extends pt{constructor(e){super(),ut(this,e,HI,XI,st,{})}}class YI extends Qe.PluginSettingTab{constructor(r,a){super(r,a);Ze(this,"component");Ze(this,"plugin");Ze(this,"isSecretVisible");this.plugin=a,this.isSecretVisible=!1}display(){this.containerEl.empty(),this.component=new VI({target:this.containerEl})}}function NI(t){let e,r,a,n=t[3]("modal.remove.name")+"",i,l,s,o=t[3]("modal.remove.desc")+"",d,u,c,p,A,m,h=t[3]("general.delete")+"",C,w,b,f;return p=new Wu({props:{options:t[2].map(ef),selected:t[0],changeFunc:t[4]}}),{c(){e=X("div"),r=X("div"),a=X("div"),i=te(n),l=M(),s=X("div"),d=te(o),u=M(),c=X("div"),pe(p.$$.fragment),A=M(),m=X("button"),C=te(h),F(a,"class","setting-item-name"),F(s,"class","setting-item-description"),F(m,"class","mod-warning"),F(c,"class","flex flex-row justify-end gap-2"),F(e,"class","mb-1 flex items-center justify-between")},m(K,W){N(K,e,W),E(e,r),E(r,a),E(a,i),E(r,l),E(r,s),E(s,d),E(e,u),E(e,c),se(p,c,null),E(c,A),E(c,m),E(m,C),w=!0,b||(f=de(m,"click",t[5]),b=!0)},p(K,W){(!w||W&8)&&n!==(n=K[3]("modal.remove.name")+"")&&ne(i,n),(!w||W&8)&&o!==(o=K[3]("modal.remove.desc")+"")&&ne(d,o);const R={};W&4&&(R.options=K[2].map(ef)),W&1&&(R.selected=K[0]),W&1&&(R.changeFunc=K[4]),p.$set(R),(!w||W&8)&&h!==(h=K[3]("general.delete")+"")&&ne(C,h)},i(K){w||(D(p.$$.fragment,K),w=!0)},o(K){J(p.$$.fragment,K),w=!1},d(K){K&&Y(e),oe(p),b=!1,f()}}}function LI(t){let e,r,a;return r=new eo({}),{c(){e=te(`Loading
`),pe(r.$$.fragment)},m(n,i){N(n,e,i),se(r,n,i),a=!0},p:le,i(n){a||(D(r.$$.fragment,n),a=!0)},o(n){J(r.$$.fragment,n),a=!1},d(n){n&&Y(e),oe(r,n)}}}function TI(t){let e;return{c(){e=te("Ollama is Not Running")},m(r,a){N(r,e,a)},p:le,i:le,o:le,d(r){r&&Y(e)}}}function kI(t){let e,r=t[3]("cmd.remove_model")+"",a,n,i,l,s,o;const d=[TI,LI,NI],u=[];function c(p,A){return p[1]===!1?0:p[1]===void 0?1:2}return l=c(t),s=u[l]=d[l](t),{c(){e=X("div"),a=te(r),n=M(),i=X("div"),s.c(),F(e,"class","modal-title"),F(i,"class","modal-content")},m(p,A){N(p,e,A),E(e,a),N(p,n,A),N(p,i,A),u[l].m(i,null),o=!0},p(p,[A]){(!o||A&8)&&r!==(r=p[3]("cmd.remove_model")+"")&&ne(a,r);let m=l;l=c(p),l===m?u[l].p(p,A):(vt(),J(u[m],1,1,()=>{u[m]=null}),Ft(),s=u[l],s?s.p(p,A):(s=u[l]=d[l](p),s.c()),D(s,1),s.m(i,null))},i(p){o||(D(s),o=!0)},o(p){J(s),o=!1},d(p){p&&(Y(e),Y(n),Y(i)),u[l].d()}}}const ef=t=>({display:t,value:t});function UI(t,e,r){let a;me(t,Bt,d=>r(3,a=d));let n="",i,l=[];return bi(async()=>{r(2,l=await jr()),r(1,i=await si())}),[n,i,l,a,d=>r(0,n=d),async()=>{await xL(n),r(2,l=await jr())}]}let _I=class extends pt{constructor(e){super(),ut(this,e,UI,kI,st,{})}};class II extends Qe.Modal{constructor(r){super(r);Ze(this,"component")}onOpen(){new _I({target:this.contentEl,props:{modal:this}})}onClose(){const{contentEl:r}=this;r.empty()}}var tf;const eu={isChatComfy:!0,isUsingRag:!0,assistantLanguage:window.localStorage.getItem("language")||"en",initialAssistantMessageContent:((tf=wa[window.localStorage.getItem("language")||"en"])==null?void 0:tf.initialAssistantMessage)||wa.en.initialAssistantMessage,isIncognitoMode:!0,ollamaGenModel:{model:"llama2",baseUrl:"http://localhost:11434",temperature:.5},ollamaEmbedModel:{model:"nomic-embed-text",baseUrl:"http://localhost:11434",similarityThreshold:.75,k:100},openAIGenModel:{model:"gpt-3.5-turbo",openAIApiKey:"",temperature:.5},openAIEmbedModel:{model:"text-embedding-ada-002",openAIApiKey:"",similarityThreshold:.75,k:100},targetFolder:"Chats",defaultChatName:"New Chat",excludeFF:["Chats","*.excalidraw.md"],isQuickSettingsOpen:!0,isVerbose:!1,isOnboarded:!1,hideIncognitoWarning:!1,isAutostart:!1};class DI extends Qe.Plugin{constructor(){super(...arguments);Ze(this,"setupView");Ze(this,"chatView");Ze(this,"s2b");Ze(this,"leaf");Ze(this,"isChatAcivatedFromRibbon",!1);Ze(this,"autoSaveTimer")}async loadSettings(){ae.set(Object.assign({},eu,await this.loadData()))}async saveSettings(){await this.saveData(ie(ae))}async onload(){dt.set(this);const r=ie(Bt);await this.loadSettings(),this.s2b=new OL(this.app,this.manifest.dir),dr.setLogLevel(ie(ae).isVerbose?ol.DEBUG:ol.DISABLED),this.app.workspace.onLayoutReady(()=>{const n=this.app.workspace.getLeavesOfType(Ra)||this.app.workspace.getLeavesOfType(ji);n.length&&(this.leaf=n[0]),ie(ae).isOnboarded&&ie(ae).isAutostart&&this.s2b.init()}),this.registerEvent(this.app.workspace.on("layout-change",()=>{if(!this.leaf){const i=this.app.workspace.getLeavesOfType(Ra)||this.app.workspace.getLeavesOfType(ji);if(!i.length)return;this.leaf=i[0]}const n=[this.app.workspace.leftSplit,this.app.workspace.rightSplit].includes(this.leaf.getRoot());Qu.set(n)})),this.registerEvent(this.app.metadataCache.on("changed",async n=>this.s2b.onFileChange(n))),this.registerEvent(this.app.vault.on("delete",async n=>this.s2b.onFileDelete(n))),this.registerEvent(this.app.vault.on("rename",async(n,i)=>this.s2b.onFileRename(n,i))),window.addEventListener("blur",()=>this.s2b.saveVectorStoreData());const a=()=>{window.clearTimeout(this.autoSaveTimer),this.autoSaveTimer=window.setTimeout(()=>this.s2b.saveVectorStoreData(),30*1e3)};window.addEventListener("mousemove",()=>a()),window.addEventListener("mousedown",()=>a()),window.addEventListener("keypress",()=>a()),window.addEventListener("scroll",()=>a()),this.s2b||this.app.workspace.detachLeavesOfType(Ra),this.registerView(ji,n=>(this.setupView=new pI(n),this.setupView)),this.registerView(Ra,n=>(this.chatView=new v_(n),this.chatView)),this.addRibbonIcon("message-square",r("ribbon.chat"),()=>this.activateView()),this.addCommand({id:"open-chat",name:r("cmd.chat"),icon:"message-square",callback:()=>this.activateView()}),this.addCommand({id:"pull-model",name:r("cmd.pull_model"),icon:"arrow-down-to-line",callback:()=>new YT(this.app).open()}),this.addCommand({id:"remove-model",name:r("cmd.remove_model"),icon:"trash",callback:()=>new II(this.app).open()}),this.addSettingTab(new YI(this.app,this)),this.registerMonkeyPatches()}async onunload(){dr.info("Unloading plugin")}async activateView(r){const a=ie(ae);if(a.isOnboarded){this.app.workspace.detachLeavesOfType(ji),r||(await this.app.vault.adapter.exists(Qe.normalizePath(a.targetFolder))||await this.app.vault.createFolder(Qe.normalizePath(a.targetFolder)),r=await this.app.vault.adapter.exists(Qe.normalizePath(a.targetFolder+"/"+a.defaultChatName+".md"))?this.app.metadataCache.getFirstLinkpathDest(a.targetFolder+"/"+a.defaultChatName+".md",""):await this.app.vault.create(Qe.normalizePath(a.targetFolder+"/"+a.defaultChatName+".md"),`Assistant
`+a.initialAssistantMessageContent+`
- - - - -`));const n=this.app.workspace.getLeavesOfType(Ra);this.leaf=n.length?n[0]:this.app.workspace.getRightLeaf(!1),this.isChatAcivatedFromRibbon=!0,await this.leaf.openFile(r,{active:!0}),await this.leaf.setViewState({type:Ra,state:{file:r.path}})}else{this.app.workspace.detachLeavesOfType(Ra);const n=this.app.workspace.getLeavesOfType(ji);this.leaf=n.length?n[0]:this.app.workspace.getRightLeaf(!1),await this.leaf.setViewState({type:ji,active:!0})}this.app.workspace.revealLeaf(this.leaf)}async saveChat(){const r=ie(ae);let a=await this.s2b.createFilenameForChat(),n=Qe.normalizePath(r.targetFolder+"/"+a+".md");for(;await this.app.vault.adapter.exists(n);){const l=/\((\d+)\)$/,s=a.match(l);s?a=a.slice(0,-3)+"("+(parseInt(s[1],10)+1)+")":a=a+" (1)",n=Qe.normalizePath(r.targetFolder+"/"+a+".md")}const i=await this.app.vault.copy(this.chatView.file,n);Mt.reset,await this.activateView(i)}async clearPluginData(){const r=ie(Bt);new QC(ie(dt).app,r("settings.clear_modal.title"),r("settings.clear_modal.description"),async a=>{if(a==="Yes"){await this.saveData({});const n=(await this.app.vault.adapter.list(Qe.normalizePath(this.manifest.dir+"/vectorstores"))).files;for(const i of n)await this.app.vault.adapter.remove(i);new Qe.Notice(r("notice.plugin_data_cleared"),4e3),await this.loadSettings(),await this.activateView()}},"").activate()}registerMonkeyPatches(){const r=this;this.register(F5(Qe.WorkspaceLeaf.prototype,{setViewState(a){return function(n,...i){var l;if(n.type==="markdown"&&((l=n.state)!=null&&l.file)&&n.state.file.startsWith(ie(ae).targetFolder)){const s={...n,type:Ra};if(!r.isChatAcivatedFromRibbon){const o=r.app.workspace.getLeavesOfType(Ra);r.leaf=o.length?o[0]:r.app.workspace.getRightLeaf(!1)}return a.apply(r.leaf,[s,...i])}return a.apply(this,[n,...i])}}}))}}exports.DEFAULT_SETTINGS=eu;exports.default=DI;
//# sourceMappingURL=file:///home/runner/work/obsidian-Smart2Brain/obsidian-Smart2Brain/build/smart-second-brain/main.js.map
/* nosourcemap */